解決 AKS Arc 安裝期間的問題和錯誤

適用於:Azure Stack HCI 上的 AKS、Windows Server 上的 AKS本文說明安裝 AKS Arc 時可能會遇到的已知問題和錯誤。您也可以檢閱升級 AKS Arc 時和使用 Windows Admin Center 時的已知問題。

錯誤「無法等候附加元件弧線」

執行 Install-AksHci 之後,會出現此錯誤訊息。

注意

錯誤可能是因為已在安裝程式上啟用 Private Link 所造成。 目前,此案例沒有任何因應措施。 HCI 上的 AKS 不適用於 Private Link。

如果您未使用 Private Link,請使用下列步驟來解決此問題:

  1. 開啟 PowerShell 並執行 Uninstall-AksHci
  2. 執行 Install-AksHci 時,開啟 Azure 入口網站並瀏覽至所使用的資源群組。
  3. 檢查任何已連線的叢集資源是否出現已中斷連線狀態,並將顯示的名稱納入為隨機產生的 GUID。
  4. 刪除這些叢集資源。
  5. 關閉 PowerShell 工作階段,並開啟新的工作階段,然後再次執行 Install-AksHci

錯誤:「Install-AksHci 失敗,服務傳回錯誤。 Status=403 Code=“RequestDisallowedByPolicy”' 安裝 AKS-HCI 時發生錯誤

此錯誤可能是因為嘗試違反在 Azure Arc 上線程式期間提供的 Azure 訂用帳戶或資源群組上設定的 Azure 原則所造成。 若使用者在訂用帳戶或資源群組層級上定義 Azure 原則,然後嘗試安裝違反 Azure 原則的「Azure Stack HCI 上的 AKS」,則可能會發生此錯誤。

若要解決此問題,請閱讀錯誤訊息,以瞭解您的 Azure 系統管理員已違反哪些 Azure 原則,然後藉由對 Azure 原則發出例外狀況來修改 Azure 原則。 若要深入了解原則例外狀況,請參閱 Azure 原則豁免結構

錯誤:Install-AksHci 失敗並出現錯誤 - [物件已存在] 為叢集角色 'xx-xxxxx-xxxx-xxxx-xxxxxx-xxxxxx' 建立資源 'IPv4 Address xxx.xx.xx.xx' 時發生錯誤

先前安裝的功能仍處於失敗狀態且尚未清除。 您可能會看到下列錯誤:

Exception [An error occurred while creating resource 'MOC Cloud Agent Service' for the clustered role 'ca-3f72bdeb-xxxx-4ae9-a721-3aa902a998f0'.]
Stacktrace [at Add-FailoverClusterGenericRole, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Common.psm1: line 2987
at Install-CloudAgent, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Moc.psm1: line 1310
at Install-MocAgents, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Moc.psm1: line 1229
at Initialize-Cloud, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Moc.psm1: line 1135
at Install-MocInternal, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Moc.psm1: line 1078
at Install-Moc, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Moc.psm1: line 207
at Install-AksHciInternal, C:\Program Files\WindowsPowerShell\Modules\AksHci\1.1.25\AksHci.psm1: line 3867
at Install-AksHci, C:\Program Files\WindowsPowerShell\Modules\AksHci\1.1.25\AksHci.psm1: line 778
at <ScriptBlock>, <No file>: line 1]
InnerException[The object already exists]

或者,您可能會看到:

Install-Moc failed.
Exception [Unable to save property changes for 'IPv4 Address xxx.168.18.0'.]
Stacktrace [at Add-FailoverClusterGenericRole, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Common.psm1: line 2971
at Install-CloudAgent, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Moc.psm1: line 1310
at Install-MocAgents, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Moc.psm1: line 1229
at Initialize-Cloud, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Moc.psm1: line 1135
at Install-MocInternal, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Moc.psm1: line 1078
at Install-Moc, C:\Program Files\WindowsPowerShell\Modules\Moc\1.0.20\Moc.psm1: line 207
at Install-AksHciInternal, C:\Program Files\WindowsPowerShell\Modules\AksHci\1.1.25\AksHci.psm1: line 3867
at Install-AksHci, C:\Program Files\WindowsPowerShell\Modules\AksHci\1.1.25\AksHci.psm1: line 778
at <ScriptBlock>, <No file>: line 1]
InnerException[A matching cluster network for the specified IP address could not be found]

