kubeadm创建高可用集群

一、高可用的两种架构

1.堆叠(Stacked) etcd 拓扑

每个管理节点上运行,etcd、kueb-apiserver、kube-scheduler和kube-controller-manager。

2.外部 etcd 拓扑

每个管理节点运行kueb-apiserver、kube-scheduler和kube-controller-manager。etcd集群在管理节点外部。

3.官网详细说明

二、前置条件

1.官网详细说明

三、配置

1.前置条件配置

git clone https://gitee.com/iweimingliang/k8s-node-init.git
cd k8s-node-init

# 管理节点
bash k8s_node_init.sh 192.168.1.2 master

# 工作节点
bash k8s_node_init.sh 192.168.1.2 work

2.创建集群

kubeadm init --image-repository registry.aliyuncs.com/google_containers --control-plane-endpoint k8s.tok.fit --upload-certs --pod-network-cidr 10.244.0.0/16

3.配置网络模型

下载flannel.yml文件

文件地址:https://raw.githubusercontent.com/flannel-io/flannel/master/Documentation/kube-flannel.yml

kubectl apply -f kube-flannel.yml

安装 Pod 网络后,使用 kubectl get pods --all-namespaces 在输出中检查 CoreDNS Pod 是否 Running 来确认其是否正常运行。 一旦 CoreDNS Pod 启用并运行,你就可以继续加入节点。

4.添加节点

4.1 添加管理节点

在管理节点执行

kubeadm join k8s.tok.fit:6443 --token ynj8r9.g9xmmbihz6pp0djc --discovery-token-ca-cert-hash sha256:9c5f00b89a20dc3de2d81ad905a8fdb9776f7699ee9b6a05c7cb82d05af63cc6 --control-plane --certificate-key 985cc3c10f81bcdeb0787e7f61ad10371e775a765352ccee6f2fa7b5f396b115

4.2 添加工作节点

在工作节点执行

kubeadm join k8s.tok.fit:6443 --token 234t6m.tuj9andbqfiy6mow --discovery-token-ca-cert-hash sha256:9c5f00b89a20dc3de2d81ad905a8fdb9776f7699ee9b6a05c7cb82d05af63cc6

5.查看集群

kubectl describe node

四、参考文档

1.安装kubeadm

2.利用kubeadm创建高可用集群

Previous Post

如何审计 Linux 系统的操作行为

Next Post

中国龙

Related Posts