# 架构
scheduler: 根据调度算法为新创建的Pod选择一个Node节点,可以任意部署, 可以部署在同一个节点上,也可以部署在不同的节点上。
controller-manager:副本设置数量,不够的话会在拉一个起来(资源足够的情况下)
api server:核心是一个web服务器,提供一个reseadforword接口,可以通过指令级调用或者命令级调用去实现我们对集群的操作,有任务也会分发给api server,它将不同的请求录入到不同的子系统,如调度器、副本控制器、etcd等。
etcd是持久化存储,使用golane语言编写的。
kubelet是Master在Node节点上的Agent,管理本机运行容器的生命周
期,比如创建容器、Pod挂载数据卷、下载secret、获取容器和节点状态
等工作。kubelet将每个Pod转换成一组容器。
kube-proxy是在Node节点上实现Pod网络代理,维护网络规则和四层负载均衡工作。
# 部署k8s的两种方式
kubeadm
Kubeadm是一个工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群。
部署地址:
https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm/
二进制
从官方下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群。
下载地址:
https://github.com/kubernetes/kubernetes/releases
# 硬件配置推荐
推荐查看官方文档,获取一手资料
官方网站:
http://www.kubernetes.io
官方文档:
https://kubernetes.io/zh/docs/home/