若要解決此問題,請手動清除叢集角色。 您可以執行下列 PowerShell Cmdlet,從故障轉移叢集管理員移除資源: Remove-ClusterResource -name <resource name>

錯誤:「API 呼叫傳回的 GetRelease 錯誤:檔案下載錯誤:哈希不符」

Cmdlet Install-AksHci 失敗,並出現「API 呼叫傳回的 GetRelease 錯誤:檔案下載錯誤:哈希不符」。

  1. 開啟 PowerShell 並執行 Uninstall-AksHci
  2. 重試安裝。
  3. 如果問題持續發生,請使用 -concurrentDownloads 參數搭配 Set-AksHciConfig ,並將它設定為低於預設 10 的數位,然後再重試安裝。 減少並行下載次數可能有助於敏感性網路順利完成大型檔案下載。 此參數是預覽功能。

部署 Azure Stack HCI 21H2 上的 AKS 之後,重新啟動顯示錯誤計費狀態的節點

部署之後,當重新啟動 Azure Stack HCI 節點時,AKS 報表會顯示錯誤計費狀態。

若要解決此問題,請遵循指示以手動輪替權杖並重新啟動 KMS 外掛程式

Install-AksHci 錯誤 '' 逾時

執行 Install-AksHci 之後,安裝作業停止並顯示以下錯誤訊息:

\kubectl.exe --kubeconfig=C:\AksHci\0.9.7.3\kubeconfig-clustergroup-management 
get akshciclusters -o json returned a non zero exit code 1 
[Unable to connect to the server: dial tcp 192.168.0.150:6443: 
connectex: A connection attempt failed because the connected party 
did not properly respond after a period of time, or established connection 
failed because connected host has failed to respond.]

有許多原因可能會導致安裝失敗並出現 waiting for API server 錯誤。

下一節概述此錯誤的可能原因和解決方案。

原因 1:不正確的 IP 閘道設定 如果您使用靜態 IP 位址,而且收到下列錯誤訊息,請確認 IP 位址和閘道的設定正確無誤。

Install-AksHci 
C:\AksHci\kvactl.exe create --configfile C:\AksHci\yaml\appliance.yaml  --outfile C:\AksHci\kubeconfig-clustergroup-management returned a non-zero exit code 1 [ ]

若要檢查您的 IP 位址和閘道是否有正確的組態,請執行下列命令:

ipconfig /all

在顯示的組態設定中,確認組態。 您也可以嘗試偵測 IP 閘道和 DNS 伺服器。

ping <DNS server>

如果這些方法皆無法運作,請使用 New-AksHciNetworkSetting 以變更組態。

原因 2:不正確的 DNS 伺服器 如果您使用靜態 IP 位址,請確認 DNS 伺服器已正確設定。 若要檢查主機的 DNS 伺服器位址,請使用下列命令:

Get-NetIPConfiguration.DNSServer | ?{ $_.AddressFamily -ne 23} ).ServerAddresses

請執行下列命令,確認 DNS 伺服器位址與執行 New-AksHciNetworkSetting 時使用的位址相同:

Get-MocConfig

如果 DNS 伺服器的設定不正確,請使用正確的 DNS 伺服器重新安裝 Azure Stack HCI 上的 AKS。 如需詳細資訊,請參閱重新啟動、移除或重新安裝 Azure Stack HCI 上的 Azure Kubernetes Service

刪除組態並以新的組態重新啟動之後,應該就能解決此問題。

錯誤:「處理程序無法存取 'mocstack.cab' 檔案,因為另一個處理程序正在使用該檔案」

Install-AksHci 失敗,因為其他處理序正在存取 mocstack.cab 而發生錯誤。

若要解決此問題,請關閉所有已開啟的 PowerShell 視窗,然後重新開啟新的 PowerShell 視窗。

錯誤:Install-AksHci 失敗,並出現「Install-MOC 失敗,併發生錯誤 - 進程無法存取檔案 \<path> ,因為它正由另一個進程使用」。

