Kubernetes(k8s)集群管理實(shí)戰(zhàn)|Kubernetes安裝步驟

本篇文章主要核心內(nèi)容:
Kubernetes安裝具體步驟
部署網(wǎng)絡(luò)插件
Kubernetes安裝具體步驟
所有服務(wù)器節(jié)點(diǎn)安裝 Docker/kubeadm/kubelet/kubectl
Kubernetes 默認(rèn)容器運(yùn)行環(huán)境是Docker,因此首先需要安裝Docker;
(1)安裝 Docker
更新docker的yum源
yum install wget -y
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
安裝指定版本的docker:
yum install docker-ce-19.03.13 -y
yum install docker -y (這個(gè)安裝的Docker版本偏舊) 1.13.x
配置加速器加速下載 (https://cr.console.aliyun.com/)
/etc/docker/daemon.json
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
https://gg3gwnry.mirror.aliyuncs.com
然后執(zhí)行:
systemctl enable docker.service
不然會(huì)提示警告;
?
那么接下來需要搭建:kubeadm、kubelet、kubectl
(2)添加k8s的阿里云YUM源
cat > /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
到時(shí)候下載k8s的相關(guān)組件才能找到下載源;
(2)安裝 kubeadm,kubelet 和 kubectl
yum install kubelet-1.19.4 kubeadm-1.19.4 kubectl-1.19.4 -y
然后執(zhí)行:
systemctl enable kubelet.service
不然會(huì)提示警告;
查看有沒有安裝:
yum list installed | grep kubelet
yum list installed | grep kubeadm
yum list installed | grep kubectl
查看安裝的版本: kubelet --version
Kubelet:運(yùn)行在cluster所有節(jié)點(diǎn)上,負(fù)責(zé)啟動(dòng)POD和容器;
Kubeadm:用于初始化cluster的一個(gè)工具;
Kubectl:kubectl是kubenetes命令行工具,通過kubectl可以部署和管理應(yīng)用,查看各種資源,創(chuàng)建,刪除和更新組件;

此時(shí)應(yīng)該重啟一下centos;
(3)部署Kubernetes Master主節(jié)點(diǎn)
kubeadm init --apiserver-advertise-address=192.168.172.134 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.19.4 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16
此命令在master機(jī)器上執(zhí)行;
執(zhí)行報(bào)錯(cuò):

解決:重啟一下centos,然后再執(zhí)行上面的 kubeadm init 命令;
說明:
service-cidr 的選取不能和PodCIDR及本機(jī)網(wǎng)絡(luò)有重疊或者沖突,一般可以選擇一個(gè)本機(jī)網(wǎng)絡(luò)和PodCIDR都沒有用到的私網(wǎng)地址段,比如PODCIDR使用10.244.0.0/16, 那么service cidr可以選擇10.96.0.0/12,網(wǎng)絡(luò)無重疊沖突即可;
接下來在master機(jī)器上執(zhí)行:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
kubectl get nodes
接下來把node節(jié)點(diǎn)加入Kubernetes master中,在Node機(jī)器上執(zhí)行;
向集群添加新節(jié)點(diǎn),執(zhí)行的命令就是kubeadm init最后輸出的kubeadm join命令:
kubeadm join 192.168.172.132:6443 --token wa5bif.zfuvbesevdfvf4of \
????--discovery-token-ca-cert-hash sha256:87cf5828d54dd80da13c4b57c57360370ea0267a7cc3991989ca3006cf3e44d8

部署網(wǎng)絡(luò)插件
下載kube-flannel.yml文件
wget?https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
應(yīng)用kube-flannel.yml文件得到運(yùn)行時(shí)容器
kubectl apply -f kube-flannel.yml?(在master機(jī)器上執(zhí)行)

然后查看節(jié)點(diǎn)狀態(tài):?kubectl get nodes (在master機(jī)器上執(zhí)行)?

說明還沒有就緒,需要等一會(huì)兒,然后節(jié)點(diǎn)就就緒了;

至此我們的k8s環(huán)境就搭建好了;
查看運(yùn)行時(shí)容器pod (一個(gè)pod里面運(yùn)行了多個(gè)docker容器)
kubectl get pods -n kube-system
Kubernetes,點(diǎn)擊以下實(shí)戰(zhàn)教程,帶你快速入門Kubernetes!
