34.6 AKS 部署相關問題疑難排解

下表列出了您可能會遇到的問題,以及為解決這些問題建議執行的動作。如果問題持續發生,請聯絡您的 NetIQ 代表。

問題

建議執行的動作

在 Azure 入口網站中執行 Terraform 指令時,您可能會遇到阻礙基礎架構部署的錯誤。下面列出了一些可能的錯誤。

Error: making Read request on Azure KeyVault Secret slesvmpwd: azure.BearerAuthorizer#WithAuthorization: Failed to refresh the Token for request to https://idmkv88211894240361.vault.azure.net/secrets/slesvmpwd/?api-version=7.1: StatusCode=401 -- Original Error: adal: Refresh request failed.Status Code = '401'.Response body: {"error":{"code":"invalid_request","message":"Required audience parameter not specified"}} Endpoint http://localhost:50342/oauth2/token │ │ with module.server.data.azurerm_key_vault_secret.slesvmpwd, │ on sles15sp2-server/main.tf line 42, in data "azurerm_key_vault_secret" "slesvmpwd": │ 42: data "azurerm_key_vault_secret" "slesvmpwd" { kubernetes_secret.example3: Creation complete after 1s [id=idm/ingress-tls] ╷│ Error: error detecting capabilities: error PostgreSQL version: dial tcp 52.186.162.130:5432: connect: connection timed out │ │ with module.dbserver.postgresql_database.igaworkflowdb, │ on Azure-PG-Server/main.tf line 217, in resource "postgresql_database" "igaworkflowdb": │ 217: resource "postgresql_database" "igaworkflowdb" { │ az aks get-credentials --resource-group rajj_rg --name cluster-name --overwrite-existing│ Error: making Read request on Azure KeyVault Secret uawfedbuser: azure.BearerAuthorizer#WithAuthorization: Failed to refresh the Token for request to https://idmkv80357639695488.vault.azure.net/secrets/uawfedbuser/?api-version=7.1: StatusCode=401 -- Original Error: adal: Refresh request failed.Status Code = '401'.Response body: {"error":{"code":"invalid_request","message":"Required audience parameter not specified"}} Endpoint http://localhost:50342/oauth2/token │ │ with module.dbserver.data.azurerm_key_vault_secret.uawfedbuser, │ on Azure-PG-Server/main.tf line 28, in data "azurerm_key_vault_secret" "uawfedbuser": │ 28: data "azurerm_key_vault_secret" "uawfedbuser" { module.dbserver.null_resource.delay: Creation complete after 5m0s [id=5961346882319865424] ╷│ Error: waiting for creation of Managed Kubernetes Cluster "test-akscluster" (Resource Group "idmtest_rg"): Code="ReconcileStandardLoadBalancerError" Message="Reconcile standard load balancer failed.Details: outboundReconciler retry failed: Category: ClientError; SubCode: PublicIPCountLimitReached; Dependency: Microsoft.Network/PublicIPAddresses; OrginalError: Code=\"PublicIPCountLimitReached\" Message=\"Cannot create more than 10 public IP addresses for this subscription in this region.\" Details=[]; AKSTeam: Networking, Retriable: false."│ │ with module.aks.azurerm_kubernetes_cluster.main, │ on .terraform/modules/aks/main.tf line 10, in resource "azurerm_kubernetes_cluster" "main": │ 10: resource "azurerm_kubernetes_cluster" "main" {

若要解決此問題,請執行以下步驟:

  1. 登入 Azure 入口網站。

  2. (選擇性) 找到 Azure Kubernetes 叢集組態檔案路徑。

  3. 執行以下指令覆寫預設組態檔案 ~/.kube/config。

    aks get-credentials --resource-group <資源群組名稱> --name <kube 叢集名稱> --overwrite-existing

    export KUBE_CONFIG_PATH=~/.kube/config

  4. 重新執行 Terraform 指令。如需詳細資訊,請參閱使用 Configuration Generator 進行部署中的步驟 14、步驟 15、步驟 16。

當您嘗試在 Azure 上建立公用 IP 位址時,可能會出現以下錯誤。

