安裝 Apigee Hybrid 執行階段元件
在這個步驟中,您將使用 Helm 安裝下列 Apigee Hybrid 元件:
- Apigee 運算子
- Apigee 資料儲存庫
- Apigee 遙測
- Apigee Redis
- Apigee 入口管理工具
- Apigee 機構
- 您的 Apigee 環境
您將逐一安裝每個環境的圖表。安裝元件的順序很重要。
安裝前注意事項
- 如果您尚未安裝 Helm 3.14.2 以上版本,請按照「安裝 Helm」中的操作說明進行。
-
Apigee hybrid 會在安裝或升級圖表前,使用 Helm 安全邊界驗證設定。您可能會在本節中每個指令的輸出內容中看到警示值相關資訊,例如:
# Source: apigee-operator/templates/apigee-operators-guardrails.yaml apiVersion: v1 kind: Pod metadata: name: apigee-hybrid-helm-guardrail-operator namespace: APIGEE_NAMESPACE annotations: helm.sh/hook: pre-install,pre-upgrade helm.sh/hook-delete-policy: before-hook-creation,hook-succeeded labels: app: apigee-hybrid-helm-guardrail
如果任何
helm upgrade
指令失敗,您可以使用 Guardrails 輸出內容來診斷原因。請參閱「使用護欄診斷問題」一文。 - 在執行任何 Helm 升級/安裝指令之前,請在指令結尾加上
--dry-run=server
,使用 Helm 模擬功能。請參閱helm install --h
,查看支援的指令、選項和用法。
安裝步驟
- 如果尚未建立,請前往
APIGEE_HELM_CHARTS_HOME
目錄。在該目錄中執行下列指令。 - 安裝 Apigee Operator/Controller:
模擬測試:
helm upgrade operator apigee-operator/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml \ --dry-run=server
安裝圖表:
helm upgrade operator apigee-operator/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml
確認 Apigee Operator 安裝作業:
helm ls -n APIGEE_NAMESPACE
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION operator apigee 3 2023-06-26 00:42:44.492009 -0800 PST deployed apigee-operator-1.14.2 1.14.2
確認可用性,確認該服務是否已啟用:
kubectl -n APIGEE_NAMESPACE get deploy apigee-controller-manager
NAME READY UP-TO-DATE AVAILABLE AGE apigee-controller-manager 1/1 1 1 7d20h
-
安裝 Apigee 資料儲存庫:
模擬測試:
helm upgrade datastore apigee-datastore/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml \ --dry-run=server
安裝圖表:
helm upgrade datastore apigee-datastore/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml
請先確認
apigeedatastore
已啟用並執行,再繼續進行下一個步驟:kubectl -n APIGEE_NAMESPACE get apigeedatastore default
NAME STATE AGE default running 2d
-
安裝 Apigee 遙測:
模擬測試:
helm upgrade telemetry apigee-telemetry/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml \ --dry-run=server
安裝圖表:
helm upgrade telemetry apigee-telemetry/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml
查看狀態,確認服務已啟用及執行:
kubectl -n APIGEE_NAMESPACE get apigeetelemetry apigee-telemetry
NAME STATE AGE apigee-telemetry running 2d
-
安裝 Apigee Redis:
模擬測試:
helm upgrade redis apigee-redis/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml \ --dry-run=server
安裝圖表:
helm upgrade redis apigee-redis/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml
查看狀態,確認服務已啟用及執行:
kubectl -n APIGEE_NAMESPACE get apigeeredis default
NAME STATE AGE default running 2d
-
安裝 Apigee 入口管理工具:
模擬測試:
helm upgrade ingress-manager apigee-ingress-manager/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml \ --dry-run=server
安裝圖表:
helm upgrade ingress-manager apigee-ingress-manager/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml
確認可用性,確認該服務是否已啟用:
kubectl -n APIGEE_NAMESPACE get deployment apigee-ingressgateway-manager
NAME READY UP-TO-DATE AVAILABLE AGE apigee-ingressgateway-manager 2/2 2 2 2d
-
安裝 Apigee 機構。如果您已在 Shell 中設定 $ORG_NAME 環境變數,則可在下列指令中使用該變數:
模擬測試:
helm upgrade $ORG_NAME apigee-org/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml \ --dry-run=server
安裝圖表:
helm upgrade $ORG_NAME apigee-org/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml
檢查相關機構的狀態,確認該機構是否已啟用及運作:
kubectl -n APIGEE_NAMESPACE get apigeeorg
NAME STATE AGE apigee-org1-xxxxx running 2d
-
安裝環境。
您一次只能安裝一個環境。使用
--set env=
ENV_NAME 指定環境。如果您已在 Shell 中設定 $ENV_NAME 環境變數,則可在下列指令中使用該變數:模擬測試:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ --set env=$ENV_NAME \ -f overrides.yaml \ --dry-run=server
ENV_RELEASE_NAME 是用於追蹤
apigee-env
圖表安裝和升級情形的名稱。此名稱不得與安裝項目中的其他 Helm 版本名稱重複。通常與ENV_NAME
相同。不過,如果環境與環境群組的名稱相同,您必須為環境和環境群組使用不同的版本名稱,例如dev-env-release
和dev-envgroup-release
。如要進一步瞭解 Helm 中的版本,請參閱 Helm 說明文件中的「三個重要概念」。安裝圖表:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ --set env=$ENV_NAME \ -f overrides.yaml
檢查相應環境的狀態,確認環境已啟用並執行:
kubectl -n APIGEE_NAMESPACE get apigeeenv
NAME STATE AGE GATEWAYTYPE apigee-org1-dev-xxx running 2d
-
安裝環境群組 (
virtualhosts
)。- 您必須一次安裝一個環境群組 (虛擬主機)。使用
--set envgroup=
ENV_GROUP 指定環境群組。如果您已在 Shell 中設定 $ENV_GROUP 環境變數,則可在下列指令中使用該變數。針對overrides.yaml
檔案中提到的每個 env 群組重複執行下列指令:模擬測試:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ --set envgroup=$ENV_GROUP \ -f overrides.yaml \ --dry-run=server
ENV_GROUP_RELEASE_NAME 是用於追蹤
apigee-virtualhosts
圖表安裝和升級情形的名稱。此名稱不得與安裝程序中的其他 Helm 版本名稱重複。通常與ENV_GROUP
相同。不過,如果環境群組的名稱與安裝環境相同,您必須為環境群組和環境使用不同的版本名稱,例如dev-envgroup-release
和dev-env-release
。如要進一步瞭解 Helm 中的版本,請參閱 Helm 說明文件中的「 三大重要概念」。安裝圖表:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ --set envgroup=$ENV_GROUP \ -f overrides.yaml
- 檢查 ApigeeRoute (AR) 的狀態。
安裝
virtualhosts
會建立 ApigeeRouteConfig (ARC),而 ApigeeRoute (AR) 會在 Apigee 監控器從控制平面擷取環境群組相關詳細資料後,在內部建立。因此,請檢查對應的 AR 狀態是否正在執行:kubectl -n APIGEE_NAMESPACE get arc
NAME STATE AGE apigee-org1-dev-egroup 2d
kubectl -n APIGEE_NAMESPACE get ar
NAME STATE AGE apigee-org1-dev-egroup-xxxxxx running 2d
- 您必須一次安裝一個環境群組 (虛擬主機)。使用
下一步
使用 Workload Identity 的裝置
如果您要在 GKE 上安裝 Apigee hybrid,並且要設定 Workload Identity 來驗證服務帳戶,請在下一個步驟中,為叢集設定 Kubernetes 服務帳戶與 Google 服務帳戶之間的關聯。
1 2 3 4 5 6 7 8 4 5 7 8 8 9 10 (NEXT) 步驟 11:設定 Workload Identity所有其他安裝
在下一個步驟中,您將設定 Apigee 入口網關,並部署 Proxy 來測試安裝作業。
(NEXT) 步驟 1:公開 Apigee 入口 2