什麼是 KubeKey?
KubeKey 是 KubeSphere 的最新 Kubernetes 安裝程序。 KubeSphere 是一個以 Kubernetes 為核心的雲原生應用的分佈式操作系統管理系統。它為許多第三方應用程序的無縫集成提供了即插即用的結構。有點像安裝 Kubernetes 的 MiniKube。
KubeKey 是使用 Go 編程語言開發的。它提供了一種使用圖表或 YAML 文件安裝 Kubernetes 和其他附加組件的快速方法。 KubeKey 使用 kubeadm 應用在多個節點上同時安裝 Kubernetes 集群,降低安裝複雜度,提高效率。 使用 KubeKey,與許多其他安裝方法相比,安裝時間顯著減少。
一般來說,KubeKey 可以在三種情況下使用:
- 只需安裝 Kubernetes。
- 使用一個命令安裝 Kubernetes 和 KubeSphere。
- 先安裝 Kubernetes,然後使用 ks-installer 工具安裝 KubeSphere。
Kubernetes 集群目前部署在多個本地環境中,例如裸機、私有云和公共雲。 KubeKey 可以幫助您在這些環境中部署 Kubernetes。 KubeKey 在安裝過程中解決了這個問題,因為不同的環境需要不同的配置。
支持的環境
- CentOS / RHEL 7
- Ubuntu 16.04、18.04
- Debian 的剋星 Stretch
- SUSE Linux 企業服務器 15
支持的 Kubernetes 版本
- v1.15:v1.15.12
- v1.16:v1.16.13
- v1.17:v1.17.9(默認)
- v1.18:v1.18.6
先決條件
以下是安裝小版本 KubeSphere 的最低資源要求。
- 兩個 vCPU
- 4 GB 內存
- 20GB 存儲空間
/var/lib/docker 文件夾用於存儲容器信息,並隨著集群的使用和運行而增大。在生產環境中,建議將 /var/lib/docker 文件夾掛載為單獨的驅動器。
節點要求
所有節點應執行以下操作:
- 我有 SSH 訪問權限。
- 同步時間。
- 安裝 sudo / curl / openssl。
- 請準備一個乾淨的操作系統。如果安裝了其他軟件,可能會發生衝突。
- 讓 OpenEBS(由 KubeKey 安裝)為您的測試和開發環境提供 LocalPV(本地持久卷)。生產客戶端必須使用 GlusterFS、NFS、Ceph 或其他商業級產品才能使用持久存儲,然後將客戶端安裝在所有相關節點上。
- 由於 Red Hat 在其 Linux 發行版中使用 SELinux,因此請關閉 SELinux 並將 SELinux 置於特權模式。如果您在復制時看到“權限被拒絕”錯誤,請檢查 SELinux 以確保它已關閉。 (稱讚)
網絡和 DNS 要求
- 確保 /etc/resolv.conf 文件中記錄的 DNS 地址已打開且可用。如果未打開,您的集群可能會遇到 DNS 問題。
- 確保基礎設施的所有元素都可以通過特定端口進行通信。
- 如果您使用防火牆或安全組,建議您關閉或使用防火牆。 網絡訪問 指導方針。
安裝 Kubernetes
基本安裝
使用 KubeKey 安裝 Kubernetes 的一般流程如下:
- 下載 KubeKey。
- 生成包含集群信息的配置文件。
- 運行 KubeKey。安裝將使用提供的配置文件自動開始。 docker 等其他工具也是動態安裝的。

