linux运维之K8S(一)

1.什么是Kubernetes?

Kubernetes(通常简称为K8S,即是将8个字母“ubernete”替换成“8”的缩写)是一个以容器为中心的基础架构。可以实现在物理集群或者虚拟集群上调度和运行容器,提供容器自动部署、扩展和管理的开源平台。

2.什么是k8s,k8s有什么功能?

k8s是一个docker集群的管理工具。

k8s是容器的编排工具。

k8s是容器的管理平台。

3. k8s的核心功能  

自愈 Self-healing : 重新启动失败的容器,在节点不可用时,替换和重新调度节点上的容器,对用户定义的健康检查不响应的容器会被中止,并且在容器准备好服务之前不会把其向客户端广播。

弹性伸缩 (Horizontal scaling) : 通过监控容器的cpu的负载值,如果这个平均高于80%,增加容器的数量,如果这个平均低于10%,减少容器的数量。

服务的自动发现和负载均衡 Service discovery and load balancing : 不需要修改您的应用程序来使用不熟悉的服务发现机制,Kubernetes为容器提供了自己的 IP 地址和一组容器的单个 DNS 名称,并可以在它们之间进行负载均衡。

滚动升级和一键回滚 (Automated rollouts and rollbacks) : Kubernetes逐渐部署对应用程序或其配置的更改,同时监视应用程序运行状况,以确保它不会同时终止所有实例。 如果出现问题,Kubernetes会为您恢复更改,利用日益增长的部署解决方案的生态系统。

私密配置文件管理: web容器里面,数据库的账户密码。

4. k8s的历史

2014年,docker容器编排工具,立项。

2015年7月 ,发布kubernetes 1.0, 加入cncf基金会 孵化。

2016年,kubernetes干掉两个对手,docker swarm,mesos marathon 1.2版。

2017年,发布1.5 -1.9。

2018年, k8s 从cncf基金会 毕业项目。

2019年,1.13, 1.14 ,1.15,1.16 1.17。

cncf :cloud native compute foundation

kubernetes(k8s): 希腊语 舵手 ,领航者容器编排领域。

谷歌15年容器使用经验,borg容器管理平台,使用golang重构borg,kubernetes。

5.kubernetes 架构图:

6.kubernetes核心组件:

kubernetes遵循master-slave architecture。kubernetes的组件可以分为管理单个的node组件和控制平面的一部分的组件。

kubernetes Master 是集群的主要控制单元,用于管理其工作负责并指导整个系统的通信。

kubernetes控制平面由各自的进程组成,每个组件都可以在单个主节点上运行,也可以在支持high-availability cluster的多个主节点上运行。