無法存取此檔案,因為已有另一個處理程序正在使用檔案。

您可以重新啟動 PowerShell 工作階段來解決這個問題。 關閉 PowerShell 視窗,然後再試一次 Install-AksHci。

錯誤:「遠端主機已強制關閉一個現有連線」

Install-AksHci 失敗,因為 AZURE Stack HCI 設定中的 AKS 中提供的 IP 集區範圍在 CIDR 中已關閉 1,而且可能會導致 CloudAgent 損毀。 例如,如果您的子網路 10.0.0.0/21 含有 10.0.0.0 - 10.0.7.255 位址範圍,然後您使用起始位址 10.0.0.1 或結束位址 10.0.7.254,則會造成 CloudAgent 損毀。

若要解決此問題,請執行 New-AksHciNetworkSetting,並針對您的 VIP 集區和 Kubernetes 節點集區使用任何其他有效的 IP 位址範圍。 請確定您所使用的值不會在位址範圍的開頭或結尾關閉 1。

Install-AksHci 在多節點安裝上失敗,並出現「節點未達到作用中狀態」錯誤

在單一節點設定上執行 Install-AksHci,安裝會正常運作;但在設定容錯移轉叢集時,安裝會失敗並出現錯誤訊息。 然而,在偵測雲端代理程式時,會顯示 CloudAgent 可連線。

為了確定所有節點都可以解析 CloudAgent 的 DNS,請在每個節點上執行下列命令:

Resolve-DnsName <FQDN of cloudagent>

當上述步驟在節點上成功執行時,請確認節點可以連線到 CloudAgent 連接埠,以驗證 Proxy 並未嘗試封鎖此連線且連接埠已開啟。 若要這樣做,請在每個節點上執行下列命令:

Test-NetConnection  <FQDN of cloudagent> -Port <Cloudagent port - default 65000>

Azure Stack HCI 下載套件上的 AKS 失敗,並出現錯誤:「msft.sme.aks 無法載入」

錯誤源自下載的錯誤。

如果您收到此錯誤,您應該使用最新版本的 Microsoft Edge 或 Google Chrome,然後再試一次。

執行 Set-AksHciRegistration 時,會出現「無法檢查已註冊的資源提供者」錯誤

在 Azure Stack HCI 上的 AKS 安裝時執行 Set-AksHciRegistration 之後,會出現此錯誤。 此錯誤表示未為目前登入的租用戶註冊 Kubernetes 資源提供者。

若要解決此問題,請執行下列 Azure CLI 或 PowerShell 步驟:

az provider register --namespace Microsoft.Kubernetes
az provider register --namespace Microsoft.KubernetesConfiguration
Register-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Register-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration

註冊大約需要 10 分鐘才能完成。 若要監視註冊程序,請使用下列命令。

az provider show -n Microsoft.Kubernetes -o table
az provider show -n Microsoft.KubernetesConfiguration -o table
Get-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Get-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration

Install-AksHci 在逾時之前,在「等待 azure-arc-onboarding 完成」階段中停止回應

注意

此問題已在 2022 年 5 月版本和更新版本中修正。

在下列情況下,Waiting for azure-arc-onboarding to complete 中的 Install-AksHci 會在逾時之前停止回應:

  • 「Azure Stack HCI 上的 AKS」註冊 (Set-AksHciRegistration) 中使用服務主體。
  • 已安裝 Az.Accounts PowerShell 模組版本 (2.7.x)。

Az.Accounts 2.7.x 版本會移除 PSAzureRmAccount 中的 ServicePrincipalSecretCertificatePassword,這會用來讓 Azure Stack HCI 上的 AKS 將 Azure Arc 上線。

若要重現問題:

  1. 安裝 Az.Accounts PowerShell 模組版本 (>= 2.7.0)。
  2. Set-AksHciRegistration (使用服務主體)。
  3. Install-AksHci.

預期的行為:

  1. Azure Stack HCI 上的 AKS 安裝會在 Waiting for azure-arc-onboarding to complete 上停止回應。
  2. Azure-arc-onboarding Pod 會進入損毀迴圈。
  3. Azure-arc-onboarding Pod 錯誤,並包含下列錯誤:
    Starting onboarding process ERROR: variable CLIENT_SECRET is required

