日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
部署k8s高可用架構(gòu)

概述

地址sealos, 讓kubernetes高可用不再需要keepalived haproxy和ansible,sealyun定制超級版kubeadm通過ipvs代理多個(gè)master,優(yōu)雅解決k8s高可用問題。

成都創(chuàng)新互聯(lián)公司專注于欽州網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供欽州營銷型網(wǎng)站建設(shè),欽州網(wǎng)站制作、欽州網(wǎng)頁設(shè)計(jì)、欽州網(wǎng)站官網(wǎng)定制、微信小程序服務(wù),打造欽州網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供欽州網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

環(huán)境介紹

ip role
10.103.97.200 master0
10.103.97.201 master0
10.103.97.202 master0
10.103.97.2 virtulIP

apiserver.cluster.local apiserver解析名

下載kubernetes1.14.0+離線包

在每個(gè)節(jié)點(diǎn)上初始化

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

用下載的kubeadm替換掉包內(nèi)的kubeadm:

cp kubeadm /usr/bin/kubeadm

kubeadm配置文件

cat kubeadm-config.yaml :

apiVersion: kubeadm.k8s.io/v1beta1
kind: ClusterConfiguration
kubernetesVersion: v1.14.0
controlPlaneEndpoint: "apiserver.cluster.local:6443" # 使用解析名去訪問APIserver
apiServer:
       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/v1alpha1
kind: KubeProxyConfiguration
mode: "ipvs"
ipvs:
       excludeCIDRs:
       - "10.103.97.2/32" # 如果不加這個(gè)k8s會定時(shí)清理用戶創(chuàng)建的IPVS規(guī)則,導(dǎo)致代理失敗

在 master0 10.103.97.200 上

echo "10.103.97.200 apiserver.cluster.local" >> /etc/hosts
kubeadm init --config=kubeadm-config.yaml --experimental-upload-certs  
mkdir ~/.kube && cp /etc/kubernetes/admin.conf ~/.kube/config
kubectl 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, 安裝成功后解析改成自己,因?yàn)閗ubelet kube-proxy配置的都是這個(gè)解析名,如果不改解析master0宕機(jī)整個(gè)集群就不可用了
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  # 解析改也自己本機(jī)地址

在 master2 10.103.97.202 上,同master1

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

在Node節(jié)點(diǎn)上

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

echo "10.103.97.2 apiserver.cluster.local" >> /etc/hosts   # using vip
kubeadm 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   |

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

然后起一個(gè)守護(hù)進(jìn)程就健康檢查

apiservers /etc/kubernetes/manifests/sealyun-lvscare.yaml

當(dāng)前文章:部署k8s高可用架構(gòu)
標(biāo)題網(wǎng)址:http://www.5511xx.com/article/dhpsgej.html