什麼是 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 等其他工具也是動態安裝的。
kubekey3

詳細安裝

首先,使用以下命令下載 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 和內存。有關更多信息,請參閱。 可插拔組件 頁。

kubekey4

節點和集群操作

添加節點

要添加新節點,請將新節點信息添加到集群配置文件 (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]

升級集群

這裡有兩個選項。

  1. 您可以使用一體化方法將集群升級到特定版本。此方法支持 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 或 聊天 或與我們一起買票並找到方法!