溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

k8s中如何使用kubeadm

發(fā)布時間:2021-12-18 17:20:21 來源:億速云 閱讀:181 作者:小新 欄目:大數(shù)據(jù)

這篇文章主要介紹k8s中如何使用kubeadm,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

使用教程

環(huán)境介紹

iprole
10.103.97.200master0
10.103.97.201master0
10.103.97.202master0
10.103.97.2virtulIP
apiserver.cluster.localapiserver解析名

下載超級kubeadm

下載kubernetes1.14.0+離線包

在每個節(jié)點上初始化

tar zxvf kube1.14.0.tar.gz && cd kube/shell && sh init.sh

用下載的kubeadm替換掉包內的kubeadm:

cp kubeadm /usr/bin/kubeadm

kubeadm配置文件

cat kubeadm-config.yaml :

apiVersion: kubeadm.k8s.io/v1beta1kind: ClusterConfigurationkubernetesVersion: v1.14.0controlPlaneEndpoint: "apiserver.cluster.local:6443" # 使用解析名去訪問APIserverapiServer:        certSANs:        - 127.0.0.1        - apiserver.cluster.local        - 172.20.241.205        - 172.20.241.206        - 172.20.241.207        - 172.20.241.208        - 10.103.97.2          # 虛擬IP等都加入到證書中---apiVersion: kubeproxy.config.k8s.io/v1alpha1kind: KubeProxyConfigurationmode: "ipvs"ipvs:        excludeCIDRs:         - "10.103.97.2/32" # 如果不加這個k8s會定時清理用戶創(chuàng)建的IPVS規(guī)則,導致代理失敗

在 master0 10.103.97.200 上

echo "10.103.97.200 apiserver.cluster.local" >> /etc/hostskubeadm init --config=kubeadm-config.yaml --experimental-upload-certs  mkdir ~/.kube && cp /etc/kubernetes/admin.conf ~/.kube/configkubectl apply -f https://docs.projectcalico.org/v3.6/getting-started/kubernetes/installation/hosted/kubernetes-datastore/calico-networking/1.7/calico.yaml # 安裝calico

執(zhí)行完會輸出一些日志,里面包含join需要用的命令

在 master1 10.103.97.201 上

# 注意,在安裝之前解析到master0, 安裝成功后解析改成自己,因為kubelet kube-proxy配置的都是這個解析名,如果不改解析master0宕機整個集群就不可用了echo "10.103.97.200 apiserver.cluster.local" >> /etc/hosts kubeadm join 10.103.97.200:6443 --token 9vr73a.a8uxyaju799qwdjv \    --discovery-token-ca-cert-hash sha256:7c2e69131a36ae2a042a339b33381c6d0d43887e2de83720eff5359e26aec866 \    --experimental-control-plane \    --certificate-key f8902e114ef118304e561c3ecd4d0b543adc226b7a07f675f56564185ffe0c07 
sed "s/10.103.97.200/10.103.97.201/g" -i /etc/hosts  # 解析改也自己本機地址

在 master2 10.103.97.202 上,同master1

echo "10.103.97.200 apiserver.cluster.local" >> /etc/hostskubeadm join 10.103.97.200:6443 --token 9vr73a.a8uxyaju799qwdjv \    --discovery-token-ca-cert-hash sha256:7c2e69131a36ae2a042a339b33381c6d0d43887e2de83720eff5359e26aec866 \    --experimental-control-plane \    --certificate-key f8902e114ef118304e561c3ecd4d0b543adc226b7a07f675f56564185ffe0c07  
sed "s/10.103.97.200/10.103.97.201/g" -i /etc/hosts

在Node節(jié)點上

通過虛擬IP join到master上, 這個命令會在node節(jié)點上創(chuàng)建一條ipvs規(guī)則,virturl server就是虛擬IP, realserver就是三個master。 然后再以一個static pod起一個守護進程守護這些規(guī)則,一旦哪個apiserver不可訪問了就清除realserver, apiserver通了之后再次添加回來

echo "10.103.97.2 apiserver.cluster.local" >> /etc/hosts   # using vipkubeadm join 10.103.97.2:6443 --token 9vr73a.a8uxyaju799qwdjv \    --master 10.103.97.200:6443 \    --master 10.103.97.201:6443 \    --master 10.103.97.202:6443 \    --discovery-token-ca-cert-hash sha256:7c2e69131a36ae2a042a339b33381c6d0d43887e2de83720eff5359e26aec866

Architecture

  +----------+                       +---------------+  virturl server: 10.103.97.2:6443  | mater0   |<----------------------| ipvs nodes    |    real servers:  +----------+                      |+---------------+            10.103.97.200:6443                                    |                             10.103.97.201:6443  +----------+                      |                             10.103.97.202:6443  | mater1   |<---------------------+  +----------+                      |                                    |  +----------+                      |  | mater2   |<---------------------+  +----------+

集群每個node節(jié)點都會創(chuàng)建一條ipvs規(guī)則用于代理所有的master節(jié)點。類似kube-proxy的ipvs實現(xiàn).

然后起一個守護進程就健康檢查apiservers /etc/kubernetes/manifests/sealyun-lvscare.yaml

以上是“k8s中如何使用kubeadm”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI