편집

다음을 통해 공유


AKS Arc 설치 중 문제 및 오류 해결

적용 대상: AZURE Stack HCI의 AKS, Windows Server의 AKS 이 문서에서는 AKS Arc를 설치할 때 발생할 수 있는 알려진 문제 및 오류에 대해 설명합니다. AKS Arc를 업그레이드할 때와 Windows Admin Center를 사용할 때 알려진 문제를 검토할 수도 있습니다.

오류 "addon arc-onboarding을 기다리지 못했습니다."

이 오류 메시지는 Install-AksHci를 실행한 후에 나타납니다.

참고 항목

이 오류는 설정에서 Private Link를 사용하도록 설정하여 발생할 수 있습니다. 현재 이 시나리오에 대한 해결 방법은 없습니다. HCI의 AKS는 Private Link에서 작동하지 않습니다.

Private Link를 사용하지 않는 경우 이 문제를 해결하려면 다음 단계를 사용합니다.

  1. PowerShell을 열고 Uninstall-AksHci를 실행합니다.
  2. Azure Portal을 열고 실행할 Install-AksHci때 사용한 리소스 그룹으로 이동합니다.
  3. 연결이 끊긴 상태로 표시되고 임의로 생성된 GUID로 표시된 이름을 포함하는 연결된 클러스터 리소스를 확인합니다.
  4. 이러한 클러스터 리소스를 삭제합니다.
  5. 다시 실행 Install-AksHci 하기 전에 PowerShell 세션을 닫고 새 세션을 엽니다.

오류: 'Install-AksHci 실패, 서비스가 오류를 반환했습니다. STATUS=403 Code="RequestDisallowedByPolicy"' 오류( AKS-HCI 설치 시)

이 오류는 설치 프로세스가 Azure Arc 온보딩 프로세스 중에 제공된 Azure 구독 또는 리소스 그룹에 설정된 Azure 정책을 위반하려고 시도하여 발생할 수 있습니다. 이 오류는 구독 또는 리소스 그룹 수준에서 Azure 정책을 정의한 다음 Azure Policy를 위반하는 Azure Stack HCI에 AKS를 설치하려고 시도하는 사용자에게 발생할 수 있습니다.

이 문제를 해결하려면 오류 메시지를 읽어 Azure 관리자가 설정한 Azure Policy가 위반되었는지 파악한 다음 Azure 정책에 예외를 적용하여 Azure 정책을 수정합니다. 정책 예외에 대한 자세한 내용은 Azure Policy 예외 구조를 참조 하세요.

오류: Install-AksHci가 오류로 실패했습니다. [개체가 이미 있음] 클러스터된 역할 'xx-xx-xxxx-xxx'에 대한 리소스 'IPv4 Address xxx.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>을 실행하여 장애 조치(failover) 클러스터 관리자에서 리소스를 제거할 수 있습니다.

오류: "API 호출에서 반환된 GetRelease 오류: 파일 다운로드 오류: 해시 불일치"

Install-AksHci"API 호출에서 반환된 GetRelease 오류: 파일 다운로드 오류: 해시 불일치"로 인해 cmdlet이 실패합니다.

  1. PowerShell을 열고 실행 Uninstall-AksHci합니다.
  2. 설치를 다시 시도합니다.
  3. 문제가 지속되면 Set-AksHciConfig에서 매개 변수를 사용하고 -concurrentDownloads 설치를 다시 시도하기 전에 기본 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하려고 시도할 수도 있습니다.

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 다시 시작, 제거 또는 다시 설치를 참조 하세요 .

이 문제는 구성을 삭제하고 새 구성으로 VM을 다시 시작한 후 해결되었습니다.

오류: "프로세스는 다른 프로세스에서 사용 중이므로 'mocstack.cab' 파일에 액세스할 수 없습니다."

Install-AksHci다른 프로세스가 액세스 중이므로 이 오류와 함께 실패했습니다.mocstack.cab

이 문제를 해결하려면 열려 있는 모든 PowerShell 창을 닫은 다음 새 PowerShell 창을 다시 엽니다.

오류: 'Install-MOC가 오류로 인해 실패했습니다. 다른 프로세스에서 사용 중이므로 프로세스에서 파일에<path> 액세스할 수 없습니다.'로 인해 Install-AksHci가 실패합니다.

다른 프로세스에서 사용 중이므로 파일에 액세스할 수 없습니다.

PowerShell 세션을 다시 시작하여 이 문제를 해결할 수 있습니다. PowerShell 창을 닫고 Install-AksHci를 다시 시도합니다.

오류: "기존 연결이 원격 호스트에 의해 강제로 닫혔습니다."