若要解決此問題:

執行下列 Cmdlet,將 2.7.x 版的 Az.Accounts 模組解除安裝:

Uninstall-Module -Name Az.Accounts -RequiredVersion 2.7.0 -Force

安裝期間會出現此錯誤:「無法建立設備 VM:無法建立虛擬機:rpc 錯誤 = 未知的 desc = 例外狀況發生。 (一般失敗) ]'

當 Azure Stack HCI 未遵循原則時,就會發生此錯誤。 叢集的連線狀態可能會顯示已連線,但事件記錄檔會顯示警告訊息 Azure Stack HCI's subscription is expired, run Sync-AzureStackHCI to renew the subscription

若要解決此錯誤,請使用您電腦上提供的 Get-AzureStackHCI PowerShell Cmdlet,確認叢集已在 Azure 中註冊。 Windows Admin Center 儀表板也會顯示叢集的 Azure 註冊狀態資訊。

如果已註冊叢集,則您應檢視 Get-AzureStackHCI 輸出中的 LastConnected 欄位。 如果欄位顯示超過 30 天,您應該嘗試使用 Sync-AzureStackHCI Cmdlet 來解決這種情況。

您也可以使用下列 Cmdlet 來驗證叢集的每個節點都具有必要授權:

Get-ClusterNode | % { Get-AzureStackHCISubscriptionStatus -ComputerName $_ }
Computer Name Subscription Name           Status   Valid To
------------- -----------------           ------   --------
MS-HCIv2-01   Azure Stack HCI             Active   12/23/2021 12:00:14 AM
MS-HCIv2-01   Windows Server Subscription Inactive

MS-HCIv2-02   Azure Stack HCI             Active   12/23/2021 12:00:14 AM
MS-HCIv2-02   Windows Server Subscription Inactive

MS-HCIv2-03   Azure Stack HCI             Active   12/23/2021 12:00:14 AM
MS-HCIv2-03   Windows Server Subscription Inactive

如果在執行 Sync-AzureStackHCI Cmdlet 之後問題仍未解決,您應該與 Microsoft 支援服務聯繫。

安裝失敗之後,無法執行 Install-AksHci

此問題的發生原因是安裝失敗,進而導致資源可能流失,您必須清除資源,然後再次安裝。

如果使用 Install-AksHci 時安裝失敗,您應執行 Uninstall-AksHci,然後再次執行 Install-AksHci

錯誤:「無法協調虛擬網路」或「錯誤:Install-Moc 失敗,發生錯誤 - 例外狀況 [[Moc] 此計算機似乎未設定部署]」

您可以在執行 Install-AksHci 時觸發這些錯誤,而不先執行 Set-AksHciConfig

若要解決此錯誤,請執行 uninstall-akshci 並關閉所有 PowerShell 視窗。 開啟新的 PowerShell 工作階段,然後遵循使用 PowerShell 安裝 AKS-HCI,以重新啟動 AKS HCI 安裝程序。

Set-AksHciConfig 失敗,並出現錯誤「API 呼叫傳回的 GetCatalog 錯誤:...proxyconnect tcp:tls:第一筆記錄看起來不像 TLS 交握」

Set-AksHciConfig PowerShell Cmdlet 失敗並出現錯誤:

GetCatalog error returned by API call: ... proxyconnect tcp: tls: first record does not look like a TLS Handshake

如果您使用 AKS 搭配 Proxy 伺服器,則設定必要的 HTTPS Proxy URL 值時,可能會使用錯誤的 URL。 使用 Proxy 伺服器設定 AKS 時,需要 HTTP Proxy URL 和 HTTPS Proxy URL 值,但通常需要這兩個值才能共用相同的 HTTP 前置 URL。

如果您的環境中可能是這種情況,請嘗試下列風險降低步驟:

  1. 關閉 PowerShell 視窗,然後開啟新的視窗。
  2. New-AksHciNetworkSetting再次執行和 New-AksHciProxySetting Cmdlet。 執行 New-AksHciProxySetting時,請使用您為 -http設定的相同 HTTP 前置 URL 值來設定 -https 參數。
  3. 執行 Set-AksHciConfig 並繼續進行。

