Kubernetes(简称K8s)是一个强大的容器编排系统,其主要组件及其作用如下:

  1. kube-apiserver

    • 集群的主入口点,提供了RESTful API接口供用户或内部组件与集群进行交互。它负责验证和配置数据,并将所有请求持久化存储在etcd中。
  2. etcd

    • 分布式键值存储系统,用于保存集群的所有关键配置数据和状态信息。它是Kubernetes的核心数据库,保证了数据的一致性和可靠性。
  3. kube-scheduler

    • 负责决定Pod运行在哪一个Node上。根据资源需求、节点条件以及调度策略对未分配的Pod进行调度决策。
  4. kube-controller-manager

    • 运行一系列控制器,这些控制器是控制循环,持续监控集群的实际状态并将其调整到期望状态。常见的控制器包括ReplicationController(确保指定数量的Pod副本始终运行)、NamespaceController、EndpointController、NodeController等。
  5. cloud-controller-manager(可选):

    • 当部署在云环境中时,该组件负责处理与底层云平台相关的任务,如管理云提供商的负载均衡器、卷服务、路由表等。
  6. kubelet

    • 在每个工作节点(Node)上运行,作为Kubernetes与主机操作系统之间的桥梁。kubelet负责接收API服务器的指令,在本机创建、启动、停止Pod及容器,并通过cAdvisor收集节点和容器的健康状况和资源使用情况。
  7. container runtime(例如Docker、containerd或CRI-O):

    • 与kubelet协作,真正执行容器生命周期操作的低级别软件,包括镜像拉取、容器启动、停止和删除等。
  8. kube-proxy

    • 在每个Node上运行的服务代理,实现Service的网络抽象和负载均衡功能。它会根据Service定义更新iptables或IPVS规则,以实现在集群内部和外部正确地访问服务。
  9. CoreDNS 或早期版本的 kube-dns

    • 提供集群内服务发现能力的DNS服务器,将服务名解析为实际的服务IP地址,使得集群内的Pod能够通过名称访问其他服务。

综上所述,以上组件协同工作,共同构成了Kubernetes强大的容器编排和集群管理能力。

在K8S中各个组件及其作用?的更多相关文章

  1. vue中 keep-alive 组件的作用

    原文地址 在vue项目中,难免会有列表页面或者搜索结果列表页面,点击某个结果之后,返回回来时,如果不对结果页面进行缓存,那么返回列表页面的时候会回到初始状态,但是我们想要的结果是返回时这个页面还是之前 ...

  2. 【HBase】HBase架构中各种组件的作用

    client: 发起读写请求 维护cache,加快读取速度 zookeeper: HMaster选举,存储meta-region的路由信息,监控集群从节点HRegionSever上信息 HMaster ...

  3. Android ScrollView中的组件设置android:layout_height="fill_parent"不起作用的解决办法

    例子,在ScrollView下加入的组件,无论如何也不能自动扩展到屏幕高度. 布局文件. [html] <?xml version="1.0" encoding=" ...

  4. k8s中初始化容器(init container)的作用及其使用方法

    概述 在容器的部署过程中,有的时候需要在容器运行之前进行一些预配置的工作,比如下载配置,判断某些服务是否启动,修改配置等一些准备的工作,想要实现这些功能,在k8s中可以使用初始化容器,在应用容器运行之 ...

  5. [转帖]在 k8s 中通过 Ingress 配置域名访问

    在 k8s 中通过 Ingress 配置域名访问 https://juejin.im/post/5db8da4b6fb9a0204520b310 在上篇文章中我们已经使用 k8s 部署了第一个应用,此 ...

  6. K8S集群组件

    master节点主要由apiserver.controller-manager和scheduler三个组件,以及一个用于集群状态存储的etcd存储服务组成,而每个node节点则主要包含kubelet. ...

  7. k8s架构与组件详解

    没有那么多花里胡哨,直接进行一个K8s架构与组件的学习. 一.K8s架构 k8s系统在设计是遵循c-s架构的,也就是我们图中apiserver与其余组件的交互.在生产中通常会有多个Master以实现K ...

  8. k8s中几个基本概念的理解,pod,service,deployment,ingress的使用场景

    k8s 总体概览 前言 Pod 副本控制器(Replication Controller,RC) 副本集(Replica Set,RS) 部署(Deployment) 服务(Service) ingr ...

  9. k8s 中的 Pod 细节了解

    k8s中Pod的理解 基本概念 k8s 为什么使用 Pod 作为最小的管理单元 如何使用 Pod 1.自主式 Pod 2.控制器管理的 Pod 静态 Pod Pod的生命周期 Pod 如何直接暴露服务 ...

  10. k8s 中 Pod 的控制器

    k8s 中 Pod 的控制器 前言 Replication Controller ReplicaSet Deployment 更新 Deployment 回滚 deployment StatefulS ...

随机推荐

  1. 火山引擎AB测试:广告实验深度打通巨量引擎,高效测试广告素材

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群   近期,火山引擎AB测试DataTester上线了新版的广告AB实验,还推出了与巨量引擎深度打通的能力.用户可以 ...

  2. 火山引擎 DataLeap 构建Data Catalog系统的实践(三):关键技术与总结

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 关键技术 构建一个好的Data Catalog系统,需要考虑的核心产品设计和技术设计有很多.篇幅所限,本文只概要介 ...

  3. Solon 项目的单元测试插件

    1.引入依赖 <dependency> <groupId>org.noear</groupId> <artifactId>solon-test</ ...

  4. Python 批量制作缩略图

    本来想网上下个软件处理下的,给我加了水印,不然就让我升会员,程序员都是薅人家羊毛,哪能被人家薅羊毛 1. 安装组件 (指定国内源,速度快些),带上版本号,最新版本会卡在 XXX(PEP 517) 上. ...

  5. 【JAVA基础】Mybatis示例

    固定时间范围查询 <select id="selectPaidList" resultType="com.hand.htms.ifp.entity.IfpShipm ...

  6. WPF ElementHost 内存泄露问题

    无意中发现,WPF ElementHost 控件如果未正确释放,会存在内存泄露问题.解决方法如下: xaml代码: <Grid x:Name="grid"> <W ...

  7. C++ bitset的简单使用

    bitset 一般代替 bool 数组使用,常用于优化空间,因为 bitset 中一个元素只占 1 bit. bitset 的大小在定义使就需要确定.如果想要不定长的 bitset,就需要使用 vec ...

  8. 基于HTML,CSS & Javascript 实现图像的自动轮播和手动导航按钮

    不务正业的第n天(划掉 2020年年末在完成Web网页制作课程的大作战,在写代码的时候想到用HTML + CSS & Javascript制作一个图片轮播功能增强网页的功能 简单贴一下代码:注 ...

  9. 7、SpringBoot-mybatis-plus引入

    系列导航 springBoot项目打jar包 1.springboot工程新建(单模块) 2.springboot创建多模块工程 3.springboot连接数据库 4.SpringBoot连接数据库 ...

  10. Linux一键安装docker脚本,含ubuntu和centos

    将脚本保存为docker_install.sh,可以上传git,到服务器中,git clone下来后,sh docker_install.sh即可自动安装 ubuntu实现 # 以Ubuntu为例 # ...