使用 kubeadm 在 VMW 部署 k8s 集群之使用 kubeadm 部署 k8s 集群

经过前一篇文章的设置,我们已经部署好GlusterFS集群。现在开始使用kubeadm部署k8s集群。

以下操作没有特殊说明的,即在所有节点上执行

安装 kubeadm

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 添加 Yum 源
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
# exclude=kube*
proxy=http://代理ip:代理端口
EOF
# 安装 kubeadm、kubelet、kubectl
yum -y install kubeadm kubelet kubectl
# 启用 kubelet 服务
systemctl enable kubelet
systemctl start kubelet

初始化集群(在k8s-master上操作)

1
2
3
4
kubeadm init --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12
mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config

部署网络部件 flannel(在k8s-master上操作)

1
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

工作节点加入集群(在k8s-node01、k8s-node02上操作)

1
kubeadm join 192.168.1.70:6443 --token token值 --discovery-token-ca-cert-hash hash值

验证是否部署成功(在k8s-master上操作)

1
kubectl get nodes

到此,k8s集群就部署好了,接下来我们就可以在上面部署应用了。


如果你有使用ansible,也可以使用ansible-playbook自动部署。但是记得修改group_vars/all里的变量,如http_proxy_host代理 IP 。

1
2
3
4
# 克隆 git 仓库
git clone https://gogs.yeadoc.cn/xo9/k8s.git
cd k8s/ansible
ansible-playbook -i hosts -e "hosts=all" site.yml

一分、两分都是爱!