容器编排技术 -- Kubernetes 组件
容器编排技术 -- Kubernetes 组件
- 1 Master 组件
- 1.1 kube-apiserver
- 1.2 ETCD
- 1.3 kube-controller-manager
- 1.4 cloud-controller-manager
- 1.5 kube-scheduler
- 1.6 插件 addons
- 1.6.1 DNS
- 1.6.2 用户界面
- 1.6.3 容器资源监测
- 1.6.4 Cluster-level Logging
- 2 节点(Node)组件
- 2.1 kubelet
- 2.2 kube-proxy
- 2.3 docker
- 2.4 RKT
- 2.5 supervisord
- 2.6 fluentd
本文介绍了Kubernetes集群所需的各种二进制组件。
Master 组件
Master组件提供集群的管理控制中心。
Master组件可以在集群中任何节点上运行。但是为了简单起见,通常在一台VM/机器上启动所有Master组件,并且不会在此VM/机器上运行用户容器。请参考 构建高可用群集以来构建multi-master-VM。
kube-apiserver
kube-apiserver用于暴露Kubernetes API。任何的资源请求/调用操作都是通过kube-apiserver提供的接口进行。请参阅构建高可用群集。
ETCD
etcd是Kubernetes提供默认的存储系统,保存所有集群数据,使用时需要为etcd数据提供备份计划。
kube-controller-manager
kube-controller-manager运行管理控制器,它们是集群中处理常规任务的后台线程。逻辑上,每个控制器是一个单独的进程,但为了降低复杂性,它们都被编译成单个二进制文件,并在单个进程中运行。
这些控制器包括:
- 节点(Node)控制器。
- 副本(Replication)控制器:负责维护系统中每个副本中的pod。
- 端点(Endpoints)控制器:填充Endpoints对象(即连接Services&Pods)。
- Service Account和Token控制器:为新的Namespace 创建默认帐户访问API Token。
cloud-controller-manager
云控制器管理器负责与底层云提供商的平台交互。云控制器管理器是Kubernetes版本1.6中引入的,目前还是Alpha的功能。
云控制器管理器仅运行云提供商特定的(controller loops)控制器循环。可以通过将--cloud-provider
flag设置为external启动kube-controller-manager ,来禁用控制器循环。
cloud-controller-manager 具体功能:
- 节点(Node)控制器
- 路由(Route)控制器
- Service控制器
- 卷(Volume)控制器
kube-scheduler
kube-scheduler 监视新创建没有分配到Node的Pod,为Pod选择一个Node。
插件 addons
插件(addon)是实现集群pod和Services功能的 。Pod由Deployments,ReplicationController等进行管理。Namespace 插件对象是在kube-system Namespace中创建。
DNS
虽然不严格要求使用插件,但Kubernetes集群都应该具有集群 DNS。
群集 DNS是一个DNS服务器,能够为 Kubernetes services提供 DNS记录。
由Kubernetes启动的容器自动将这个DNS服务器包含在他们的DNS searches中。
了解更多详情
用户界面
kube-ui提供集群状态基础信息查看。更多详细信息,请参阅使用HTTP代理访问Kubernetes API
容器资源监测
容器资源监控提供一个UI浏览监控数据。
Cluster-level Logging
Cluster-level logging,负责保存容器日志,搜索/查看日志。
节点(Node)组件
节点组件运行在Node,提供Kubernetes运行时环境,以及维护Pod。
kubelet
kubelet是主要的节点代理,它会监视已分配给节点的pod,具体功能:
- 安装Pod所需的volume。
- 下载Pod的Secrets。
- Pod中运行的 docker(或experimentally,rkt)容器。
- 定期执行容器健康检查。
- Reports the status of the pod back to the rest of the system, by creating a mirror pod if necessary.
- Reports the status of the node back to the rest of the system.
kube-proxy
kube-proxy通过在主机上维护网络规则并执行连接转发来实现Kubernetes服务抽象。
docker
docker用于运行容器。
RKT
rkt运行容器,作为docker工具的替代方案。
supervisord
supervisord是一个轻量级的监控系统,用于保障kubelet和docker运行。
fluentd
fluentd是一个守护进程,可提供cluster-level logging.。
容器编排技术 -- Kubernetes 组件相关推荐
- 容器编排技术 -- Kubernetes Nodes
容器编排技术 -- Kubernetes Nodes 1 Node是什么? 2 Node Status 2.1 Addresses 2.2 Phase 2.3 Condition 2.4 Capaci ...
- 容器编排技术 -- Kubernetes kubectl expose命令详解
容器编排技术 -- Kubernetes kubectl expose命令详解 1 kubectl expose 2 语法 3 示例 4 其它详细说明 kubectl expose 将资源暴露为新的K ...
- 容器编排技术 -- Kubernetes 重新配置活动集群中节点的 Kubelet
容器编排技术 -- Kubernetes 重新配置活动集群中节点的 Kubelet 1 Before you begin 2 重新配置集群活动节点上的 Kubelet 2.1 基本工作流程概览 2.2 ...
- 容器编排技术 -- Kubernetes StatefulSets
容器编排技术 -- Kubernetes StatefulSets 1 使用StatefulSets 2 限制 3 组件 4 部署和扩展 4.1 Pod管理 4.1.1 OrderedReady Po ...
- 容器编排技术 -- Kubernetes Annotations
容器编排技术 -- Kubernetes Annotations 可以使用Kubernetes Annotations将任何非标识metadata附加到对象.客户端(如工具和库)可以检索此metada ...
- 容器编排技术 -- Kubernetes Master-Node通信
容器编排技术 -- Kubernetes Master-Node通信 1概述 2 Cluster -> Master 3 Master -> Cluster 3.1 apiserver - ...
- 容器编排技术 -- Kubernetes Labels 和 Selectors
容器编排技术 -- Kubernetes Labels 和 Selectors 1 Motivation 2 语法和字符集 3 Labels选择器 3.1 Equality-based require ...
- 容器编排技术 -- Kubernetes从零开始搭建自定义集群
容器编排技术 -- Kubernetes从零开始搭建自定义集群 1 设计和准备 1.1 学习 1.2 Cloud Provider 1.3 节点 1.4 网络 1.4.1 网络连接 1.4.2 网络策 ...
- 容器编排技术 -- Kubernetes是什么
容器编排技术 -- Kubernetes是什么 1 Kubernetes是什么? 1.1 Kubernetes 特点 2 Why containers? 2.1 使用Kubernetes能做什么? 2 ...
最新文章
- 2016.07.13-vectorvectorint应用2——Two Sum扩展
- mybatis关联配置(一对多配置)
- HDUOJ-------1753大明A+B(大数之小数加法)
- Oracle常用函数解析运用整理
- 打印机驱动开发,初步了解
- Oxygen XML Editor(XML编辑器)v21.0专业破解版
- U盘引导启动LINUX
- Word插入图目录,表目录
- 【算法专题】高精度之压位
- 好佳居窗帘十大品牌 窗帘需要装窗幔吗
- 基于并行思想的简单算法优化(最值,排序)
- 这个彬彬就是逊啦—才搞懂小学知识求最小公倍数
- 社会工程攻击——setoolkit使用(含错误解决)
- linux md文件 编辑,用Vim写md文档的简单姿势
- Vibosoft ePub Converter(ePub转换器)v2.1.24官方版
- OSChina 周四乱弹 —— 如果你追到我,我就和你……
- 网优谷给大家简介SEO
- Ubuntu windows 双硬盘 双系统 引导
- “COMSOL 多物理场/FDTD 时域有限差分/ RSoft 光电器件仿真设计” 系列专题
- µGo语言实现——从头开发迷你Go语言编译器
热门文章
- 10. VMware Tools 安裝
- 脚本(js)控制页面输入
- 如何在Ubuntu 16.04中创建GIF动图
- 关于大型网站技术演进的思考(八)--存储的瓶颈终篇(8)
- iOS7应用开发4、Foundation框架
- CSS3 Media Queries 详细介绍与使用方法,Responsive Web Design 必备技术, 响应式设计
- 《Python数据分析常用手册》NumPy和Pandas
- LeetCode 535. Encode and Decode TinyURL
- Java——volatile关键字详解
- Ubuntu 修改 ssh远程端口号