01 | Kubernetes | 原理
由来
Kubernetes:Google开源的容器集群管理系统, 使用Go语言开发。
Kubernetes单词是什么意思呢? 为什么又叫K8s?
Kubernetes起源于希腊语, 是“舵手”或者“领航员”的意思,是“管理者”和“控制论”的根源。
K8s是把用8代替8个字符“ubernete”而成的缩写。
特点
开源
轻量级:消耗资源小
弹性伸缩
负载均衡:IPVS
说明
1. Borg 架构
Kubernetes最初源于谷歌内部的Borg,提供了面向应用的容器集群部署和管理系统。
BorgMaster是整个集群的大脑,负责维护整个集群的状态,并将数据持久化到Paxos存储中;
Scheduer负责任务的调度,根据应用的特点将其调度到具体的机器上去;
Borglet负责真正运行任务(在容器中);
borgcfg是Borg的命令行工具,用于跟Borg系统交互,一般通过一个配置文件来提交任务。
2. Kubernetes 架构
Kubernetes主要由以下几个核心组件组成:
etcd保存了整个集群的状态(分布式键值存储服务);
apiserver提供了资源操作的唯一入口,并提供认证、授权、访问控制、API注册和发现等机制;
controller manager负责维护集群的状态,比如故障检测、自动扩展、滚动更新