03.08 使用kubeadm部署kubernetes集群

簡介

使用 kubeadm 快速創建 k8s 集群。部署前要先安裝好 docker。


Kubernetes - 使用kubeadm部署kubernetes集群


安裝部署

可以使用國內的鏡像源,這裡以阿里云為例


Kubernetes - 使用kubeadm部署kubernetes集群


添加 yum 源

<code>cat < /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
/<code>

關閉 selinux

<code>setenforce 0
/<code>

安裝服務

<code>yum install -y kubelet kubeadm kubectl
systemctl enable kubelet && systemctl start kubelet
/<code>

下載需要的鏡像


Kubernetes - 使用kubeadm部署kubernetes集群

可以使用阿里雲的鏡像

<code>kubeadm config images pull --image-repository=registry.aliyuncs.com/google_containers
/<code>

初始化 master

生成默認配置文件

<code>kubeadm config print init-defaults > init.yaml
/<code>

替換 imageRepository: k8s.gcr.io => imageRepository: registry.aliyuncs.com/google_containers

初始化

<code>kubeadm init --config=init.yaml
/<code>

等待一段時間後,Kubernetes 的 Master 安裝成功,就會有下面的提示,直接複製運行即可。

<code>mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

...

kubeadm join 192.168.57.70:6443 --token sq8lj9.25yy39wfjkllcz27 --discovery-token-ca-cert-hash sha256:a8e7da3e05c0e6613058a16c17ebacfb68e5e2ea570a97ce1706a704d88de752
/<code>

前面幾行,是設置用戶配置文件的,方便命令執行。kubeadm join 是用於把 Node 加入到集群裡面。

查看集群配置

<code>kubeadm config view:查看當前集群中的配置值
/<code>

node 部署

node 節點的操作,跟 master 上初始化操作之前的動作是一樣的。

安裝完啟動服務以後,就可以直接執行命令加入集群即可。

<code>kubeadm join 192.168.57.70:6443 --token sq8lj9.25yy39wfjkllcz27     --discovery-token-ca-cert-hash sha256:a8e7da3e05c0e6613058a16c17ebacfb68e5e2ea570a97ce1706a704d88de752
/<code>

網絡插件安裝

<code>wget -c -t 0 https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

kubectl apply -f kube-flannel.yml
/<code>

查看所有的 pods 是否正常運行

<code>kubectl get pods --all-namespaces
/<code>
<code>NAMESPACE     NAME                                           READY   STATUS    RESTARTS   AGE
kube-system coredns-9d85f5447-fkjzt 1/1 Running 1 23m
kube-system coredns-9d85f5447-tkzvw 1/1 Running 1 23m
kube-system etcd-centos70.example.com 1/1 Running 1 23m
kube-system kube-apiserver-centos70.example.com 1/1 Running 2 23m
kube-system kube-controller-manager-centos70.example.com 1/1 Running 3 23m
kube-system kube-flannel-ds-amd64-lftvj 1/1 Running 2 23m
kube-system kube-flannel-ds-amd64-vhmnn 1/1 Running 1 23m
kube-system kube-proxy-7zgwg 1/1 Running 1 23m
kube-system kube-proxy-bhjhz 1/1 Running 1 23m
kube-system kube-scheduler-centos70.example.com 1/1 Running 2 23m
/<code>


分享到:


相關文章: