您正在查看 Apigee 和 Apigee Hybrid 說明文件。
這個主題沒有對應的
Apigee Edge 說明文件。
問題
查看 apigee
命名空間中的資源時,系統會顯示含有 Reason
AIS_VIRTUALHOST_MISSING_ENVGROUP
的 ApigeeIssue
。
錯誤訊息
執行 kubectl -n apigee get apigeeissues
後,系統會顯示以下錯誤:
NAME SEVERITY REASON DOCUMENTATION AGE vhost-missing-eg-my-eg ERROR AIS_VIRTUALHOST_MISSING_ENVGROUP https://cloud.google.com/apigee/docs/api-platform/troubleshoot/playbooks/vh-missing-env-group 5h18m
原因:Virtualhost 缺少環境群組
overrides.yaml
中定義的 virtualhosts
缺少對應的 EnvironmentGroup
。
診斷
執行下列指令:
kubectl -n apigee describe apigeeissue ISSUE_NAME
其中 ISSUE_NAME 是問題名稱。例如:vhost-missing-eg-my-eg
。
系統會傳回類似以下的內容:
Name: vhost-missing-eg-my-eg Namespace: apigee Labels: ais-reason=AIS_VIRTUALHOST_MISSING_ENVGROUP Annotations: <none> API Version: apigee.cloud.google.com/v1alpha1 Kind: ApigeeIssue Metadata: Creation Timestamp: 2023-04-05T14:29:38Z Generation: 1 Managed Fields: API Version: apigee.cloud.google.com/v1alpha1 Fields Type: FieldsV1 fieldsV1: f:spec: .: f:details: f:documentation: f:reason: f:severity: Manager: apigeewatcher Operation: Update Time: 2023-04-05T14:29:38Z Resource Version: 28195 UID: f7b62eb3-3f84-4a37-9ba8-9a0e1e9c3454 Spec: Details: Expected EnvironmentGroup "my-eg" in ApigeeOrganization "my-org" for ApigeeRouteConfig "my-org-my-eg" Documentation: https://cloud.google.com/apigee/docs/api-platform/troubleshoot/playbooks/vh-missing-env-group Reason: AIS_VIRTUALHOST_MISSING_ENVGROUP Severity: ERROR Events: <none>
Spec: Details: Expected EnvironmentGroup "my-eg" in ApigeeOrganization "my-org" for ApigeeRouteConfig "my-org-my-eg"
Spec.Details
的內容會說明預期存在的 EnvironmentGroup
名稱。
解決方法
- 使用
describe ApigeeIssue
指令,顯示預期存在的EnvironmentGroup
名稱:kubectl -n apigee describe apigeeissues ISSUE_NAME
其中 ISSUE_NAME 是問題名稱。例如:
vhost-missing-eg-my-eg
。在這個範例中,環境群組
my-eg
應位於my-org
Apigee 機構中。 - 請使用下列其中一種方法修正問題:
- 建立環境群組:
- 刪除環境群組:
- 在文字編輯器中開啟
overrides.yaml
。 - 從
virtualhosts
中刪除已移除的環境群組。 - 儲存
overrides.yaml
檔案。 - 使用 Helm 指令重新套用
overrides.yaml
檔案:模擬測試:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --namespace APIGEE_NAMESPACE \ --atomic \ --set envgroup=ENV_GROUP \ -f overrides.yaml \ --dry-run=server
請務必加入所有顯示的設定,包括
--atomic
這樣一來,當動作失敗時,系統就會回復。您的安裝作業可能已設定為使用與 ENV_GROUP 不同的 ENV_GROUP_RELEASE_NAME。如需設定相關資訊,請參閱「使用 Helm 安裝 Apigee hybrid」。
安裝圖表:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --namespace APIGEE_NAMESPACE \ --atomic \ --set envgroup=ENV_GROUP \ -f overrides.yaml
重試並確認系統不再傳回錯誤訊息。
- 在文字編輯器中開啟
必須收集診斷資訊
如果問題在您按照上述操作說明後仍未解決,請收集下列診斷資訊,然後與 Google Cloud Customer Care 團隊聯絡:
- Google Cloud 專案 ID。
- Apigee Hybrid 機構的名稱。
ApigeeIssue
的Spec.Details
欄位。