將私有自我管理叢集新增至 Astra Control Service
設定環境之後、您就可以建立Kubernetes叢集、然後將其新增至Astra Control Service。
自我管理的叢集是您直接進行資源配置與管理的叢集。Astra Control Service支援在公有雲環境中執行的自我管理叢集。您可以上傳、將自我管理的叢集新增至Astra Control Service kubeconfig.yaml
檔案:您必須確保叢集符合此處列出的需求。
支援的 Kubernetes 發佈
您可以使用 Astra Control Service 來管理下列類型的私有、自我管理叢集:
Kubernetes 配送 | 支援的版本 |
---|---|
Kubernetes (上游) |
1.27 至 1.29 |
Rancher Kubernetes引擎(RKE) |
RKE 1 :採用 Rancher Manager 2.7.9 的版本 1.24.17 、 1.25.13 、 1.26.8 |
Red Hat OpenShift Container Platform |
4.12 至 4.14 |
這些指示假設您已經建立了私有叢集、並準備了安全的方法來遠端存取它。
您必須執行下列工作、才能將您的私有叢集新增至 Astra Control Service :
安裝 Astra Connector
在新增私有叢集之前、您需要在叢集上安裝 Astra Connector 、以便 Astra Control 能夠與其通訊。請參閱 "安裝以非 Kubernetes 原生工作流程管理的舊版 Astra Connector for Private 叢集" 以取得相關指示。
設定持續儲存
設定叢集的持續儲存設備。如需設定持續儲存設備的詳細資訊、請參閱入門文件:
將私有自我管理叢集新增至 Astra Control Service
您現在可以將私有叢集新增至 Astra Control Service 。
開始之前
自我管理的叢集是您直接進行資源配置與管理的叢集。Astra Control Service支援在公有雲環境中執行的自我管理叢集。您的自我管理叢集可以使用 Astra Control Provisioner 與 NetApp 儲存服務進行介面、或是使用 Container Storage Interface ( CSI )驅動程式與 Amazon Elastic Block Store ( EBS )、 Azure Managed Disks 及 Google Persistent Disk 進行介面。
Astra Control Service支援使用下列Kubernetes發佈版本的自我管理叢集:
-
Red Hat OpenShift Container Platform
-
Rancher Kubernetes引擎
-
上游Kubernetes
您的自我管理叢集必須符合下列需求:
-
叢集必須可透過網際網路存取。
-
如果您使用或打算使用已啟用SCSI驅動程式的儲存設備、則叢集上必須安裝適當的SCSI驅動程式。如需使用SCSI驅動程式來整合儲存設備的詳細資訊、請參閱儲存服務的說明文件。
-
您可以存取僅包含一個內容元素的叢集 kubeconfig 檔案。追蹤 "這些指示" 以產生 kubeconfig 檔案。
-
如果您要使用參考私有憑證授權單位( CA )的 kubeconfig 檔案來新增叢集、請將下列行新增至
cluster
kubeconfig 檔案的一節。這可讓 Astra Control 新增叢集:insecure-skip-tls-verify: true
-
*僅限Rancher *:在Rancher環境中管理應用程式叢集時、請在Rancher提供的Kusbeconfig檔案中修改應用程式叢集的預設內容、以使用控制面內容而非Rancher API伺服器內容。如此可減少Rancher API伺服器的負載、並改善效能。
-
* Astra Control Provisioner 需求 * :您應該擁有正確設定的 Astra Control 資源配置程式、包括其 Astra Trident 元件、來管理叢集。
-
* 檢閱 Astra Trident 環境需求 * :在安裝或升級 Astra Control Provisioner 之前、請檢閱 "支援的前端、後端及主機組態"。
-
* 啟用 Astra Control Provisioner 功能 * :強烈建議您安裝 Astra Trident 23.10 或更新版本並啟用 "Astra Control Provisioner 進階儲存功能"。在後續版本中、如果 Astra Control 資源配置程式未啟用、 Astra Control 將不支援 Astra Trident 。
-
* 設定儲存後端 * :至少必須有一個儲存後端 "在 Astra Trident 中設定" 在叢集上。
-
* 設定儲存類別 * :至少必須有一個儲存類別 "在 Astra Trident 中設定" 在叢集上。如果已設定預設儲存類別、請確定它是具有預設註釋的 * 僅 * 儲存類別。
-
* 設定 Volume Snapshot 控制器並安裝 Volume Snapshot 類別 * : "安裝 Volume Snapshot 控制器" 以便在Astra Control中建立快照。 "建立" 至少一個
VolumeSnapshotClass
使用 Astra Trident 。
-
-
在儀表板上、選取*管理Kubernetes叢集*。
依照提示新增叢集。
-
* 提供者 * :選取 * 其他 * 索引標籤以新增自我管理叢集的詳細資料。
-
其他:上傳以提供自我管理叢集的詳細資料
kubeconfig.yaml
檔案或貼上的內容kubeconfig.yaml
檔案。如果您自行建立 kubeconfig
檔案中、您應該只定義*一個*內容元素。請參閱 "這些指示" 以取得有關建立的資訊kubeconfig
檔案: -
* 認證名稱 * :為您上傳至 Astra Control 的自我管理叢集認證提供名稱。根據預設、認證名稱會自動填入為叢集名稱。
-
* 私有路由識別碼 * :輸入可從 Astra Connector 取得的私有路由識別碼。如果您透過查詢 Astra Connector
kubectl get astraconnector -n astra-connector
命令時、私有路由識別碼稱為ASTRACONNECTORID
。私有路由識別碼是與 Astra Connector 相關的名稱、可讓 Astra 管理私有 Kubernetes 叢集。在這種情況下、私有叢集是 Kubernetes 叢集、不會將其 API 伺服器暴露於網際網路上。 -
選擇*下一步*。
-
(可選) * Storage* :(可選)選擇您希望 Kubernetes 應用程式部署到此叢集的儲存類別、以供預設使用。
-
若要為叢集選取新的預設儲存類別、請啟用 * 指派新的預設儲存類別 * 核取方塊。
-
從清單中選取新的預設儲存類別。
每個雲端供應商的儲存服務都會顯示下列價格、效能和恢復能力資訊:
-
適用於Google Cloud的解決方案:價格、效能和恢復能力資訊Cloud Volumes Service
-
Google持續磁碟:沒有可用的價格、效能或恢復能力資訊
-
支援:效能與恢復能力資訊Azure NetApp Files
-
Azure託管磁碟:不提供價格、效能或恢復能力資訊
-
Amazon Elastic Block Store:沒有可用的價格、效能或恢復能力資訊
-
Amazon FSX for NetApp ONTAP 不提供價格、效能或恢復能力資訊
-
NetApp Cloud Volumes ONTAP 產品:不提供價格、效能或恢復能力資訊
每個儲存類別都可以使用下列其中一項服務:
-
-
選擇*下一步*。
-
* 審查與核准 * :檢閱組態詳細資料。
-
選取 * 新增 * 將叢集新增至 Astra Control Service 。
-
變更預設儲存類別
您可以變更叢集的預設儲存類別。
使用Astra Control變更預設儲存類別
您可以從Astra Control中變更叢集的預設儲存類別。如果叢集使用先前安裝的儲存後端服務、您可能無法使用此方法來變更預設儲存類別(*設為預設*動作無法選取)。在這種情況下、您可以 使用命令列變更預設儲存類別。
-
在Astra Control Service UI中、選取* Clusters*。
-
在「叢集」頁面上、選取您要變更的叢集。
-
選擇* Storage*(儲存設備)選項卡。
-
選擇*儲存類別*類別。
-
針對您要設為預設的儲存類別、選取「動作」功能表。
-
選擇*設為預設*。
使用命令列變更預設儲存類別
您可以使用Kubernetes命令變更叢集的預設儲存類別。無論叢集的組態為何、此方法都能正常運作。
-
登入Kubernetes叢集。
-
列出叢集中的儲存類別:
kubectl get storageclass
-
從預設儲存類別中移除預設指定。以<SC_NAME> 儲存類別的名稱取代支援:
kubectl patch storageclass <SC_NAME> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"false"}}}'
-
將不同的儲存類別標示為預設。以<SC_NAME> 儲存類別的名稱取代支援:
kubectl patch storageclass <SC_NAME> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
-
確認新的預設儲存類別:
kubectl get storageclass