国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

軟件測(cè)試 | K8S安裝與配置

2023-05-29 10:28 作者:愛(ài)測(cè)軟件測(cè)試  | 我要投稿

K8S 的安裝與配置

K8S 在當(dāng)年因?yàn)槠鋸?fù)雜、艱難的安裝方式被稱(chēng)為是新人殺手,勸退圈的 NO.1。大量想要學(xué)習(xí) K8S 的人 被擋在了安裝手冊(cè)這座大山前。不過(guò)好在經(jīng)過(guò)多年的發(fā)展,好幾款快速安裝 K8S 的工具都已經(jīng)成熟。 今天介紹的就是 kubeadm 這款 K8S 官方安裝工具。

準(zhǔn)備工作

為了演示安裝過(guò)程,選擇 Centos 8 來(lái)作為宿主機(jī),為了安裝必要的工具, 需要添加阿里源。

K8S 并不支持交換分區(qū), 所以要關(guān)閉它。

為了讓 Docker 網(wǎng)絡(luò)生效,需要讓宿主機(jī)擁有類(lèi)似路由器一樣的網(wǎng)絡(luò)轉(zhuǎn)發(fā)功能。 這樣在使用端口映射的 方式啟動(dòng)容器的時(shí)候,才能使用宿主機(jī)作為跳板間接的與容器網(wǎng)絡(luò)進(jìn)行通信。 靠的就是將發(fā)往宿主機(jī)特 定的網(wǎng)絡(luò)請(qǐng)求轉(zhuǎn)發(fā)給容器網(wǎng)絡(luò)實(shí)現(xiàn)的,具體的原理這里不深入討論了。 但是為了讓宿主機(jī)有這樣的能力 需要打開(kāi)兩個(gè)內(nèi)核參數(shù)。

安裝DOCKER

安裝 KUBECTL、KUBELET、KUBEADM

安裝前先介紹一下這三個(gè)工具。

kubeadm:之前說(shuō)過(guò)這個(gè)是 k8s 集群的安裝工具

kubectl:k8s 的命令行工具,后續(xù)都使用使用這個(gè)命令與 k8s 通信

kubelet:可以理解為 k8s 在每個(gè)節(jié)點(diǎn)上啟動(dòng)的 agent,它負(fù)責(zé)維護(hù)當(dāng)前節(jié)點(diǎn)的狀態(tài)和節(jié)點(diǎn)上啟動(dòng)的 所有容器的維護(hù)工作。 由于它不能夠被容器化部署,所以必須手動(dòng)下載。PS:其他 k8s 的服務(wù)可 以容器化部署所以不需要手動(dòng)下載。

首先添加阿里源

安裝

這個(gè)命令需要注意以下兩點(diǎn):

因?yàn)楣雀璧溺R像在國(guó)內(nèi)是無(wú)法下載的,所以需要通過(guò)--image-repository 參數(shù)來(lái)指定從阿里云上下載 所需要的鏡像 命令默認(rèn)會(huì)安裝最新的 k8s 版本, 如果想要指定版本可以通過(guò)--kubernetes-version 參數(shù)來(lái)完成這 個(gè)目的 當(dāng)命令運(yùn)行成功后,會(huì)打印出如下的信息:

如果看到上面的信息那證明集群已經(jīng)安裝成功。并且上面的信息非常有用,需要按信息內(nèi)容嚴(yán)格執(zhí)行才 能順利使用集群。這里針對(duì)這段信息需要注意的有如下 2 點(diǎn):

  • 需要按照信息所提示的將 kubeconfig 文件復(fù)制到 $HOME/.kube/config 路徑下并賦予相應(yīng)的權(quán)限。 kubectl 命令會(huì)在此目錄下尋找 kubeconfig 文件并與 K8S 的 apiserver 進(jìn)行通信。 kubeconfig 文 件中包含 K8S apiserver 的地址和數(shù)字證書(shū)等信息,是大多數(shù)外部程序跟 K8S 通信的必需品。 如 果你希望通過(guò) K8S 開(kāi)源出來(lái)的客戶(hù)端與 K8S 進(jìn)行通信,那不管使用哪種語(yǔ)言的客戶(hù)端第一步都要 指定 kubeconfig 的路徑對(duì)客戶(hù)端進(jìn)行初始化。

  • 目前搭建的 K8S 集群是單節(jié)點(diǎn)集群,如果希望將其他節(jié)點(diǎn)加入到集群中來(lái),需要按上述信息提示 的在對(duì)應(yīng)節(jié)點(diǎn)使用 kubeadm join 命令。 所以要保存好上述信息的這段命令。