Install-AksHci AZURE Stack HCI 구성의 AKS에 제공된 IP 풀 범위가 CIDR에서 1씩 꺼져 CloudAgent가 충돌할 수 있으므로 이 오류가 발생했습니다. 예를 들어, 주소 범위가 10.0.0.0 - 10.0.7.255인 서브넷 10.0.0.0/21이 있고 시작 주소 10.0.0.1 또는 끝 주소 10.0.7.254를 사용하면 CloudAgent가 충돌합니다.

이 문제를 해결하려면 New-AksHciNetworkSetting을 실행하고 VIP 풀 및 Kubernetes 노드 풀에 대해 유효한 다른 IP 주소 범위를 사용합니다. 사용하는 값이 주소 범위의 시작 또는 끝에서 1로 해제되지 않았는지 확인합니다.

'노드가 활성 상태에 도달하지 못했습니다.' 오류와 함께 다중 노드 설치에서 Install-AksHci가 실패했습니다.

단일 노드 설정에서 Install-AksHci를 실행할 때 설치가 작동했지만 장애 조치(failover) 클러스터를 설정할 때 오류 메시지와 함께 설치가 실패합니다. 그러나 클라우드 에이전트를 ping하면 CloudAgent에 연결할 수 있는 것으로 나타났습니다.

모든 노드가 CloudAgent의 DNS를 확인할 수 있도록 각 노드에서 다음 명령을 실행합니다.

Resolve-DnsName <FQDN of cloudagent>

위의 단계가 노드에서 성공하면 노드가 CloudAgent 포트에 도달하여 프록시가 이 연결을 차단하려고 하지 않고 포트가 열려 있는지 확인합니다. 이렇게 하려면 각 노드에서 다음 명령을 실행합니다.

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

설치-AksHci는 타이밍이 초과되기 전에 'azure-arc-onboarding이 완료되기를 기다리는 중' 단계에서 중단됩니다.

참고 항목

이 문제는 2022년 5월 릴리스 이상에서 해결되었습니다.

Install-AksHci는 타이밍이 초과되기 전에 중단됩니다 Waiting for azure-arc-onboarding to complete .

  • 서비스 주체는 Azure Stack HCI 등록(Set-AksHciRegistration)의 AKS에서 사용됩니다.
  • Az.Accounts PowerShell 모듈 버전(2.7.x)이 설치되었습니다.

Az.Accounts 2.7.x 버전은 Azure Arc 온보딩을 위해 Azure Stack HCI의 AKS에서 사용되는 및 내부를 제거 ServicePrincipalSecret CertificatePassword PSAzureRmAccount합니다.

재현하려면:

  1. PowerShell 모듈 버전(>= 2.7.0)을 설치 Az.Accounts 합니다.
  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

이 문제를 해결하려면:

버전이 2.7.x인 Az.Accounts 모듈을 제거합니다. 다음 cmdlet을 실행합니다.

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메시지가 표시됩니다.

이 오류를 해결하려면 컴퓨터에서 사용할 수 있는 PowerShell cmdlet을 Get-AzureStackHCI 사용하여 클러스터가 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

cmdlet을 실행 Sync-AzureStackHCI 한 후 문제가 해결되지 않으면 Microsoft 지원에 문의해야 합니다.

설치에 실패한 후 Install-AksHci 실행이 작동하지 않음

이 문제는 설치에 실패하면 다시 설치하기 전에 정리해야 하는 리소스가 유출될 수 있기 때문에 발생합니다.

Install-AksHci를 사용하여 설치에 실패하는 경우 다시 실행하기 전에 Uninstall-AksHci를 실행 Install-AksHci 해야 합니다.

오류: "가상 네트워크를 조정할 수 없습니다." 또는 "오류: Install-Moc이 오류로 실패했습니다. 예외 [[Moc] 이 컴퓨터가 배포를 위해 구성되지 않은 것 같습니다.""

Set-AksHciConfig를 먼저 실행하지 않고 실행할 Install-AksHci 때 이러한 오류를 트리거할 수 있습니다.

오류를 해결하려면 모든 PowerShell 창을 실행하고 uninstall-akshci 닫습니다. PowerShell을 사용하여 AKS-HCI를 설치한 후 새 PowerShell 세션을 열고 AKS-HCI 설치 프로세스를 다시 시작합니다.

Set-AksHciConfig가 "API 호출에서 반환된 GetCatalog 오류: ... proxyconnect tcp: tls: 첫 번째 레코드가 TLS 핸드셰이크처럼 보이지 않습니다."

PowerShell cmdlet은 Set-AksHciConfig 다음과 같은 오류와 함께 실패합니다.

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

프록시 서버에서 AKS를 사용하는 경우 필요한 HTTPS 프록시 URL 값을 설정할 때 잘못된 URL을 사용했을 수 있습니다. 프록시 서버를 사용하여 AKS를 구성할 때는 HTTP 프록시 URL과 HTTPS 프록시 URL 값이 모두 필요하지만 동일한 HTTP 접두사 URL을 공유하려면 두 값이 모두 필요한 것이 일반적입니다.