當您使用設定錯誤的網路在 Azure Stack HCI 上部署 AKS 時,部署會在各種時間點逾時

當您在 Azure Stack HCI 上部署 AKS 時,部署可能會根據發生錯誤設定的位置,在程式的不同時間點逾時。 您應檢閱錯誤訊息,以判斷原因和發生的階段。

例如在下列錯誤中,發生設定錯誤的階段是在 Get-DownloadSdkRelease -Name "mocstack-stable"

$vnet = New-AksHciNetworkSettingSet-AksHciConfig -vnet $vnetInstall-AksHciVERBOSE: 
Initializing environmentVERBOSE: [AksHci] Importing ConfigurationVERBOSE: 
[AksHci] Importing Configuration Completedpowershell : 
GetRelease - error returned by API call: 
Post "https://msk8s.api.cdp.microsoft.com/api/v1.1/contents/default/namespaces/default/names/mocstack-stable/versions/0.9.7.0/files?action=generateDownloadInfo&ForegroundPriority=True": 
dial tcp 52.184.220.11:443: connectex: 
A connection attempt failed because the connected party did not properly
respond after a period of time, or established connection failed because
connected host has failed to respond.At line:1 char:1+ powershell -command
{ Get-DownloadSdkRelease -Name "mocstack-stable"}

這表示實體 Azure Stack HCI 節點可以解析下載的 URL 名稱,例如 msk8s.api.cdp.microsoft.com,但節點無法連線至目標伺服器。

若要解決此問題,您必須判斷在連線流程中發生連線中斷的位置。 下列是嘗試從實體叢集節點解決問題的一些步驟:

  1. Ping 目的地 DNS 名稱:ping msk8s.api.cdp.microsoft.com
  2. 如果您收到回應而未逾時,則基本網路路徑會正常運作。
  3. 如果連線逾時,則資料路徑可能會出現中斷情形。 如需詳細資訊,請參閱檢查 Proxy 設定。 或者,傳回路徑中可能會出現中斷情形,您應檢查防火牆規則。

Set-AksHciConfig 因 WinRM 錯誤而失敗,但會顯示 WinRM 已正確設定

執行 Set-AksHciConfig 時,您可能會遇到下列錯誤:

WinRM service is already running on this machine.
WinRM is already set up for remote management on this computer.
Powershell remoting to TK5-3WP08R0733 was not successful.
At C:\Program Files\WindowsPowerShell\Modules\Moc\0.2.23\Moc.psm1:2957 char:17
+ ...             throw "Powershell remoting to "+$env:computername+" was n ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (Powershell remo...not successful.:String) [], RuntimeException
    + FullyQualifiedErrorId : Powershell remoting to TK5-3WP08R0733 was not successful.

此錯誤的發生原因通常是使用者的安全性權杖變更 (因為群組成員資格變更)、密碼變更或密碼已過期。 在大部分情況下,您可以登出電腦後重新登入,就可以補救此問題。 如果仍然失敗,您可以在 GitHub AKS HCI 問題提出問題

Moc 代理程式記錄輪替失敗

Moc 代理程式預期只會保留最近的 100 個代理程式記錄。 其應該會刪除較舊的記錄。 但是記錄輪替未發生,且記錄持續累積並耗用磁碟空間。

若要重現問題:Install AksHci 並讓叢集啟動及執行,直到代理程式記錄的數量超過 100。 在建立第 n 個記錄時,如果代理程式存在,代理程式應該會刪除第 n-100 個的記錄。

若要解決問題:

  1. 修改雲端代理程式和節點代理程式的 logconf 檔案。 雲端代理程式 logconfig 位於:
    (Get-MocConfig).cloudConfigLocation+"\log\logconf".
    節點代理程式 logconfig 位於:
    (Get-MocConfig).cloudConfigLocation+"\log\logconf".

  2. 將 [限制] 的值變更為 100,並將 [位置] 變更為 [100],然後儲存設定檔。

  3. 重新啟動雲端代理程式和節點代理程式以註冊這些變更。