截止到這里還無(wú)法使用 K8S 集群,當(dāng)使用 kubectl get pods -n kube-system 這個(gè)命令來(lái)查看會(huì) 發(fā)現(xiàn) K8S 的 DNS 仍然不是運(yùn)行狀態(tài)。

這是因?yàn)闆](méi)有安裝 K8S 網(wǎng)絡(luò)的 CNI 插件, K8S 支持很多種插件式的設(shè)計(jì), 其網(wǎng)絡(luò)也是其中之一。 它不會(huì)預(yù)先幫助用戶(hù)安裝網(wǎng)絡(luò)組件,而是把這個(gè)權(quán)力留給用戶(hù)。 目前主流的網(wǎng)絡(luò)組件有 flannel,calico 和 weave。本次使用 calico 來(lái)進(jìn)行安裝。

如果安裝成功,就可以用 kubectl get pods -n kube-system 命令看到 dns 和 calico 相關(guān)的 POD 都已經(jīng)是運(yùn)行狀態(tài)了。

當(dāng)然現(xiàn)在集群仍然不是可用狀態(tài), 如果這個(gè)時(shí)候向 K8S 提交一個(gè) POD 會(huì)發(fā)現(xiàn) POD 會(huì)一直處于 pending 狀態(tài), 這是因?yàn)槭褂?kubeadm 安裝的 K8S 集群它都會(huì)默認(rèn)為主節(jié)點(diǎn)打上一個(gè)污點(diǎn)(taint)。 污點(diǎn)是 K8S 中的一個(gè)調(diào)度策略。 可以把它當(dāng)做一個(gè)標(biāo)識(shí), 凡是被打上污點(diǎn)的節(jié)點(diǎn)默認(rèn)情況下是不可以使用的, 只有在創(chuàng)建 POD 的時(shí)候顯示的聲明可以容忍(tolerate)這個(gè)污點(diǎn)才可以被調(diào)度到這個(gè)節(jié)點(diǎn) 上。 kubeadm 之所以給 Master 節(jié)點(diǎn)打上一個(gè)污點(diǎn)是從保護(hù)主節(jié)點(diǎn)出發(fā)考慮的。試想一下主節(jié)點(diǎn)上運(yùn)行 的都是 K8S 的關(guān)鍵服務(wù),一但這些服務(wù)出現(xiàn)問(wèn)題那么會(huì)導(dǎo)致整個(gè) K8S 集群癱瘓,所以如果準(zhǔn)許普通的 POD 也調(diào)度到 Master 節(jié)點(diǎn)的話(huà),那么大量的任務(wù)可能會(huì)存在壓垮主節(jié)點(diǎn)的風(fēng)險(xiǎn)。 所以為了保護(hù)這些服 務(wù),kubeadm 會(huì)默認(rèn)給 Master 節(jié)點(diǎn)打上污點(diǎn)以保證普通的 POD 不會(huì)調(diào)度到 Master 節(jié)點(diǎn)上。 那么為 了在本次演示中能夠使用主節(jié)點(diǎn), 可以采取手動(dòng)的刪除這個(gè)污點(diǎn)。

注意刪除污點(diǎn)的命令格式為: kubectl taint nodes 節(jié)點(diǎn)名稱(chēng)?node-role.kubernetes.io?master:NoSchedule- 所以才需要先使用 kubectl get nodes 命令去獲取 Master 節(jié)點(diǎn)的名稱(chēng)。 至此 K8S 集群就已經(jīng)搭建完畢了。

掃描下方可領(lǐng)取更多學(xué)習(xí)資料(無(wú)償哦~)



軟件測(cè)試 | K8S安裝與配置的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
阿瓦提县| 松原市| 巴东县| 高邮市| 故城县| 平乡县| 福贡县| 连云港市| 兴义市| 鸡东县| 河东区| 大同市| 容城县| 沾化县| 怀仁县| 灵寿县| 桦川县| 应用必备| 横山县| 德钦县| 漯河市| 德化县| 桃园县| 电白县| 广平县| 昂仁县| 柘城县| 清苑县| 永寿县| 奉贤区| 南阳市| 砀山县| 攀枝花市| 长丰县| 陈巴尔虎旗| 广宁县| 东港市| 荆州市| 八宿县| 如皋市| 樟树市|