사용자 환경에서 이러한 경우가 발생할 수 있는 경우 다음 완화 단계를 시도합니다.

  1. PowerShell 창을 닫고 새 창을 엽니다.
  2. New-AksHciNetworkSettingNew-AksHciProxySetting cmdlet을 다시 실행합니다. 실행할 New-AksHciProxySetting때 설정한 것과 동일한 HTTP 접두사 URL 값을 사용하여 매개 변수를 -http설정합니다-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. 대상 DNS 이름 Ping: ping msk8s.api.cdp.microsoft.com.
  2. 응답을 다시 받고 시간 초과가 없는 경우 기본 네트워크 경로가 작동합니다.
  3. 연결 시간이 초과되면 데이터 경로에 중단이 있을 수 있습니다. 자세한 내용은 프록시 설정 확인을 참조 하세요. 또는 반환 경로에 중단이 있을 수 있으므로 방화벽 규칙을 확인해야 합니다.

WinRM 오류로 Set-AksHciConfig가 실패하지만 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 파일을 수정합니다. 클라우드 에이전트 로그 구성 은 다음 위치에 있습니다.
    (Get-MocConfig).cloudConfigLocation+"\log\logconf".
    노드 에이전트 logconfig 는 다음 위치에 있습니다.
    (Get-MocConfig).cloudConfigLocation+"\log\logconf".

  2. 제한 값을 100으로 변경하고 슬롯을 100으로 변경하고 구성 파일을 저장합니다.

  3. 클라우드 에이전트 및 노드 에이전트를 다시 시작하여 이러한 변경 내용을 등록합니다.

이러한 단계는 에이전트를 다시 시작할 때 100개의 새 로그가 생성된 후에만 로그 회전을 시작합니다. 다시 시작할 때 에이전트 로그가 아직 없는 경우 n+100 로그가 생성된 후에만 로그 순환이 시작됩니다.

클라우드 에이전트가 공백이 있는 경로 이름을 사용할 때 성공적으로 시작하지 못할 수 있습니다.

Set-AksHciConfig를 사용하여 공백 문자D:\Cloud Share\AKS HCI가 포함된 경로 이름을 가진 매개 변수 또는 -nodeConfigLocation 매개 변수를 지정-imageDir-workingDir-cloudConfigLocation하는 경우 클라우드 에이전트 클러스터 서비스는 다음(또는 이와 유사한) 오류 메시지로 시작하지 못합니다.

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 서버에 대해 ping을 시도합니다.
  2. CloudAgent 서비스가 실행 중인지 확인합니다.

    1. CloudAgent 서비스를 Ping하여 연결할 수 있는지 확인합니다.
    2. 모든 노드가 각 노드에서 다음 명령을 실행하여 CloudAgent의 DNS를 확인할 수 있는지 확인합니다.
      Resolve-DnsName <FQDN of cloudagent>
      
    3. 노드에서 이전 단계가 성공하면 노드가 CloudAgent 포트에 도달하여 프록시가 이 연결을 차단하지 않고 포트가 열려 있는지 확인할 수 있는지 확인합니다. 이렇게 하려면 각 노드에서 다음 명령을 실행합니다.
      Test-NetConnection <FQDN of cloudagent> -Port <Cloudagent port - default 65000>
      
    4. 클러스터 서비스가 장애 조치(failover) 클러스터에 대해 실행되고 있는지 확인하려면 다음 명령을 실행할 수도 있습니다.
      Get-ClusterGroup -Name (Get-AksHciConfig).Moc['clusterRoleName']
      

오류: 'Install-Moc이 실패했습니다. 예외 [일반적으로 도메인 컨트롤러 및/또는 DNS 서버에 컴퓨터 개체로 리소스 이름을 등록 하는 동안 문제가 발생 했음을 나타냅니다. 클러스터 컴퓨터 개체에 도메인 컨트롤러에서 컴퓨터 개체를 만들 수 있는 권한이 있는지 확인하세요. 도메인 컨트롤러 및 DNS 로그에서 관련 오류 메시지를 확인하세요.'

이는 일반적으로 AD DS(Active Directory 도메인 Services)의 기본 장애 조치(failover) 클러스터를 나타내는 CNO(클러스터 이름 개체)에 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-Moc 실패'로 Install-AksHci가 실패합니다. 로그는 C:\Users\xxx\AppData\Local\Temp\v0eoltcc.a10'에서 사용할 수 있습니다.

Install-AksHci를 실행할 때 이 오류가 발생할 수 있습니다.

다음을 실행 $error = Install-AksHci $error[0].Exception.InnerException하여 자세한 정보를 가져올 수 있습니다.

