kubernetes使用kubeadm安裝

參考 https://blog.51cto.com/wzlinux/2322616

關閉SELinux。

sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
setenforce 0

關閉swap。

swapoff -a
sed -i 's/.*swap.*/#&/' /etc/fstab

設置國內kubernetes阿里雲源。

cat <<EOF > /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

安裝kubernetes相關組件

yum install kubelet kubeadm kubectl -y
systemctl enable kubelet && systemctl start kubelet

以上步驟需在所有機器上執行


master機器執行以下命令 ↓

獲取相關鏡像

kubeadm config images list

kubernetes使用kubeadm安裝

拉取相關鏡像

docker pull mirrorgooglecontainers/kube-apiserver:v1.15.3
docker pull mirrorgooglecontainers/kube-controller-manager:v1.15.3
docker pull mirrorgooglecontainers/kube-scheduler:v1.15.3
docker pull mirrorgooglecontainers/kube-proxy:v1.15.3
docker pull mirrorgooglecontainers/pause:3.1
docker pull mirrorgooglecontainers/etcd:3.3.10
docker pull coredns/coredns:1.3.1

給鏡像tag 並刪除無用鏡像

使用

kubeadm init  --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12

命令初始化集羣,成功後顯示以下信息
kubernetes使用kubeadm安裝

給pod配置網絡

pod網絡插件是必要安裝,以便pod可以相互通信。在部署應用和啓動kube-dns之前,需要部署網絡,kubeadm僅支持CNI的網絡。

pod支持的網絡插件有很多,如Calico,Canal,Flannel,Romana,Weave Net等,因爲之前我們初始化使用了參數--pod-network-cidr=10.244.0.0/16,所以我們使用插件flannel。

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

node機器執行以下命令 ↓

kubeadm jonin ····

在master上執行

kubectl get po -n kube-system

發現有po處於Pending狀態,使用 kubectl describe po <podeName> 查看錯誤原因,在node拉取相應鏡像


補充
安裝 bash-completion,執行一下命令,添加kubectl命令提示

echo "source <(kubectl completion bash)" >> ~/.bashrc
source ~/.bashrc

helm 提示則添加

echo "source <(helm completion bash)" >> ~/.bashrc
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章