建立 Satellite 叢集
Satellite
您可以在 IBM Cloud Satellite® 位置建立 Red Hat® OpenShift® on IBM Cloud® 叢集,並使用您新增到位置的自有基礎架構主機作為叢集的工作節點。
必要條件
在 IBM Cloud Satellite 中建立群集之前,必須先設定位置。
-
檢閱 Satellite 叢集限制。
-
確保您在 IAM 中擁有管理員或 Satellite 群集建立者存取角色。 如需相關資訊,請參閱 IAM 平台及服務存取角色。
-
準備建立 IBM Cloud Satellite 位置。 請從以下選項中選擇其中一項。 請注意,目前無法支援使用 Schematics 自動建立已啟用 Red Hat CoreOS 的位置。 如果您想要建立啟用 Red Hat CoreOS 的位置,請參閱 手動建立位置。
- 您可以自動佈建位置的主機。 使用此選項,您可以使用雲端提供者認證來建立自訂角色或服務 ID。 此服務 ID 用於在雲端提供者中自動佈建虛擬機器。 在 VM 佈建並連接至您的位置之後,您可以將它們指派給 IBM Cloud Satellite 控制平面或您要使用的雲端服務。 若要開始使用,請參閱 使用 Schematics 範本自動化您的位置設定。
- 您可以在內部部署資料中心或公用雲端中手動佈建主機。 如果您選擇手動佈建位置的主機,請確定主機符合 最低需求,並容許 必要的出埠網路存取。
-
將主機連接至您的位置,並 設定您的位置控制平面。
-
將至少 3 個其他主機連接至您的位置,以用作 Red Hat OpenShift on IBM Cloud 叢集的工作者節點。
-
在建立叢集之前,請確定您選取的位置健全且處於 正常 狀態。
從主控台建立 Satellite 叢集
使用 IBM Cloud 主控台在 Satellite 基礎架構上建立 Red Hat OpenShift 群集。
從 主控台,按一下建立。 然後,檢閱下列區段以設定叢集。
- 基礎架構
- 選取Satellite。
- 位置
- 選取 資源群組 及您要在其中建立叢集的 Satellite 位置。
在已啟用 RHCOS 的位置中,當您想要將工作者節點儲存區新增至叢集時,可以使用 RHCOS 或 RHEL 主機。 在將主機指派給工作者節點儲存區之前,請務必將具有您要使用之作業系統的主機連接至您的位置。
- 基礎架構拓蹼
-
- 高可用性: 針對大部分使用案例選擇此選項。 建立至少 3 個工作者節點以取得高可用性。
-
- 單一抄本: 只有在特定情況下才建議使用單一節點叢集,且只能在資源受限邊緣位置中使用,這些位置具有多個執行相同工作量的備援位置。 如果您在 Satellite 基礎架構上執行 Red Hat OpenShift on IBM Cloud 叢集,在資源有限的遠端邊緣位置 (例如行動式直立式中的小型資料中心) 執行具有較小足印的資料平面,則對您的設定可能有幫助。 雖然一般 Red Hat OpenShift on IBM Cloud 叢集至少需要三個工作者節點才能取得高可用性,但您可以選擇建立執行單一工作者節點的叢集。 單一節點叢集有數個限制,且只能在特定情況下使用。 單一節點叢集缺乏高可用性。 透過佈建單一節點叢集,您可以接受您更有可能遇到工作負載的關閉時間和中斷。 單一節點叢集必須在已啟用 CoreOS 的 Satellite 位置上執行。 您位置上的控制平面主機以及您指派給單一節點叢集的主機必須執行 RHEL 8 或 RHCOS 作業系統。 只有執行 4.11 版或更新版本的 Satellite 叢集才支援。 如需相關資訊,請參閱 限制 一節。
- 預設工作者儲存區
- 配置預設工作者節點儲存區的詳細資料。
-
- 主機作業系統: 選取您要在叢集的預設工作者節點儲存區中使用之主機的作業系統。 在已啟用 Red Hat CoreOS 的位置中,您可以使用 RHCOS 或 RHEL 主機。
-
- Satellite 用來在代表基礎架構提供者中區域的區域之間平均指派主機的 工作者節點儲存區區域。 一般而言,請跨 3 個區域建立工作者節點儲存區,以取得高可用性。
-
- vCPU、記憶體 (GB) 和每個區域的工作節點數:請求要用於建立工作池的資源。Satellite可以自動將可用主機指派到工作池以滿足您的要求。 通常,針對叢集裡總共 3 個工作者節點,每個區域至少選取 1 個工作者節點。
- OpenShift 版本
- 選取叢集版本。 選擇預設版本,或者您可以指定不同的 支援版本。
- OpenShift Container Platform (OCP) 授權
- Satellite 位置中的所有使用者叢集都與 OpenShift Container Platform一起安裝,這會產生來自 Red Hat的授權費用。 不過,您可以使用 IBM Cloud Paks,為使用內部部署基礎架構所建立的叢集或內部部署所建立的叢集提供自己的 OpenShift Container Platform 授權。 服務叢集是所有 IBM Cloud 服務的基礎平台,由 Key Protect 或 IBM Cloud Object Storage 之類的服務建立,且不需要授權。
-
- 套用我的 Cloud Pak 授權: 選取此選項以將 Cloud Pak 授權套用至預設工作者節點儲存區。 在工作者節點儲存區層次套用 Cloud Pak 授權。 不要超出您的授權。 請記住,您的 OpenShift Container Platform 授權可以與其他雲端提供者或其他環境一起使用。 若要避免稍後發生計費問題,請確定您只使用您有權使用的內容。 例如,您可能具有兩個具有 4 CPU 及 16 GB 記憶體之工作者節點的 OCP 授權,並且您建立此工作者節點儲存區時具有兩個具有 4 CPU 及 16 GB 記憶體的工作者節點。 您已使用整個授權,且無法對其他工作者節點儲存區、雲端提供者或環境使用相同的授權。
-
- 購買授權: 為預設工作者節點儲存區購買新的 OpenShift Container Platform 授權。 此選項適用於工作程式儲存區層次。 當您建立其他工作者節點儲存區時,必須購買其他授權。
-
- 使用 Red Hat OpenShift Cluster Manager 進行管理: 提供 Red Hat® 帳戶取回密碼作為檔案或原始 JSON 格式,以指定此叢集裡工作者節點的現有 OCP 授權。 叢集也會使用此取回密碼,從您自己的 Red Hat 帳戶下載 Red Hat OpenShift 映像檔。 此選項適用於叢集層次。
- Satellite 配置
- 決定是否啟用 Satellite Config 的叢集管理存取權。 如果您未授與 Satellite 配置存取權,則稍後無法使用 Satellite 配置功能來檢視或部署叢集的 Kubernetes 資源。 如果您想要稍後啟用存取權,則可以 為 Satellite 配置 建立自訂 RBAC 角色。
- 加密
- 使用金鑰管理服務 (KMS) 來啟用資料加密,以加密叢集裡的密碼及其他機密性資訊。 您也可以稍後 啟用 KMS。
- 進入密鑰管理
- IBM Cloud Secrets Manager 可集中管理叢集裡的 Ingress 子網域憑證及其他密碼。 您可以選擇在叢集建立程序期間將 Secrets Manager 實例登錄至叢集。 您也可以指定密鑰群組,以用來控制對叢集裡密鑰的存取權。 在您建立叢集之後,可以配置或變更這兩個選項。
- 叢集詳細資料
- 為叢集提供名稱,並輸入您要與雲端資源相關聯的任何 IBM Cloud 標籤。 叢集名稱必須以字母開頭,可包含字母、數字及連字號(-),且長度不得超過 35 個字元。
如果您的 Satellite 位置沒有任何可用且匹配的主機,群集仍會建立,但會進入 Warning 狀態。 將主機附加 到您的 Satellite 位置,以便將主機指定為工作人員池的工作人員節點。 如果沒有自動指定主機,您也可以手動 指定 Satellite 主機到群集。 確保將主機指派為預設工作者節點儲存區的每個區域中的工作者節點。
如果您的位置主機只有私人網路連線,或如果您使用 Amazon Web Services、Google Cloud Platform 或 Microsoft Azure 主機,您必須連線到主機的私人網路,例如透過 VPN 存取,才能連線到您的群集並存取 Red Hat OpenShift 網頁主控台。 或者,如果主機具有公用網路連線功能,則可以透過將叢集及位置的 DNS 記錄變更為 使用主機的公用 IP 位址 來測試叢集的存取權。
等到叢集達到 正常 狀態,然後 存取叢集 以存取 Red Hat OpenShift Web 主控台,或從 CLI 執行 oc 及 kubectl 指令。 如果您已啟用 Satellite 配置存取權,則必須完成此步驟才能同步化許可權。
從 CLI 建立 Satellite 叢集
使用 Satellite CLI 在 Satellite 基礎架構上建立 Red Hat OpenShift 叢集。
開始之前,請安裝 Satellite CLI 外掛程式。
-
完成必要條件步驟。
-
驗證您的位置是否處於 正常 狀態。 當您順利建立 Satellite 控制平面,且您用於控制平面的所有主機都處於健全狀態時,該位置處於 正常 狀態。
ibmcloud sat location ls輸出範例
Retrieving locations... OK Name ID Status Ready Created Hosts (used/total) Managed From mylocation brhtfum2015a6mgqj16g normal yes 4 days ago 3 / 6 Dallas -
在 Satellite 位置中建立 Red Hat OpenShift 叢集。 當您建立叢集時,會在 Satellite 控制平面中自動建立叢集主節點。
- 若要確保主機自動指派為叢集之預設工作者節點儲存區中的工作者節點,請在
--host-label選項中指定這些主機的標籤,並在--workers選項中指定每個區域的工作者節點數目。 - 若要啟用 Satellite Config 的叢集管理存取權,請包括
--enable-admin-agent選項。 如果您未授與 Satellite 配置存取權,則稍後無法使用 Satellite 配置功能來檢視或部署叢集的 Kubernetes 資源。 如果您想要稍後啟用存取權,則可以 為 Satellite 配置 建立自訂 RBAC 角色。 - 如需此指令選項的相關資訊,請參閱 CLI 參考資料文件。
- 您可以在 CLI 中 建立 Satellite 叢集 時,併入
--infrastructure-topology選項並指定single-replica值,來建立單一節點叢集。 如果未包含此選項,則依預設會使用三個工作者節點的高可用性設定來佈建叢集。 - 若要自帶 OCP 授權,請確保透過在主控台中上傳取回密碼或在
ibmcloud oc cluster create satellite指令 中包括--pull-secret選項,確保包含 Red Hat 取回密碼以授權叢集執行 OCP。 - 若要套用 Cloud Pak 授權,請確保包含
--entitlement ocp_entitled選項。
- 若要確保主機自動指派為叢集之預設工作者節點儲存區中的工作者節點,請在
--operating-system RHEL_9_64|REDHAT_8_64|RHCOS-
可選。 叢集裡工作者節點的作業系統。 如需依叢集版本列出可用作業系統的清單,請參閱 Red Hat OpenShift on IBM Cloud 版本資訊。 如果未指定任何選項,則會使用對應於叢集版本的預設作業系統。
cluster create指令範例。ibmcloud oc cluster create satellite --location LOCATION --name NAME --pull-secret SECRET --version 4.21_openshift [--enable-admin-agent] [--host-label LABEL ...] [--operating-system SYSTEM] [--pod-subnet SUBNET] [-q] [--service-subnet SUBNET] [--workers WORKERS-PER-ZONE] [--zone ZONE] [--entitlement ENTITLEMENT]使用
RHCOS主機並套用--pull-secret授權的cluster create指令範例。ibmcloud oc cluster create satellite --location LOCATION --name CLUSTER_NAME --pull-secret SECRET --version VERSION --enable-admin-agent --operating-system RHCOS輸出範例
Creating cluster... OK Cluster created with ID brkhsd220b6ktv7sjl50
-
等待叢集達到 警告 狀態。 警告 狀態指出叢集主節點已完全部署,但在叢集裡無法偵測到任何工作者節點。
ibmcloud oc cluster ls輸出範例
OK Name ID State Created Workers Location Version Resource Group Name Provider satcluster brkhsd220b6ktv7sjl50 warning 12 minutes ago 0 mylocation 4.5.23_1525_openshift Default satellite -
請確定主機已指派為叢集的工作者節點。
- 自動指派: 如果您在建立叢集時包括
--host-labels,並且在 Satellite 位置中具有具有相符標籤的可用主機,則工作者節點會自動指派給叢集。 如果您沒有任何可用的相符主機,則仍會建立叢集,但會進入 警告 狀態。 連接主機 至 Satellite 位置,以便可以將主機作為工作者節點指派給工作者節點儲存區。 如果未自動指派主機,您也可以手動 將 Satellite 主機指派給叢集。 - 手動指派: 將 Satellite 主機指派給叢集。 在主機順利引導之後,主機會作為叢集執行 Red Hat OpenShift 工作量的工作者節點運作。 通常,將至少 3 部主機指派為叢集裡的工作者節點。
- 自動指派: 如果您在建立叢集時包括
-
驗證叢集是否達到 正常 狀態。
ibmcloud oc cluster ls輸出範例
OK Name ID State Created Workers Location Version Resource Group Name Provider satcluster brkhsd220b6ktv7sjl50 normal 2 hours ago 3 mylocation 4.3.23_1525_openshift Default satellite -
存取叢集 以執行
oc及kubectl指令,或存取 Red Hat OpenShift Web 主控台。 如果您已啟用 Satellite 配置存取權,則必須完成此步驟才能同步化許可權。
如果您的位置主機只有私人網路連線,或如果您使用 Amazon Web Services、Google Cloud Platform 或 Microsoft Azure 主機,您必須連線到主機的私人網路,例如透過 VPN 存取,才能連線到您的群集並存取 Red Hat OpenShift 網頁主控台。 或者,如果主機具有公用網路連線功能,則可以透過將叢集及位置的 DNS 記錄變更為 使用主機的公用 IP 位址 來測試叢集的存取權。
下一步
- 存取叢集
- 登入叢集,並驗證 Pod 是否健全且在執行中。 如需相關資訊,請參閱 存取 Satellite 上的 Red Hat OpenShift 叢集。
- 設定內部映像檔登錄
- 依預設,內部登錄不會在 Satellite 叢集中執行,因為未針對內部登錄設定後端儲存體。 您可以設定內部登錄來使用 Object Storage。 如需相關資訊,請參閱 設定 Satellite 叢集的內部映像檔登錄。
- 公開應用程式
- 有數個選項可安全地將應用程式公開給來自公用網路、來自連接至主機專用網路之資源或來自 IBM Cloud中資源的資料流量要求。 雖然這些選項包括標準 Red Hat OpenShift 叢集中可用的服務,但在 Satellite提供的基礎架構上建立的 Red Hat OpenShift 叢集中,這些服務的實作有所不同。 例如,叢集裡未針對 Red Hat OpenShift Ingress 控制器建立負載平衡器服務。 如需應用程式公開選項及其配置步驟的清單,請參閱 在 Satellite 叢集裡公開應用程式。
- 將應用程式資料儲存在持續性儲存體中
- 與在 IBM Cloud 基礎架構上建立的標準 Red Hat OpenShift 叢集不同,您的 Satellite 叢集不會隨提供 Kubernetes 儲存類別的儲存體驅動程式一起安裝,這些儲存體類別可隨時與應用程式的 Kubernetes 持續性磁區搭配使用。 不過,您可以安裝自己的儲存空間驅動程式來設定應用程式,以將其資料儲存在後端儲存裝置中。 檢閱下列一般選項。 如需相關資訊,請參閱 瞭解 Satellite 儲存體。