第1章Kubernetes核心概念
Kubernetes核心概念
简介:
- 有了Docker,为什么还用Kubernetes?
-
Kubernetes是什么
- Kubernetes集群架构与组件
- Kubernetes基本概念
-
熟悉官方文档
1.1 有了Docker,为什么还用Kubernetes?
企业需求:
• 为提高业务并发和高可用,会使用多台服务器
• 多容器跨主机提供服务
• 多容器分布节点部署
• 多容器怎么升级
• 高效管理这些容器

1.2容器编排系统
- kubernetes
- Swarm
- Mesos Marathon

1.3Kubernetes是什么
- Kubernetes是Google在2014年开源的一个容器集群管理系统,Kuberntes简称k8s。
- kubernetes用于容器化应用程序的部署,扩展和管理,目标是让部署容器化应用简单高效。
官方网站:http://www.kubernetes.io
官方文档:https://kubernetes.io/zh/docs/home/
1.4Kubernetes集群架构与组件


1.4.1 Master组件
• Kube-apiserver
Kubernetes API,集群的统一入口,各组件协调者,以及RESTful API提供接口服务,所有对象资源的增删改查和监听操作都交给APIServer处理后再提交Etcd存储。
• Kube-controller-manager
处理集群中常规后台任务,一个资源对应一个控制器,而Controller Manager就是负责管理这些控制器的。
• Kube-scheduler
根据调度算法为新创建的pod选择一个Node节点,可以任意部署,可以部署在同一节点上,也可以部署在不同节点上。
• Etcd
分布式键值存储系统,用于保存集群状态数据,比如:pod,service等对象信息。
1.4.2Node组件
• Kubelet
kubelet是master在node节点上的agent,管理本机运行容器的生命周期,比如部署,pod挂载数据卷、下载secret、获取容器和节点状态等工作。Kubelet将每个pod转换成一组容器。
• Kube-proxy
在每个节点上实现pod网络代理,维护网络规则和四层负载均衡工作。将指定的流量分发到后端正确的机器上。
查看kube-proxy工作模式:curl 127.0.0.1:10249/proxyMode
Ipvs
监听Master节点增加和删除service以及endpoint的信息,调用Netlink接口创建相应的IPVS规则。通过IPVS规则,将流量转发至相应的pod上。
iptables
监听master节点增加和删除service以及endpoint的消息,对于每一个service,他都会创建一个iptables规则,将service的clusterIP代理到后端对应的pod。
Calico
符合CNI标准的网络插件,给每个pod生成一个唯一的ip地址,并且把每个节点当做一个路由器。
CoreDNS
用于kubernetes集群内部Service的解析,可以让pod把service名称解析成ip地址,然后通过service的ip地址进行连接到对应的应用上。
Docker 或rocket
容器引擎、运行容器
1.4.2熟悉官方文档
官网文档:https://kubernetes.io/zh/docs/home/
重点熟悉:概念和任务

浙公网安备 33010602011771号