什麼是 KubeKey?

KubeKey 是 KubeSphere 最新的 Kubernetes 安裝程序。 KubeSphere 是一個用於雲原生應用程序的分佈式操作系統管理系統,它使用 Kubernetes 作為其內核。提供即插即用結構,可與許多第三方應用程序無縫集成。這本質上類似於安裝 Kubernetes 的 MiniKube。

KubeKey 是使用 Go 編程語言開發的。 使用 Chart 或 YAML 文件輕鬆安裝 Kubernetes 和其他插件。 KubeKey 使用 kubeadm 應用程序在多個節點上同時安裝 Kubernetes 集群,降低安裝複雜度並提高效率。 與許多其他安裝方法相比,使用 KubeKey 可顯著減少安裝時間。

一般來說,KubeKey 可以在三種情況下使用:

  • 只需安裝 Kubernetes。
  • 使用單個命令安裝 Kubernetes 和 KubeSphere。
  • 首先安裝 Kubernetes,然後使用 ks-installer 工具安裝 KubeSphere。

Kubernetes 集群現在部署在多個本地環境中,包括裸機、私有云和公共雲。 KubeKey 可以幫助在這些環境中部署 Kubernetes。 KubeKey 在安裝過程中解決了這個問題,因為不同的環境需要不同的配置。

兼容環境

  • CentOS/RHEL7
  • 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 次要版本的最低資源要求是:

  • 2 個 vCPU
  • 4GB 內存
  • 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]

或者,您可以使用 config (-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

如果您從高級(在配置文件中創建)開始:

./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 或 和…聊天 或者和我們一起買票,看看如何!