跳至主要内容

RKE 範本和基礎設施

在 Rancher 中,RKE 範本用於佈建 Kubernetes 和定義 Rancher 設定,而節點範本用於佈建節點。

因此,即使 RKE 範本強制執行已開啟,最終使用者在建立 Rancher 叢集時選擇底層硬體時仍然具有靈活性。RKE 範本的最終使用者仍然可以選擇基礎設施提供者和他們想要使用的節點。

如果您想要標準化叢集中的硬體,請將 RKE 範本與節點範本或伺服器佈建工具(如 Terraform)結合使用。

節點範本​

節點範本負責 Rancher 中的節點配置和節點佈建。從您的使用者設定檔中,您可以設定節點範本以定義每個節點池中使用哪些範本。啟用節點池後,您可以確保每個節點池中有所需數量的節點,並確保池中的所有節點都相同。

Terraform​

Terraform 是一個伺服器佈建工具。它使用基礎設施即程式碼,讓您可以使用 Terraform 配置檔案建立基礎設施的幾乎每個方面。它可以以自我記錄且易於在版本控制中追蹤的方式自動化伺服器佈建過程。

本節重點介紹如何使用 Terraform 與 Rancher 2 Terraform 提供者,這是標準化 Kubernetes 叢集硬體的推薦選項。如果您使用 Rancher Terraform 提供者佈建硬體,然後使用 RKE 範本在該硬體上佈建 Kubernetes 叢集,您可以快速建立一個全面、生產就緒的叢集。

Terraform 允許您:

  • 將幾乎任何類型的基礎設施定義為程式碼,包括伺服器、資料庫、負載平衡器、監控、防火牆設定和 SSL 憑證
  • 跨多個平台編碼基礎設施,包括 Rancher 和主要雲端提供者
  • 將基礎設施即程式碼提交到版本控制
  • 輕鬆重複基礎設施的配置和設定
  • 將基礎設施變更納入標準開發實踐
  • 防止配置漂移,即某些伺服器的配置與其他伺服器不同

Terraform 如何運作?​

Terraform 寫在副檔名為 .tf 的檔案中。它使用 HashiCorp 配置語言編寫,這是一種宣告式語言,讓您可以定義叢集中想要的基礎設施、您正在使用的雲端提供者以及提供者的憑證。然後 Terraform 向提供者發出 API 呼叫,以有效地建立該基礎設施。

要使用 Terraform 建立 Rancher 佈建的叢集,請前往您的 Terraform 配置檔案並將提供者定義為 Rancher 2。您可以使用 Rancher API 金鑰設定 Rancher 2 提供者。注意:API 金鑰具有與其關聯的使用者相同的權限和存取層級。

然後 Terraform 呼叫 Rancher API 來佈建您的基礎設施,Rancher 呼叫基礎設施提供者。例如,如果您想要使用 Rancher 在 AWS 上佈建基礎設施,您需要在 Terraform 配置檔案或環境變數中提供 Rancher API 金鑰和 AWS 憑證,以便它們可以用於佈建基礎設施。

當您需要對基礎設施進行變更時,無需手動更新伺服器,您可以在 Terraform 配置檔案中進行變更。然後這些檔案可以提交到版本控制、驗證和根據需要審查。然後當您執行 terraform apply 時,變更將被部署。

使用 Terraform 的提示​

  • 在 Rancher 2 提供者的文件中有如何提供叢集的大部分方面的範例。

  • 在 Terraform 設定中,您可以使用 Docker Machine 節點驅動程式安裝 Docker Machine。

  • 您也可以在 Terraform 提供者中修改身份驗證。

  • 您可以透過在 Rancher 中變更設定來反向工程如何在 Terraform 中定義設定,然後返回並檢查您的 Terraform 狀態檔案以查看它如何對應到基礎設施的目前狀態。

建立符合 CIS 基準的叢集的提示​

本節說明一種可以在叢集中標準化安全性和合規性相關配置檔案的方法。

當您建立符合 CIS 基準的叢集時,您有一個加密配置檔案和一個稽核日誌配置檔案。

您的基礎設施佈建系統可以將這些檔案寫入磁碟。然後在您的 RKE 範本中,您可以指定這些檔案將在哪裡,然後將您的加密配置檔案和稽核日誌配置檔案作為額外掛載新增到 kube-api-server。

然後您需要確保 RKE 範本中的 kube-api-server 旗標使用符合 CIS 規範的配置檔案。

透過這種方式,您可以建立符合 CIS 基準的旗標。

資源​