在 AWS 上安裝 OpenShift
AWS 上的 Red Hat OpenShift 服務 (ROSA) 提供一個 OpenShift 實例來執行 Keycloak。
關於
此模組旨在自動化透過 ROSA 工具在 AWS 中佈建 OpenShift 叢集的相關任務,如 ROSA 安裝指南中所述。這些腳本位於此儲存庫中的 provision/aws
資料夾中。
它還會安裝 EFS 作為具有 efs-sc
儲存類別的 ReadWriteMany PersistentVolumeClaims 的儲存提供者。有關更多資訊,請參閱AWS 彈性檔案服務作為 ReadWriteMany 儲存。
先決條件
-
執行ROSA 安裝指南中概述的步驟
-
在 AWS 帳戶中啟用 ROSA 服務
-
下載並安裝 ROSA 命令列工具
-
為彈性負載平衡器建立服務連結角色
-
使用您的 Red Hat 帳戶權杖登入 ROSA CLI,並建立 AWS 帳戶角色和政策
-
驗證您的憑證和配額
-
安裝
安裝過程在 provision/aws
資料夾中的 rosa_create_cluster.sh
腳本中自動化,該腳本從環境變數中取得其參數。
它會載入 aws/
目錄中 .env
檔案中預先設定的環境變數。
該腳本透過 rosa create cluster
命令建立 OpenShift 叢集,此外還會建立所需的運算子角色和 OIDC 提供者。安裝過程完成後,它會建立一個新的管理員使用者。
.env
檔案範例CLUSTER_NAME=rosa-kcb VERSION=4.13.8 REGION=eu-central-1 COMPUTE_MACHINE_TYPE=m5.2xlarge MULTI_AZ=false REPLICAS=3
如果在設定中未提供 ADMIN_PASSWORD
,則會從 AWS Secrets Manager 中讀取。
必要參數
VERSION
-
OpenShift 叢集版本。
REGION
-
叢集應執行的 AWS 區域。
COMPUTE_MACHINE_TYPE
-
預設 OpenShift 工作節點機器集區的 AWS 執行個體類型。
REPLICAS
-
工作節點的數量。如果選取多可用區安裝,則此值必須是區域中可用可用區數量的倍數。例如,如果該區域有 3 個可用區,則副本數必須設定為 3 的倍數。
使用以下命令找出區域中的可用區
aws ec2 describe-availability-zones --region region-name
重新建立管理員使用者
上述安裝腳本會自動建立管理員使用者,但如果需要重新建立使用者,則可以透過 rosa_recreate_admin.sh
腳本完成,並提供 CLUSTER_NAME
和可選的 ADMIN_PASSWORD
參數。
按需擴展叢集節點
節點的標準設定可能太小,無法執行負載測試,同時使用不同的執行個體類型並重建叢集需要大量時間(約 45 分鐘)。若要按需擴展叢集,標準設定有一個名為 scaling
的機器集區,其中包含 m5.2xlarge
類型的執行個體,這些執行個體會根據目前的需求自動擴展,從 4 個到 15 個執行個體不等。但是,工作節點的自動擴展相當耗時,因為節點是一個接一個地擴展。
若要使用不同的執行個體類型,請使用 rosa create machinepool
建立其他機器集區
AWS 彈性檔案服務作為 ReadWriteMany 儲存
此設定會安裝 EFS 作為具有 efs-sc
儲存類別的 ReadWriteMany PersistentVolumeClaims 的儲存提供者。
使用腳本 rosa_efs_create.sh
和 rosa_efs_delete.sh
,可以新增和移除 EFS 設定。這些腳本旨在分別從 rosa_create_cluster.sh
和 rosa_delete_cluster.sh
中呼叫。
即使腳本已完成,PVC 中的 DNS 可能也需要一些時間才能擷取掛載點的新 IP 位址。同時,您可能會看到錯誤訊息,例如「無法解析伺服器 file-system-id.efs.aws-region.amazonaws.com」。
以下文件已用於設定 EFS