更新時(shí)間:2022-04-12 09:34:10 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2657次
如果您熟悉 Kubernetes,那么您一定知道 Kubernetes 的安裝是 Kubernetes 具有挑戰(zhàn)性的話(huà)題之一。由于存在多種安裝方法,因此出現(xiàn)了這一挑戰(zhàn)。在本文中,動(dòng)力節(jié)點(diǎn)小編將討論 Kubernetes 安裝方法、可用選擇和最佳實(shí)踐。讓我們開(kāi)始吧。

因?yàn)榘惭b方法很多,我把這些方法分為五種主要類(lèi)型。這種劃分是根據(jù)使用情況、安裝難易程度和安裝位置來(lái)劃分的。
1.單節(jié)點(diǎn)安裝:
這種類(lèi)型的安裝適合那些想要預(yù)覽 Kubernetes 或適合實(shí)踐、測(cè)試和開(kāi)發(fā)目的的人。市場(chǎng)上有許多單節(jié)點(diǎn) Kubernetes 發(fā)行版,但我介紹最流行的。
minikube是由 Kubernetes 社區(qū)正式發(fā)布的單節(jié)點(diǎn) Kubernetes 發(fā)行版。最新版本的 Kubernetes 可以與 minikube 一起運(yùn)行。除了安裝 Kubernetes,一些 Kubernetes 插件可以輕松運(yùn)行。借助 minikube,Kubernetes 可以部署在 VM、Container 或裸機(jī)系統(tǒng)上。還支持多個(gè)容器運(yùn)行時(shí)(Docker、Containerd、CRI-O)。
kind是用于在本地系統(tǒng)上的 Docker 容器內(nèi)運(yùn)行 Kubernetes 集群的發(fā)行版。kind 代表“Kubernetes in Docker” 這個(gè)發(fā)行版適用于測(cè)試、本地開(kāi)發(fā)和 CI 系統(tǒng)。kind 由 Kubernetes 社區(qū)正式分發(fā)。
k3s是 Rancher 發(fā)布的另一個(gè)有用的發(fā)行版。它最初是為物聯(lián)網(wǎng)和邊緣計(jì)算而構(gòu)建的,但可以用于任何其他目的。您可以使用幾個(gè)命令運(yùn)行單節(jié)點(diǎn) Kubernetes 或集群。
k3d是在 Docker 上運(yùn)行 k3s 的助手。就像“kind”一樣,它會(huì)在你的本地機(jī)器上啟動(dòng)一個(gè) Kubernetes 集群。k3d 由 Rancher 發(fā)布。
microk8s是另一個(gè)安裝選項(xiàng)。不僅是單節(jié)點(diǎn) Kubernetes,集群也可以使用 microk8s 部署。這個(gè) Kubernetes 發(fā)行版由發(fā)布 Ubuntu 的公司 Canonical 發(fā)布,并且可以在 snappy 包管理器上使用。Kubernetes 可以使用幾個(gè)命令進(jìn)行部署。除了 Kubernetes,還有一系列可以輕松部署的插件。
2.手動(dòng)集群安裝:
這種類(lèi)型的安裝用于部署最小可行集群。安裝的某些部分應(yīng)手動(dòng)完成。這是首次部署 Kubernetes 集群的首選方式。
kubeadm是一個(gè)用于人工部署集群的工具。它用于引導(dǎo) Kubernetes 組件,而不是配置機(jī)器。在引導(dǎo)集群之前,應(yīng)該手動(dòng)完成一些操作。
3.自動(dòng)集群安裝:
這種類(lèi)型的安裝是通過(guò)使用自動(dòng)化工具、腳本或提供者分布式安裝程序來(lái)完成的。對(duì)于那些想要在本地環(huán)境中部署生產(chǎn)級(jí) Kubernetes 集群或想要手動(dòng)管理集群生命周期的人來(lái)說(shuō),這是一種首選方式。
kubespray是 Ansible playbook 的集合,用于在裸機(jī)和云上部署生產(chǎn)級(jí)集群。除了安裝之外,還可以使用 kubespray 執(zhí)行第二天的操作。此安裝程序由 Kubernetes 社區(qū)官方維護(hù)。kubespray 中有十幾個(gè)插件可用,可以很容易地與 Kubernetes 一起部署。kubespray 是最合適的安裝選擇之一。
kops不僅會(huì)管理集群生命周期,還會(huì)提供必要的云基礎(chǔ)設(shè)施。正式支持在 AWS 上部署,在其他云提供商上部署是可用的,但處于 alpha 和 beta 狀態(tài)。
RKE是一個(gè) Rancher 分布式 Kubernetes,可以在 Docker 容器之上部署生產(chǎn)級(jí) Kubernetes 集群。使用 RKE 可以輕松管理 Kubernetes 集群。如果你想使用 Rancher 平臺(tái),你應(yīng)該選擇這個(gè)發(fā)行版。
Charmed Kubernetes是使用 Juju 部署 Kubernetes 集群的規(guī)范方式。它適用于在多云環(huán)境和裸機(jī)上運(yùn)行 Kubernetes。如果您正在尋找可以在 OpenStack 上部署的合格 Kubernetes 發(fā)行版,那么此安裝程序適合您。
KubeSphere不僅是一個(gè) Kubernetes 發(fā)行版,它還是一個(gè)基于 Kubernetes 創(chuàng)建云解決方案的平臺(tái)。使用 KubeSphere 和 Kubernetes 可以部署大量工具、插件等。該平臺(tái)也可以部署在現(xiàn)有的 Kubernetes 集群上。
Kubermatic是一個(gè) Kubernetes 平臺(tái),就像 Rancher 一樣。您可以在云端和本地部署和管理 Kubernetes 集群。主/種子集群和下游集群之間的連接由 OpenVPN 處理。
KubeOne是一種工具,用于配置必要的基礎(chǔ)設(shè)施并在幾個(gè)提供商上部署 Kubernetes。它可以很容易地與 Terraform 和 Kubermatic 集成。
4.托管集群:
集群的生命周期由提供者管理。在這種類(lèi)型的安裝中,可以通過(guò)最少的用戶(hù)操作來(lái)部署生產(chǎn)級(jí)集群。提供者負(fù)責(zé)管理整個(gè)集群以及底層基礎(chǔ)設(shè)施。由于易于安裝和管理,建議任何人使用此方法。使用托管 Kubernetes 的另一個(gè)好處是訪(fǎng)問(wèn)云功能。一些托管 Kubernetes 提供商提供了一組有用的功能,這些功能在本地或裸機(jī)解決方案中可能不可用。
Magnum是一種 OpenStack 解決方案,用于在 OpenStack 生態(tài)系統(tǒng)之上安裝托管 Kubernetes 和其他編排工具。借助 Magnum,云客戶(hù)可以輕松運(yùn)行 Kubernetes 集群。此方法也可以歸類(lèi)為自動(dòng)集群安裝方法。我決定在這里介紹它,因?yàn)樗€支持驚人的云功能。此外,基于 OpenStack 的云提供商可以向他們的客戶(hù)提供這種方法來(lái)安裝托管 Kubernetes 集群。
EKS代表 Elastic Kubernetes Service 是提供托管 Kubernetes 集群的亞馬遜解決方案。EKS 可以輕松地與其他 Amazon 服務(wù)集成。命令行工具 eksctl 用于在幾分鐘內(nèi)運(yùn)行生產(chǎn) Kubernetes 集群。
GKE是 Kubernetes 的 Google Cloud 版本,就像 AWS EKS 一樣。GKE 提供了一種稱(chēng)為 Autopilot 的特殊操作模式,可降低管理成本并優(yōu)化集群以進(jìn)行生產(chǎn)。
AKS由 Microsoft Azure 管理,可以輕松部署。這種托管 Kubernetes 解決方案非常適合 Azure 用戶(hù),因?yàn)樗梢耘c Azure 生態(tài)系統(tǒng)中可用的其他 Azure 工具集成。
通過(guò)上述介紹相信大家對(duì)Kubernetes安裝方法已經(jīng)有所了解,大家如果想了解更多相關(guān)知識(shí),可以關(guān)注一下動(dòng)力節(jié)點(diǎn)的Kubernetes視頻教程,里面還有更豐富的知識(shí)等著大家去學(xué)習(xí),一定會(huì)對(duì)大家有所幫助的。
Java實(shí)驗(yàn)班
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
Java就業(yè)班
有基礎(chǔ) 直達(dá)就業(yè)
Java夜校直播班
業(yè)余時(shí)間 高薪轉(zhuǎn)行
Java在職加薪班
工作1~3年,加薪神器
Java架構(gòu)師班
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話(huà)與您溝通安排學(xué)習(xí)