詳細安裝
首先,使用以下命令下載 KubeKey 1.0.1 版本:也可以從官網下載 GitHub 發布頁面..
[email protected]:~# curl -sfL https://get-kk.kubesphere.io | VERSION=v1.0.1 sh -
注意:您可以使用命令更改版本號以下載其他特定版本的 Kubernetes。 KubeKey 只能下載到用作安裝主要任務框的服務器之一(例如主節點)。
下載 KubeKey 後,解壓縮文件。安裝文件夾包含一個名為 kk 的文件,該文件應該是可執行的。
[email protected]:~# chmod +x kk
創建集群
快速入門用於一體式安裝。 習慣 KubeSphere。
注意:Kubernetes 不支持大寫節點名稱。主機名中帶有大寫字母的節點會產生安裝錯誤。 如果您在訪問 https://storage.googleapis.com 時遇到問題,請先運行此命令。
[email protected]:~# KKZONE=cn
[email protected]:~# ./kk create cluster [--with-kubernetes version] [--with-kubesphere version]
其他安裝示例
如果您想使用 Kubernetes 的默認版本創建一個簡單的集群,請使用此命令。
./kk create cluster
要安裝具有指定版本的 Kubernetes 集群,請使用以下命令:
./kk create cluster --with-kubernetes v1.17.9
如果要生成安裝了 KubeSphere 的 Kubernetes 集群,請運行此命令。
./kk create cluster --with-kubesphere [version]
./kk create cluster --with-kubesphere v3.0.0
您還可以使用配置文件生成集群的自定義版本。為此,請使用此命令創建配置文件。
./kk create config [--with-kubernetes version] [--with-kubesphere version] [(-f | --file) path]
或者,您可以使用配置 (-f ~/folder/myconfig.yaml) 或使用標誌 –with-kubesphere 創建默認配置文件。
./kk create config [-f ~/folder/myconfig.yaml]
./kk create config --with-kubesphere
上述命令生成的config-sample.yaml文件需要改成環境標準。
您現在可以使用配置文件來創建集群。
./kk create cluster -f config-sample.yaml
啟用組件
KubeSphere 從有限數量的可插拔組件開始。這些附加組件可以在安裝之前或之後啟用。我們建議您安裝這些元素以探索 KubeSphere 在完整堆棧中提供的所有功能。在啟用它們之前,請確保您的服務器有足夠數量的 CPU 和內存。有關更多信息,請參閱。 可插拔組件 頁。

節點和集群操作
添加節點
要添加新節點,請將新節點信息添加到集群配置文件 (config-sample.yaml) 並使用以下命令應用更改:
./kk add nodes -f config-sample.yaml
刪除節點
要刪除節點,請使用以下命令:這應該指示您要刪除的節點的名稱。
./kk delete node <nodeName> -f config-sample.yaml
刪除集群
要刪除集群,請使用以下命令之一。從快速入門(多合一)開始時:
./kk delete cluster
從 Advanced(使用配置文件創建)開始時:
./kk delete cluster [-f config-sample.yaml]
升級集群
這裡有兩個選項。
- 您可以使用一體化方法將集群升級到特定版本。此方法支持 Kubernetes、KubeSphere 或同時升級 Kubernetes 和 KubeSphere。
./kk upgrade [--with-kubernetes version] [--with-kubesphere version]
2. 您可以使用多節點進程通過特定的配置文件升級您的集群。
./kk upgrade [--with-kubernetes version] [--with-kubesphere version] [(-f | --file) path]
使用 –with-kubernetes 或 –with-kubesphere 標誌運行命令也會修改配置文件。或者,您可以使用 -f 標誌指定用於創建集群構建的配置文件。
注意:如果要升級多節點集群,則必須指定配置文件。如果集群沒有使用 KubeKey 安裝,或者安裝時使用的配置文件找不到,則需要生成配置文件。該命令獲取集群信息並生成 KubeKey 配置文件,供後續集群使用。
./kk create config [--from-cluster] [(-f | --file) path] [--kubeconfig path]
在這裡,我們定義了上面使用的標誌。
- –from-cluster:此標誌表示您正在從現有集群獲取集群信息。
- -f:此標誌指示將生成配置文件的路徑。
- –kubeconfig:這個標誌是指kubeconfig所在的路徑。
配置文件生成後,需要添加節點ssh信息等一些參數。
結論是
KubeKey 允許您單獨或整體安裝不同版本的 KubeSphere 和 Kubernetes。它提供了一種簡單、高效、靈活的安裝方法。 新的 Kubernetes 用戶可以使用 KubeKey 輕鬆設置集群。 在節點上並行安裝 Kubernetes 集群,以降低安裝複雜度並提高整體流程效率。與傳統的安裝方法相比,您可以節省大量的安裝時間。總體而言,KubeKey 是一個有用的工具,可用於擴展 Kubernetes 集群,是 Kubernetes 世界的一個受歡迎的補充。
我們很自豪能成為 Hosting™ 最有用的人!
有問題嗎?知識淵博的解決方案和經驗豐富的託管顧問將向您展示如何通過 VMware 和 NetApp 平台在託管或私有云中利用您的軟件。
如果您正在使用完全託管的 VPS 服務器、雲專用、私有父服務器或專用服務器所有者,並希望進行更改以體驗最新技術,請致電 800.580.4985 或 聊天 或與我們一起買票並找到方法!