PowerShell 배포는 새 워크로드 클러스터를 만들기 전에 사용 가능한 메모리를 확인하지 않습니다.

Aks-Hci PowerShell 명령은 Kubernetes 노드를 만들기 전에 호스트 서버에서 사용 가능한 메모리의 유효성을 검사하지 않습니다. 이 문제로 인해 메모리 소모 및 시작되지 않는 가상 머신이 발생할 수 있습니다. 이 오류는 현재 정상적으로 처리되지 않으며 배포는 명확한 오류 메시지 없이 응답을 중지합니다.

응답을 중지하는 배포가 있는 경우 이벤트 뷰어 열고 VM을 시작할 메모리가 충분하지 않음을 나타내는 Hyper-V 관련 오류 메시지를 확인합니다.

Set-AksHciRegistration을 실행할 때 '토큰을 획득할 수 없음' 오류가 나타납니다.

이 오류는 Azure 계정에 테넌트가 여러 개 있는 경우에 발생할 수 있습니다.

올바른 테넌트 설정에 사용합니다 $tenantId = (Get-AzContext).Tenant.Id . 그런 다음 Set-AksHciRegistration을 실행하는 동안 이 테넌트를 매개 변수로 포함합니다.

오류: 'Pod '클라우드 운영자'가 준비되기를 기다리는 중'

Azure VM에 AKS 클러스터를 배포하려고 할 때 설치가 중단 Waiting for pod 'Cloud Operator' to be ready...된 후 2시간 후에 실패하고 시간이 초과되었습니다. 게이트웨이 및 DNS 서버를 확인하여 문제를 해결하려는 시도가 제대로 작동하는 것으로 나타났습니다. IP 또는 MAC 주소 충돌을 확인해도 아무 것도 찾을 수 없습니다. 로그에 VIP 풀이 표시되지 않았습니다. 권한이 없는 대신 TLS(전송 계층 보안) 시간 제한을 반환하는 컨테이너 이미지를 sudo docker pull ecpacr.azurecr.io/kube-vip:0.3.4 끌어당기는 데 제한이 있었습니다.

이 문제를 해결하려면 다음 단계를 수행합니다.

  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이 오류로 인해 실패했습니다. 예외 [장애 조치(failover) 클러스터 일반 역할을 만들 수 없습니다.]'

이 오류는 클라우드 서비스의 IP 주소가 클러스터 네트워크의 일부가 아니며 역할을 사용하도록 설정된 클러스터 네트워크와 일치하지 않음을 client and cluster communication 나타냅니다.

이 문제를 해결하려면 Get-ClusterNetwork(같음)Role를 실행합니다ClusterAndClient. 그런 다음 클러스터 노드 중 하나에서 이름, 주소 및 주소 마스크를 선택하여 New-AksHciNetworkSetting매개 변수에 -cloudServiceIP 제공된 IP 주소가 표시된 네트워크 중 하나와 일치하는지 확인합니다.

Enable-AksHciArcConnection cmdlet은 GetServicePrincipals에 사용자 지정 위치를 사용하도록 설정할 수 있는 권한이 없음을 나타내는 경고를 생성합니다.

Enable-AksHciArcConnection 는 AKS 클러스터를 Azure에 연결할 수 있지만 고객이 인증에 서비스 주체를 사용하는 경우 다음 경고를 표시합니다.

WARNING: Error occurred while executing GetServicePrincipals
Code: Authorization_RequestDenied
Message: Insufficient privileges to complete the operation.
RequestId: <removed>
DateTimeStamp: <removed>
HttpStatusCode: Forbidden
HttpStatusDescription: Forbidden
HttpResponseStatus: Completed
WARNING: Custom locations has not been enabled on the AKS-HCI cluster. To enable custom locations manually, visit aka.ms/enable-custom-location

Arc 온보딩의 현재 동작은 기본적으로 사용자 지정 위치를 사용하도록 설정하는 것입니다. 사용자 지정 위치를 사용하도록 설정하기 위해 GetServicePrincipals 작업은 로그인한 Azure 사용자의 컨텍스트에서 수행됩니다. 사용자(또는 SPN)에 이 작업을 수행할 수 있는 충분한 권한이 없는 경우 명령은 이러한 권한이 존재하지 않는다는 경고를 실행하므로 사용자 지정 위치 기능을 사용하도록 설정하지 않습니다.

사용자 지정 위치를 사용하도록 설정하지 않으려면 Arc에 대한 클러스터 온보딩에 영향을 주지 않으므로 이 경고를 무시해도 됩니다. 반면 사용자 지정 위치를 사용하도록 설정해야 하는 경우 사용자(또는 SPN)에게 필요한 권한을 부여해야 합니다.

다음 단계

AKS Arc를 사용할 때 문제가 계속 발생하는 경우 GitHub를 통해 버그를 제출할 수 있습니다.