這些步驟只會在代理程式重新啟動並產生 100 個新記錄之後,才開始進行記錄輪替。 如果在重新啟動時已經有 n 個代理程式記錄,則只有在產生 n+100 個記錄之後,才會開始進行記錄輪替。

使用具有空格的路徑名稱時,雲端代理程式可能無法順利啟動

當使用 Set-AksHciConfig 指定 -imageDir-workingDir-cloudConfigLocation-nodeConfigLocation 參數 (具包含空格字元的路徑名稱,例如 D:\Cloud Share\AKS HCI),雲端代理程式叢集服務將無法啟動,並顯示下列 (或相似) 錯誤訊息:

Failed to start the cloud agent generic cluster service in failover cluster. The cluster resource group os in the 'failed' state. Resources in 'failed' or 'pending' states: 'MOC Cloud Agent Service'

若要解決此問題,請使用不包含空格的路徑,例如 C:\CloudShare\AKS-HCI

錯誤:'Install-Moc 失敗,發生錯誤 - 例外狀況 [CloudAgent 無法連線。 MOC CloudAgent 可能因為下列原因而無法連線]'

基礎結構設定錯誤時,可能會發生此錯誤。

若要解決此錯誤,請使用下列步驟:

  1. 檢查主機 DNS 伺服器設定和閘道設定:

    1. 確認 DNS 伺服器已正確設定。 若要檢查主機的 DNS 伺服器位址,請執行下列命令:
      ((Get-NetIPConfiguration).DNSServer | ?{ $_.AddressFamily -ne 23}).ServerAddresses
      
    2. 若要檢查您的 IP 位址和閘道設定是否正確,請執行命令 ipconfig/all
    3. 嘗試偵測 IP 閘道和 DNS 伺服器。
  2. 檢查 CloudAgent 確定是否正在執行:

    1. 偵測 CloudAgent 服務以確定可連線。
    2. 請在每個節點上執行下列命令,確定所有節點都可以解析 CloudAgent 的 DNS:
      Resolve-DnsName <FQDN of cloudagent>
      
    3. 當上一個步驟在節點上成功執行時,請確認節點可以連線到 CloudAgent 連接埠,以驗證 Proxy 並未嘗試封鎖此連線且連接埠已開啟。 若要這樣做,請在每個節點上執行下列命令:
      Test-NetConnection <FQDN of cloudagent> -Port <Cloudagent port - default 65000>
      
    4. 若要檢查叢集服務是否正在執行容錯移轉叢集,您也可以執行下列命令:
      Get-ClusterGroup -Name (Get-AksHciConfig).Moc['clusterRoleName']
      

