部分转载至https://blog.csdn.net/qq_41899990/article/details/100518892
k8s集群主要由Master节点和Node节点组成,Master是主节点(一个),负责管理和控制;Node是计算节点(一群),即工作负载节点,里面是具体的容器
接下来分别看下master和node
详细看下Master节点内部构造:
Kubernetes包提供了一些服务:kube-apiserver, kube-scheduler, kube-controller-manager,kubelet, kube-proxy。这些服务通过systemd进行管理,配置信息都集中存放在一个地方:/etc/kubernetes。我们将会把这些服务运行到不同的主机上。第一台主机将是Kubernetes 集群的master主机。这台机器上将运行kube-apiserver, kubecontroller-manager和kube-scheduler这几个服务,此外,master主机上还将运行etcd。其余的主机将是从节点,将会运行kubelet, proxy和docker
API server:是整个系统的对外接口,供其他组件、客户端等的调用
scheduler:它主要负责对集群内部资源进行调度;
controller manager:负责管理控制
ectd:证书 几者间的认证
这块我感觉这个老哥写的很好,就不献丑了(https://www.cnblogs.com/knmax/p/9212708.html)
Node节点包括Docker、kubelet、kube-proxy、fluented,和很多很多pod;
docker:创建容器(详情移步:https://www.jianshu.com/p/25029238c011);
kubelet:对分派到它所在Node上的pod进行监控,包括创建、修改、监控、删除等;
kube-proxy:proxy,代理 为pod对象提供代理;
fluentd,负责日志的收集、存储与查询;
再往下细分就是pod和service
pod
service可以是同一个node里的不同pod之间,也可以是不同node之间的pod组成
以上是细分的pod和service,总体来说都是由master来管理
通过deployment部署文件可以