在 OpenShift 上安裝 Infinispan
部署一個或多個 Infinispan 叢集(具有或不具有跨站點)。
在 OpenShift 上安裝 Infinispan
-
從 https://github.com/keycloak/keycloak-benchmark/ 檢出 Git 儲存庫。
-
變更至
provision/infinispan
資料夾。 -
執行
task <task-name>
命令,在 OpenShift 上佈建所有容器。
請查看 Keycloak 自訂,以了解如何將 Keycloak 叢集連接至 Infinispan 叢集。 |
可用的 Task
Infinispan 可以使用單一或多個 Openshift 叢集安裝,無論是否具有跨站點。可用的 Task 如下:
task: Available tasks for this project:
* crossdc: Creates a cross-site enabled Infinispan deployment between 2 OCP clusters
* crossdc-single: Creates a cross-site enabled Infinispan deployment between 2 namespaces
* delete-crossdc: Deletes the Infinispan CR from cross-site deployment
* delete-crossdc-single: Deletes the Infinispan CR in a cross-site deployment in a single OCP cluster
* delete-infinispan: Deletes the Infinispan CR
* single-cluster: Creates a single cluster Infinispan deployment
沒有跨站點的單一叢集
若要安裝不含跨站點的簡單 Infinispan 叢集,請執行 task single-cluser
。此 Task 具有下列必要變數
變數 | 詳細資訊 |
---|---|
|
ROSA 叢集名稱。使用 |
|
要部署 Infinispan 叢集的命名空間。 |
task single-cluster ROSA_CLUSTER_NAME=gh-keycloak OC_NAMESPACE=infinispan
若要刪除 Infinispan 叢集,請使用相同的變數執行 task delete-infinispan
。
task delete-infinispan ROSA_CLUSTER_NAME=gh-keycloak OC_NAMESPACE=infinispan
在單一 Openshift 叢集中啟用跨站點的 Infinispan 叢集
若要部署啟用跨站點的兩個 Infinispan 叢集,請執行 task crossdc-single
。此 Task 需要兩個不同的命名空間,每個 Infinispan 叢集將部署在其中。所需的變數為
變數 | 詳細資訊 |
---|---|
|
ROSA 叢集名稱。使用 |
|
要安裝第一個 Infinispan 叢集的第一個命名空間。 |
|
要安裝第二個 Infinispan 叢集的第二個命名空間。 |
變數 OC_NAMESPACE_1 和 OC_NAMESPACE_2 必須不同。 |
task crossdc-single ROSA_CLUSTER_NAME=gh-keycloak OC_NAMESPACE_1=ispn-1 OC_NAMESPACE_2=ispn-2
若要刪除此部署,請使用相同的變數執行 task delete-crossdc-single
。
task delete-crossdc-single ROSA_CLUSTER_NAME=gh-keycloak OC_NAMESPACE_1=ispn-1 OC_NAMESPACE_2=ispn-2
在兩個不同的 Openshift 叢集中啟用跨站點的 Infinispan 叢集
最後,但同樣重要的是,若要在兩個不同的 Openshift 叢集中使用跨站點部署 Infinispan,請執行 task crossdc
。需要下列變數
變數 | 詳細資訊 |
---|---|
|
第一個 ROSA 叢集名稱。使用 |
|
第二個 ROSA 叢集名稱。使用 |
|
在第一個 ROSA 叢集中安裝 Infinispan 叢集的命名空間。 |
|
在第二個 ROSA 叢集中安裝 Infinispan 叢集的命名空間。 |
變數 ROSA_CLUSTER_NAME_1 和 ROSA_CLUSTER_NAME_2 必須不同。 |
變數 OC_NAMESPACE_1 和 OC_NAMESPACE_2 可以具有相同的值。 |
task crossdc ROSA_CLUSTER_NAME_1=gh-keycloak ROSA_CLUSTER_NAME_2=gh-pruivo OC_NAMESPACE_1=infinispan OC_NAMESPACE_2=infinispan
若要刪除此部署,請使用相同的變數執行 task delete-crossdc
。
task delete-crossdc ROSA_CLUSTER_NAME_1=gh-keycloak ROSA_CLUSTER_NAME_2=gh-pruivo OC_NAMESPACE_1=infinispan OC_NAMESPACE_2=infinispan
選用變數
以下是自訂 Infinispan 部署的變數清單。其中一些變數由所有 Task 使用,另一些則是 Task 專用。
變數 | 預設值 | Task 使用 | 詳細資訊 |
---|---|---|---|
|
3 |
所有 |
要建立的 Infinispan Pod 複本數。 |
|
- |
所有 |
CPU 請求,格式為 |
|
- |
所有 |
記憶體請求,格式為 |
|
- |
所有 |
Infinispan 伺服器的額外 JVM 選項。可用於設定 Java 的堆積記憶體,如下所示: |
|
來自 AWS IAM 或 |
所有 |
Infinispan Hot Rod 端點的憑證。 |
|
|
所有 |
在 Infinispan 叢集中啟用直方圖指標。 |
|
|
|
設定快取跨站點策略。它可以是 |
|
|
|
設定快取跨站點狀態傳輸策略。如果為 僅在 可以是 |
|
|
|
Infinispan 運算子驗證和設定不同 OpenShift 叢集之間跨站點所需的服務帳戶。Infinispan 運算子使用此帳戶驗證遠端叢集。 |
|
|
|
儲存遠端 OpenShift 叢集服務帳戶權杖的密碼名稱。 |
|
|
|
儲存信任儲存的密碼。信任儲存用於允許 Infinispan 和 Gossip Router Pod 之間的 TLS 通訊。 |
|
|
|
儲存金鑰儲存的密碼。金鑰儲存用於 Infinispan 和 Gossip Router Pod 之間的 TLS 通訊。 |