錯誤:「Install-Moc 失敗。 例外狀況 [這通常表示在向域控制器和/或 DNS 伺服器註冊資源名稱為計算機物件時發生問題。 請檢查叢集計算機物件是否具有在域控制器中建立計算機對象的許可權。 請檢查域控制器和 DNS 記錄中是否有相關的錯誤訊息。」

這通常表示叢集名稱物件 (CNO) 代表您 Active Directory 網域服務 (AD DS) 中基礎故障轉移叢集的許可權,無法在組織單位 (OU) 或叢集所在的容器中建立虛擬計算機物件 (VCO) 。

如果您不是網域系統管理員,您可以要求系統管理員 將 CNO 許可權授與 OU ,或 預先設置雲端代理程式一般叢集服務的 VCO

如果您是網域系統管理員,您的 OU 或容器可能仍然沒有必要的許可權。 例如,在 KB5008383 中引進的強制模式,可能會在 Active Directory 中啟用。 嘗試重新安裝之前,請先嘗試下列內容。

  1. 流覽至 Active Directory 使用者和電腦
  2. 以滑鼠右鍵按下叢集所在的 OU 或容器。
  3. 選取 [委派控件...] 以開啟 [ 委派控件精靈]。
  4. [下一步> ] 按兩下[ 新增...] 以開啟 [ 選取使用者、計算機或群組 ] 視窗。
  5. 選取您想要委派控件 > 的群組或使用者選擇按兩下 [確定]。
  6. 選取 [建立自定義工作] 以委派> [ 下一步] 以移至 [Active Directory 物件類型 ] 頁面。
  7. 選取 [選取計算機物件>] 資料夾中>的 [只選取下列物件],選取 [在此資料夾中建立選取的物件] 和 [刪除此資料夾中>選取的物件],按 [下一步] 移至 [許可權] 頁面。
  8. 從許可權>清單中選取 [建立所有子物件] 和 [刪除所有子物件],按兩下 [下一步>完成]

如果重新安裝失敗,請使用下列步驟 7 和 8 的變更重試上述專案:

  • 步驟 7:選取 此資料夾、此資料夾中的現有物件,以及在此資料夾中> 建立新物件,按 [ 下一步]。
  • 步驟 8:從許可權>清單中選取 [讀取]、[寫入]、[建立所有子物件] 和 [刪除所有子物件],按兩下 [下一步>] 按兩下 [完成]。

錯誤:Install-AksHci 失敗,且 'Install-Moc 失敗。 記錄可供使用 C:\Users\xxx\AppData\Local\Temp\v0eoltcc.a10'

執行 Install-AksHci 時,您可能會收到此錯誤。

您可以執行 $error = Install-AksHci ,然後 $error[0].Exception.InnerException取得詳細資訊。

PowerShell 部署在建立新的工作負載叢集前,不會檢查是否有可用的記憶體

Aks-Hci PowerShell 命令在建立 Kubernetes 節點前,不會驗證主機伺服器上可用的記憶體。 此問題可能會導致記憶體耗盡,以及未啟動的虛擬機器。 此失敗目前未妥善處理,部署將會停止回應,且不會有明確的錯誤訊息。

如果您有停止回應的部署,請開啟事件檢視器,並檢查 Hyper-V 相關的錯誤訊息,是否指出沒有足夠記憶體可啟動 VM。

執行 Set-AksHciRegistration 時,會出現「無法取得令牌」錯誤

當您的 Azure 帳戶有多個租用戶時,就會發生此錯誤。

使用 $tenantId = (Get-AzContext).Tenant.Id 設定正確的租用戶。 然後,在執行 AksHciRegistration 時,將此租用戶納入為參數。

錯誤:「正在等候 Pod 'Cloud Operator' 就緒」

嘗試在 Azure VM 上部署 AKS 叢集時,安裝停滯在 Waiting for pod 'Cloud Operator' to be ready...,然後在兩小時後失敗並逾時。 檢查閘道和 DNS 伺服器是否均顯示正確運作以嘗試疑難排解。 檢查 IP 或 MAC 位址衝突是否找不到。 記錄未顯示VIP集區。 在使用 sudo docker pull ecpacr.azurecr.io/kube-vip:0.3.4 提取容器映像時具有限制,會傳回傳輸層安全性 (TLS) 逾時,而非未授權

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

  1. 開始部署您的叢集。
  2. 部署叢集時,請透過 SSH 連線到您的管理叢集 VM,如下所示:
ssh -i (Get-MocConfig)['sshPrivateKey'] clouduser@<IP Address>
  1. 變更最大傳輸單元 (MTU) 設定。 別想要進行變更;如果您太晚進行變更,部署就會失敗。 修改 MTU 設定有助於解除封鎖容器映像提取。
sudo ifconfig eth0 mtu 1300
  1. 若要檢視容器的狀態,請執行下列命令:
sudo docker ps -a

執行這些步驟之後,應該解除封鎖容器映像提取。

錯誤:'Install-Moc 失敗,發生錯誤 - 例外狀況 [無法建立故障轉移叢集泛型角色。]'

此錯誤表示雲端服務的 IP 位址不是叢集網路的一部分,而且不符合已啟用 client and cluster communication 角色的任何叢集網路。

若要解決此問題,請執行 Get-ClusterNetwork,其中 Role 等於 ClusterAndClient。 然後,在其中一個叢集節點上,選取名稱、位址和位址遮罩,以確認在 New-AksHciNetworkSetting-cloudServiceIP 參數中提供的 IP 位址符合其中一個顯示的網路。

後續步驟

如果您在使用 AKS Arc 時持續遇到問題,您可以透過 GitHub 提出 Bug。