Kubernetes是一个基于容器技术的分布式架构领先方案。
继docker作为容器引擎之后,k8s横空出世。 k8s是一个编排容器的工具,其实也是管理应用的全生命周期的一个工具,从创建应用,应用的部署,应用提供服务,扩容缩容应用,应用更新,故障自愈,都非常的方便
Kubernetes的核心组件:
推荐组件Add-ons:
工作原理图:
k8s集群安装及部署
安装环境:server1负责harbor容器仓库配置,server2负责k8s master节点,server3 4为k8s node节点 配置好docker后,所有k8s禁用swap分区,注释掉/etc/fstab分区的定义
设定完成后重启 docker服务,docker info查看
k8s安装和部署
serverr2master端安装 k8s软件yum install -y kubelet kubeadm kubectl
设置服务开机自启systemctl enable --now kubelet.service
列出所需镜像kubeadm config images list --image-repository registry.aliyuncs.com/google_containers
拉取镜像kubeadm config images pull --image-repository registry.aliyuncs.com/google_containers
注意:在server1仓库中提前准备好需要的镜像coredns
初始化k8s集群kubeadm init --pod-network-cidr=10.244.0.0/16 --image-repository hyl.westos.org/k8s
保存好初始化命令,后面加入节点需要
所以选择按照提示配置环境变量。
重新读取echo “source <(kubectl completion bash)” >> ~/.bashrc
使用用flannel网络组件完善集群
server1中将镜像压入harbor仓库
在server2中kube-flannel.yml 修改image路径为仓库路径
启动组件kubectl apply -f kube-flannel.yml
查看节点情况,所有节点均running
接着将server3、4节点添加到集群中,此处命令为之前保存的初始化命令。
查看节点kubectl get pod -n kube-system
添加节点成功