│ Error: waiting for creation of Managed Kubernetes Cluster "cluster-name" (Resource Group "raj_rg"): Code="ReconcileStandardLoadBalancerError" Message="Reconcile standardload balancer failed.Details: outboundReconciler retry failed: Category: ClientError; SubCode: PublicIPCountLimitReached; Dependency: Microsoft.Network/PublicIPAddresses;OrginalError: Code=\"PublicIPCountLimitReached\" Message=\"Cannot create more than 10 public IP addresses for this subscription in this region.\" Details=[]; AKSTeam: Networking, Retriable: false."│ │ with module.aks.azurerm_kubernetes_cluster.main, │ on .terraform/modules/aks/main.tf line 10, in resource "azurerm_kubernetes_cluster" "main": │ 10: resource "azurerm_kubernetes_cluster" "main" {

請聯絡 Azure 團隊來提高訂閱配額,或嘗試移除已指定的但未使用的公用 IP 位址。

在 Azure 入口網站中執行 terraform apply 指令時,可能會出現以下例外:

(AgentPoolK8sVersionNotSupported) 版本 <version> 在此區域中不受支援。請使用 [az aks get-versions] 指令取得此區域中支援的版本清單。如需詳細資訊,請查看 https://aka.ms/supported-version-list

若要解決此問題,請執行以下步驟:

  1. 登入 Azure 入口網站。

  2. 按一下 。

  3. 執行以下指令來識別您所在區域支援的版本:

    az aks get-versions -l <location>

    例如:

    az aks get-versions -l eastus
  4. 導覽至 IDM_4.9_Cloud_Deployment_files 目錄,移至 main.tf 檔案並編輯以下值:

    kubernetes_version = "<版本>”

    orchestrator_version = "<版本>”

    例如:

    kubernetes_version = "1.20.15"

    orchestrator_version = "1.20.15"

    附註:版本 1.20.x 已經過認證,在 AKS Kubernetes 上受支援。

  5. 重新執行以下指令:

    terraform apply --auto-approve

在 Azure Kubernetes Service 上部署多例項容器時,您可能會發現有一些 Pod 處於等待中狀態。

若要解決該問題,請執行以下步驟:

  1. 登入 Azure 入口網站。

  2. 在搜尋方塊中輸入「kubernetes service」,然後按 Enter。

  3. 選取您的 kubernetes 叢集。

  4. 按一下診斷並解決問題 > 疑難排解。

  5. (視情況而定) 如果使用疑難排解方法未能解決問題,請檢查您的 Azure 帳戶的使用配額。

    1. 移至「首頁」,在搜尋方塊中輸入「配額」,然後按 Enter。

    2. 按一下計算。

    3. (視情況而定) 如果「目前使用率」欄顯示 100% 並帶有紅線,請按一下申請提高配額。

    4. 在新限制文字方塊中輸入新限制。

    5. 按一下「提交」。

當您重新啟動引擎例項 Pod 時,現有 Identity Vault 的驅動程式部署將會失敗。Designer 應用程式中可能會出現以下錯誤:

「cn=Azure AD Driver,cn=Driver Set,o=system」部署失敗並出現錯誤和/或警告。

移至 Designer 應用程式,並將 Identity Vault 重新輸入 Designer。

當您重新啟動主要伺服器時,將為它指定新 IP 位址,此 IP 位址與次要伺服器的 SSL 證書中的 IP 位址不相符。

重新啟動次要伺服器會導致它使用新 IP 位址重新核發 SSL 證書。

在 Identity Manager Reporting 中,當您嘗試輸入總大小超過 1MB 的多個報告時,會顯示錯誤 413。發生此錯誤的原因是 nginx-ingress 控制器允許的預設申請本文大小為 1MB。

呼叫 URL (/IDMRPT-CORE/rpt/definitions/import?uploadid=<id>&content=text/html&format=application/json&overwrite=true) 時發生錯誤。伺服器傳回狀態碼 413 及以下不可剖析的 JSON 資料:

若要解決此問題,可以允許指定更大的申請本文大小,為此,請在入口組態區段下的 values.yaml 檔案中新增以下註釋:

nginx.ingress.kubernetes.io/proxy-body-size: 3m