Azure에서 새 Linux 가상 머신을 만드는 경우 리소스 관리자 배포 문제 해결

새 Azure VM(가상 컴퓨터)을 만들려고 할 때 발생하는 일반적인 오류는 프로비전 오류 또는 할당 오류입니다.

  • 프로비저닝 오류는 OS 이미지가 잘못된 준비 단계로 인해 로드되지 않거나 포털에서 이미지 캡처 중에 잘못된 설정을 선택했기 때문에 발생합니다.
  • 클러스터 또는 지역에 사용 가능한 리소스가 없는 경우 또는 요청된 VM 크기를 지원할 수 없는 경우 할당 실패가 발생합니다.

이 문서에서 Azure 문제가 해결되지 않은 경우 MSDN 및 스택 오버플로의 Azure 포럼을 방문하세요. You can post your issue in these forums, or post @AzureSupport to on Twitter. Azure 지원 요청을 제출할 수 있습니다. 지원 요청을 제출하려면 Azure 지원 페이지에서 지원 받기 를 선택합니다.

프로비저닝 문제 해결

일반적인 프로비저닝 실패 시나리오는 사용자 지정 이미지를 만든 다음 해당 이미지에서 VM을 배포한 후 VM 상태가 으로 표시되는 40분까지 발생합니다. 이 오류 메시지가 creating 표시됩니다.

Provisioning state Provisioning failed. 

OS Provisioning for VM 'sentilo' did not finish in the allotted time. 

The VM may still finish provisioning successfully. Please check provisioning state later. 

Also, make sure the image has been properly prepared (generalized). * Instructions for Windows: https://azure.microsoft.com/documentation/articles/virtual-machines-windows-upload-image/ * Instructions for Linux: https://azure.microsoft.com/documentation/articles/virtual-machines-linux-capture-image/.

또는

Deployment failed. Correlation ID: f9dcb33a-4e6e-45c5-9c9d-b29dd73da2e0. {
  "status": "Failed",
  "error": {
    "code": "ResourceDeploymentFailure",
    "message": "The resource operation completed with terminal provisioning state 'Failed'.",
    "details": [
      {
        "code": "OSProvisioningInternalError",
        "message": "OS Provisioning failed for VM 'iWishThisWouldCreateVM01' due to an internal error: The VM encountered an error during deployment. Please visit https://aka.ms/linuxprovisioningerror for more information on remediation."
      }
    ]
  }
}

그런 다음 로 표시된 VM 상태가 failed 표시됩니다.

프로비저닝 오류가 발생하는 이유는 무엇입니까?

일반적으로 프로비저닝 오류는 여러 가지 이유로 인해 발생합니다.

  • 프로비전 누락 /잘못 구성된 에이전트

    • 에이전트가 존재하고 올바르게 작동하고, 클라우드 init을 사용하고 있지 않은지 또는 이미지가 이 기능을 지원하지 않는 경우 다음 단계를 검토할 수 있습니다.
  • 잘못된 이미지 구성

    • 클라우드 이니트 및 기타 Azure이미지 요구 사항으로 이미지를 설정하는 방법에 대한 지침이 있습니다. 이 사항을 확인하시기 바랍니다.

프로비저닝 실패 문제 해결

프로비전에 실패한 이유를 확인하려면 Azure 부팅 진단을 사용하여 VM을 배포하여 직렬 로그로 시작해야 합니다.

직렬 로그의 프로비저닝 이벤트에 액세스하려면 실패한 이미지가 있는 VM에 대해 부팅 진단을 사용할 수 있는 새 VM을 배포해야 합니다.

# create resource group
resourceGroup=myBrokenImageRG
location=westus2
az group create --name $resourceGroup --location $location

# create storage account

storageacct=mydiagdata$RANDOM

az storage account create \
  --resource-group $resourceGroup \
  --name $storageacct \
  --sku Standard_LRS \
  --location $location

# create VM
vmName=iWishThisWouldCreateVM01
brokenImageName=<ResourceID of brokenImage>
sshPubkeyPath=""

az vm create \
    --resource-group $resourceGroup \
    --name $vmName \
    --image $brokenImageName \
    --admin-username azadmin \
    --ssh-key-value $sshPubkeyPath \
    --boot-diagnostics-storage $storageacct

직렬 로그를 확인하려면 포털로 이동하거나 아래 명령을 실행하여 'serialConsoleLogBlobUri' 로그를 다운로드할 수 있습니다.

az vm boot-diagnostics get-boot-log-uris --name $vmName --resource-group $resourceGroup

시스템 이벤트 및 프로비저닝 이벤트에 대한 직렬 로그 이해

처음으로 VM을 만들면 클라우드 인트가 시작되어 ISO를 탑재하고, 네트워크 연결을 설정하고, VM을 만들 때 전달되는 속성을 설정하고, 지원되는 VM 크기에서 사용 디스크를 탑재하고, 초기 OS 구성이 완료했다는 신호를 Azure 플랫폼에 다시 전송합니다.

시스템 이벤트 및 키 정보 직렬 로그 참고 사항
커널 릴리스 및 커널 버전 [ 0.000000] Linux version 5.4.0-1031-azure (buildd@lcy01-amd64-021) (gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)) #32~18.04.1-Ubuntu SMP Tue Oct 6 10:03:22 UTC 2020 (Ubuntu 5.4.0-1031.32~18.04.1-azure 5.4.65) 직렬 로그의 시작에 나타납니다.
커널 명령줄 옵션 [ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-5.4.0-1031-azure root=UUID=8c0a4742-2f51-40b4-b659-357cfb0bb2a3 ro console=tty1 console=ttyS0 earlyprintk=ttyS0
[ 0.503399] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.4.0-1031-azure root=UUID=8c0a4742-2f51-40b4-b659-357cfb0bb2a3 ro console=tty1 console=ttyS0 earlyprintk=ttyS0
직렬 로그의 시작에 나타납니다. command line:를 검색합니다.
시스템 버전 [ 8.626739] systemd[1]: systemd 237 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid) systemd를 검색합니다.
시스템 대상에 도달했습니다. [ [0;32m OK [0m] Reached target Swap.
[ [0;32m OK [0m] Reached target User and Group Name Lookups.
[ [0;32m OK [0m] Reached target Slices.
[ [0;32m OK [0m] Reached target Local File Systems (Pre).
[ [0;32m OK [0m] Reached target Local Encrypted Volumes.
[ [0;32m OK [0m] Reached target Local File Systems.
[ [0;32m OK [0m] Reached target System Time Synchronized.
[ [0;32m OK [0m] Reached target Network (Pre).
[ [0;32m OK [0m] Reached target Network.
[ [0;32m OK [0m] Reached target Host and Network Name Lookups.
[ [0;32m OK [0m] Reached target Cloud-config availability.
[ [0;32m OK [0m] Reached target System Initialization
[ [0;32m OK [0m] Reached target Timers.
[ [0;32m OK [0m] Reached target Paths.
[ [0;32m OK [0m] Reached target Network is Online.
[ [0;32m OK [0m] Reached target Remote File Systems (Pre).
[ [0;32m OK [0m] Reached target Remote File Systems.
[ [0;32m OK [0m] Reached target Sockets.
[ [0;32m OK [0m] Reached target Basic System.
[ [0;32m OK [0m] Reached target Login Prompts.
Reached target를 검색합니다.
여러 다른 문제의 공통 시스템 네트워킹 대상 [ [0;32m OK [0m] Reached target Network (Pre).
[ [0;32m OK [0m] Reached target Network.
[ [0;32m OK [0m] Reached target Network is Online.
Reached target Network를 검색합니다.
시스템 네트워킹이 관리되는 Ubuntu 및 distros에 대한 심층 네트워킹 상태 및 네트워킹 대상 systemd-network Starting Network Time Synchronization...
[ [0;32m OK [0m] Started Network Time Synchronization.
Starting Initial cloud-init job (pre-networking)...
[ [0;32m OK [0m] Started Initial cloud-init job (pre-networking).
[ [0;32m OK [0m] Reached target Network (Pre).
Starting Network Service...
[ [0;32m OK [0m] Started Network Service.
Starting Wait for Network to be Configured...
Starting Network Name Resolution...
[ [0;32m OK [0m] Started Network Name Resolution.
[ [0;32m OK [0m] Reached target Network.
[ [0;32m OK [0m] Reached target Host and Network Name Lookups.
[ [0;32m OK [0m] Started Wait for Network to be Configured.
[ [0;32m OK [0m] Reached target Network is Online.
Starting Dispatcher daemon for systemd-networkd...
[ [0;32m OK [0m] Started Dispatcher daemon for systemd-networkd.
또는 network networkd 를 검색합니다.
RHEL/CentOS 및 시스템 네트워킹이 관리되는 distros에 대한 심층 네트워킹 상태 및 네트워킹 Network Manager 대상 Starting Read and set NIS domainname from /etc/sysconfig/network...
[ [32m OK [0m] Started Read and set NIS domainname from /etc/sysconfig/network.
Starting Import network configuration from initramfs...
[ [32m OK [0m] Started Import network configuration from initramfs.
Starting Initial cloud-init job (pre-networking)...
[ [32m OK [0m] Started Initial cloud-init job (pre-networking).
[ [32m OK [0m] Reached target Network (Pre).
Starting Network Manager...
[ [32m OK [0m] Started Network Manager.
Starting Network Manager Wait Online...
Starting Network Manager Script Dispatcher Service...
[ [32m OK [0m] Started Network Manager Script Dispatcher Service.
[ [32m OK [0m] Started Network Manager Wait Online.
Starting LSB: Bring up/down networking...
[ [32m OK [0m] Started LSB: Bring up/down networking.
[ [32m OK [0m] Reached target Network.
[ [32m OK [0m] Reached target Network is Online.
또는 network Network Manager 를 검색합니다.
SUSE/SLES 및 시스템 네트워킹이 관리되는 distros에 대한 심층 네트워킹 상태 및 네트워킹 대상 Wicked Starting Initial cloud-init job (pre-networking)...
[ [0;32m OK [0m] Reached target Host and Network Name Lookups.
[ [0;32m OK [0m] Started Initial cloud-init job (pre-networking).
[ [0;32m OK [0m] Reached target Network (Pre).
Starting wicked DHCPv6 supplicant service...
Starting wicked DHCPv4 supplicant service...
Starting wicked AutoIPv4 supplicant service...
[ [0;32m OK [0m] Started wicked DHCPv6 supplicant service.
[ [0;32m OK [0m] Started wicked DHCPv4 supplicant service.
[ [0;32m OK [0m] Started wicked AutoIPv4 supplicant service.
Starting wicked network management service daemon...
[ [0;32m OK [0m] Started wicked network management service daemon.
Starting wicked network nanny service...
[ [0;32m OK [0m] Started wicked network nanny service.
Starting wicked managed network interfaces...
[ [0;31m* [0;1;31m* [0m [0;31m* [0m] A start job is running for wicked m…etwork interfaces (22s / no limit)
[K[ [0;31m* [0;1;31m* [0m [0;31m* [0m] A start job is running for wicked m…etwork interfaces (28s / no limit)
[K[ [0;31m* [0;1;31m* [0m [0;31m* [0m] A start job is running for wicked m…etwork interfaces (32s / no limit)
[K[ [0;32m OK [0m] Started wicked managed network interfaces.
[ [0;32m OK [0m] Reached target Network.
[ [0;32m OK [0m] Reached target Network is Online.
또는 network wicked 를 검색합니다.
부팅이 클라우드 인시던트가 시작하기에 충분히 도달했나요? Starting Initial cloud-init job (pre-networking)...
Starting Initial cloud-init job (metadata service crawler)...
Starting Initial cloud-init job를 검색합니다.
클라우드 이니트 버전 및 클라우드 이니트 단계 도달 [ 22.446387] cloud-init[703]: Cloud-init v. 20.3-2-g371b392c-0ubuntu1~18.04.1 running 'init-local' at Wed, 28 Oct 2020 17:46:30 +0000. Up 21.23 seconds.
[ 28.357120] cloud-init[837]: Cloud-init v. 20.3-2-g371b392c-0ubuntu1~18.04.1 running 'init' at Wed, 28 Oct 2020 17:46:34 +0000. Up 24.52 seconds.
[ 50.421009] cloud-init[1445]: Cloud-init v. 20.3-2-g371b392c-0ubuntu1~18.04.1 running 'modules:config' at Wed, 28 Oct 2020 17:46:57 +0000. Up 48.21 seconds.
[ 51.338792] cloud-init[1541]: Cloud-init v. 20.3-2-g371b392c-0ubuntu1~18.04.1 running 'modules:final' at Wed, 28 Oct 2020 17:47:00 +0000. Up 51.01 seconds.
[ 51.366837] cloud-init[1541]: Cloud-init v. 20.3-2-g371b392c-0ubuntu1~18.04.1 finished at Wed, 28 Oct 2020 17:47:01 +0000. Datasource DataSourceAzure [seed=/dev/sr0]. Up 51.32 seconds
Cloud-init v를 검색합니다.
NIC(네트워크 인터페이스), NIC 상태(업/다운) 및 NIC IP 주소 NIC IP 주소가 올바르게 구성 및 할당되었는지를 보여줍니다. IP 주소 할당은 DHCP를 통한 동적 또는 정적으로 구성될 수 있습니다. [ 28.381544] cloud-init[837]: ci-info: ++++++++++++++++++++++++++++++++++++++Net device info+++++++++++++++++++++++++++++++++++++++
[ 28.396781] cloud-init[837]: ci-info: +--------+------+-----------------------------+---------------+--------+-------------------+
[ 28.416501] cloud-init[837]: ci-info: | Device | Up | Address | Mask | Scope | Hw-Address |
[ 28.427493] cloud-init[837]: ci-info: +--------+------+-----------------------------+---------------+--------+-------------------+
[ 28.446544] cloud-init[837]: ci-info: | eth0 | True | 10.0.0.4 | 255.255.255.0 | global | 00:0d:3a:c6:17:d5 |
[ 28.460031] cloud-init[837]: ci-info: | eth0 | True | fe80::20d:3aff:fec6:17d5/64 | . | link | 00:0d:3a:c6:17:d5 |
[ 28.476415] cloud-init[837]: ci-info: | lo | True | 127.0.0.1 | 255.0.0.0 | host | . |
[ 28.487962] cloud-init[837]: ci-info: | lo | True | ::1/128 | . | host | . |
[ 28.498191] cloud-init[837]: ci-info: +--------+------+-----------------------------+---------------+--------+-------------------+
또는 ci-info Net device info 를 검색합니다.
IP 경로(IPv4 및 IPv6). VNet 서브넷, Azure 끝점( ) 및 168.63.129.16 Azure Instance Metadata Server/IMDS 끝점()과 같은 다양한 끝점에 대한 IP 경로를 169.254.169.254 보여줍니다. [ 28.508190] cloud-init[837]: ci-info: ++++++++++++++++++++++++++++++Route IPv4 info+++++++++++++++++++++++++++++++
[ 28.522189] cloud-init[837]: ci-info: +-------+-----------------+----------+-----------------+-----------+-------+
[ 28.531173] cloud-init[837]: ci-info: | Route | Destination | Gateway | Genmask | Interface | Flags |
[ 28.549782] cloud-init[837]: ci-info: +-------+-----------------+----------+-----------------+-----------+-------+
[ 28.562896] cloud-init[837]: ci-info: | 0 | 0.0.0.0 | 10.0.0.1 | 0.0.0.0 | eth0 | UG |
[ 28.571653] cloud-init[837]: ci-info: | 1 | 10.0.0.0 | 0.0.0.0 | 255.255.255.0 | eth0 | U |
[ 28.580192] cloud-init[837]: ci-info: | 2 | 168.63.129.16 | 10.0.0.1 | 255.255.255.255 | eth0 | UGH |
[ 28.587633] cloud-init[837]: ci-info: | 3 | 169.254.169.254 | 10.0.0.1 | 255.255.255.255 | eth0 | UGH |
[ 28.600728] cloud-init[837]: ci-info: +-------+-----------------+----------+-----------------+-----------+-------+
[ 28.611117] cloud-init[837]: ci-info: +++++++++++++++++++Route IPv6 info+++++++++++++++++++
[ 28.619534] cloud-init[837]: ci-info: +-------+-------------+---------+-----------+-------+
[ 28.629292] cloud-init[837]: ci-info: | Route | Destination | Gateway | Interface | Flags |
[ 28.638596] cloud-init[837]: ci-info: +-------+-------------+---------+-----------+-------+
[ 28.647791] cloud-init[837]: ci-info: | 1 | fe80::/64 | :: | eth0 | U |
[ 28.660622] cloud-init[837]: ci-info: | 3 | local | :: | eth0 | U |
[ 28.670776] cloud-init[837]: ci-info: | 4 | ff00::/8 | :: | eth0 | U |
[ 28.691506] cloud-init[837]: ci-info: +-------+-------------+---------+-----------+-------+
, ci-info 또는 Route IPv4 info Route IPv6 info 를 검색합니다.
VM의 사용자를 위한 SSH 권한이 부여된 키입니다. SSH의 파일은 파일이 구성된 사용자 계정으로 로그인하는 데 사용할 수 있는 authorized_keys SSH 키를 지정합니다. ci-info: ++++++++++++++++++++++++++Authorized keys from /home/azureuser/.ssh/authorized_keys for user azureuser+++++++++++++++++++++++++++
ci-info: +---------+-------------------------------------------------------------------------------------------------+---------+---------+
ci-info: | Keytype | Fingerprint (sha256) | Options | Comment |
ci-info: +---------+-------------------------------------------------------------------------------------------------+---------+---------+
ci-info: | ssh-rsa | 88:b0:2a:ce:f5:91:49:a2:01:07:a4:e5:db:b3:8c:3e:7e:1f:52:83:53:3c:83:4f:a3:a7:17:13:65:a3:47:e2 | - | - |
ci-info: +---------+-------------------------------------------------------------------------------------------------+---------+---------+
Authorized keys를 검색합니다.
SSH 호스트 키 생성. 호스트 키는 SSH 프로토콜에서 컴퓨터를 인증하는 데 사용되는 암호화 키입니다. 호스트 키는 키 쌍으로, 일반적으로 RSA, DSA 또는 ECDSA 알고리즘을 사용합니다. 공용 호스트 키는 SSH 클라이언트에 저장 및/또는 배포되고 개인 키는 SSH 서버에 저장됩니다. Starting OpenSSH Server Key Generation...
[ [32m OK [0m] Started OpenSSH Server Key Generation.
[ 40.437735] cloud-init[837]: Generating public/private rsa key pair.
[ 40.451048] cloud-init[837]: Your identification has been saved in /etc/ssh/ssh_host_rsa_key.
[ 40.473777] cloud-init[837]: Your public key has been saved in /etc/ssh/ssh_host_rsa_key.pub.
[ 40.489730] cloud-init[837]: The key fingerprint is:
[ 40.501705] cloud-init[837]: SHA256:NGxA6sf9EAMtczaFSBSJqiGkafEZuPUykNLxefbXofM root@myVmName
[ 40.686610] cloud-init[837]: Generating public/private dsa key pair.
[ 40.712350] cloud-init[837]: Your identification has been saved in /etc/ssh/ssh_host_dsa_key.
[ 40.721901] cloud-init[837]: Your public key has been saved in /etc/ssh/ssh_host_dsa_key.pub.
[ 40.721966] cloud-init[837]: The key fingerprint is:
[ 40.722011] cloud-init[837]: SHA256:QjoxEw9PNOg0P3LW6wnSZzjsfQQ4vhW8S0dAuNWkWHM root@myVmName
[ 40.722606] cloud-init[837]: Generating public/private ecdsa key pair.
[ 40.722650] cloud-init[837]: Your identification has been saved in /etc/ssh/ssh_host_ecdsa_key.
[ 40.722690] cloud-init[837]: Your public key has been saved in /etc/ssh/ssh_host_ecdsa_key.pub.
[ 40.722734] cloud-init[837]: The key fingerprint is:
[ 40.722774] cloud-init[837]: SHA256:BaFqan71k4blzY8TQrLQOavMWoKHgUDgxEAuB0ouJCo root@myVmName
[ 41.063239] cloud-init[837]: Generating public/private ed25519 key pair.
[ 41.091125] cloud-init[837]: Your identification has been saved in /etc/ssh/ssh_host_ed25519_key.
[ 41.120794] cloud-init[837]: Your public key has been saved in /etc/ssh/ssh_host_ed25519_key.pub.
[ 41.154126] cloud-init[837]: The key fingerprint is:
[ 41.157135] cloud-init[837]: SHA256:KsKfIKjwGpMgbYYved5v5oNE6v6eeUwI4AxeeigXk14 root@myVmName
, Generating public/private Your identification has been saved in , 또는 The key fingerprint is: 를 검색합니다. SHA
ssh 호스트 키 지문의 덤프입니다. <14>Oct 28 17:47:00 ec2: #############################################################
<14>Oct 28 17:47:00 ec2: -----BEGIN SSH HOST KEY FINGERPRINTS-----
<14>Oct 28 17:47:00 ec2: 1024 SHA256:QjoxEw9PNOg0P3LW6wnSZzjsfQQ4vhW8S0dAuNWkWHM root@myVmName (DSA)
<14>Oct 28 17:47:00 ec2: 256 SHA256:BaFqan71k4blzY8TQrLQOavMWoKHgUDgxEAuB0ouJCo root@myVmName (ECDSA)
<14>Oct 28 17:47:00 ec2: 256 SHA256:KsKfIKjwGpMgbYYved5v5oNE6v6eeUwI4AxeeigXk14 root@myVmName (ED25519)
<14>Oct 28 17:47:00 ec2: 2048 SHA256:NGxA6sf9EAMtczaFSBSJqiGkafEZuPUykNLxefbXofM root@myVmName (RSA)
<14>Oct 28 17:47:00 ec2: -----END SSH HOST KEY FINGERPRINTS-----
<14>Oct 28 17:47:00 ec2: #############################################################
BEGIN SSH HOST KEY FINGERPRINTS END SSH HOST KEY FINGERPRINTS 을 검색합니다.
ssh 호스트 키의 덤프입니다. -----BEGIN SSH HOST KEY KEYS-----
ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFzu1pBMlq3g/8ztkQo+ZukigmLzQ02/ogL7Xe8aKjbuM8q4ibo1kWnXB0UuGkGE0DotVyBQsoyUNorTj96G2Xo= root@myVmName
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIbGOVk/IMfL+RZBDo6YlfbKncVTIBy7wSrqL5ixX6yZ root@myVmName
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDnH5sIIEFi2ne6CMk1jscVQ289i4idOMJt3WwzHR1lOgJf9kPY+WzmFw71Ai9ZEpqSTpYWxgt+z26ujxAE3R1LvOn1QKetlsPLT5FH8oIZESXmYDb/KL/4k81aDelzko1Xipk5SSai8LeX1qglKUEyGevht9S+QQTHK8Ed++UDzNidCk02iAdhpX/0E5d09NE4r+v5wAojOazLnq6JaESYV07SI7rBOGO7hCdSrQwWodYnhyTQRP3FbqjUeNRqBl3uqlH3+rgMAAPsCpToFTCperTRmyBrCbspzpxIpQSEFbf639EL/7Cst/Ff2ND0D0zVAaSdrmFZisYUcO+VRanZ root@myVmName
-----END SSH HOST KEY KEYS-----
BEGIN SSH HOST KEY KEYS END SSH HOST KEY KEYS 을 검색합니다.
SSH 서버를 시작했나요? Starting OpenBSD Secure Shell server...
[ [0;32m OK [0m] Started OpenBSD Secure Shell server.
Starting OpenSSH server daemon...
[ [32m OK [0m] Started OpenSSH server daemon.
Starting OpenSSH Daemon...
[ [0;32m OK [0m] Started OpenSSH Daemon.
, Secure Shell server 또는 OpenSSH server daemon OpenSSH Daemon 를 검색합니다.
사용자 세션 및 사용자 로그인이 허용하나요? VM에 사용자 로그인 프롬프트가 표시하나요? Starting Accounts Service...
Starting Permit User Sessions...
Starting Login Service...
[ [0;32m OK [0m] Started Permit User Sessions.
[ [0;32m OK [0m] Started Login Service.
[ [0;32m OK [0m] Reached target Login Prompts.
[ [0;32m OK [0m] Started Accounts Service.
Ubuntu 18.04.5 LTS myVmName ttyS0
myVmName login:
, Accounts Service Permit User Sessions , Login Service , Login Prompts 및 를 login: 검색합니다.
Azure Linux 에이전트를 성공적으로 시작했나요? [ [0;32m OK [0m] Started Azure Linux Agent.
2020/10/28 17:46:52.082569 INFO Daemon Azure Linux Agent Version:2.2.45
Azure Linux Agent를 검색합니다.
Azure Linux 에이전트의 시점에서 VM이 프로비전을 성공적으로 완료했습니까? 프로비저닝이 성공한 후 Azure Linux 에이전트에서 VM 확장 처리기 시작 여부 Azure Linux 에이전트는 VM 프로비전이 성공한 것으로 감지된 경우 VM 확장 처리기만 시작합니다. 2020/10/28 17:46:52.586765 INFO Daemon Finished provisioning INFO Daemon Finished provisioning를 검색합니다.
직렬 로그에 오류, 오류 또는 예외가 있나요? , , 및 직렬 fail error warn exception 로그에서 검색합니다.

일반적인 오류

UDF 드라이버 차단 목록

오류: 직렬 로그에서 다음을 입력합니다.

[   10.855501] cloud-init[732]: Cloud-init v. 20.4.1-0ubuntu1~18.04.1 running 'init-local' at Thu, 28 Jan 2021 23:43:02 +0000. Up 10.68 seconds.
[   10.869581] cloud-init[732]: 2021-01-28 23:43:03,097 - azure.py[WARNING]: /dev/sr0 was not mountable
[   10.875608] cloud-init[732]: 2021-01-28 23:43:03,106 - azure.py[ERROR]: No Azure metadata found
[   10.885776] cloud-init[732]: 2021-01-28 23:43:03,107 - azure.py[ERROR]: Could not crawl Azure metadata: No Azure metadata found
[   14.634117] cloud-init[732]: 2021-01-28 23:43:06,876 - azure.py[WARNING]: Reported failure to Azure fabric.

waagent.log에서:

"UDF driver Blocklisted 2020/09/11 19:16:40.240016 ERROR Daemon Provisioning failed: [ProtocolError] [CopyOvfEnv] Error mounting dvd: [OSUtilError] Failed to mount dvd deviceInner error: [mount -o ro -t udf,iso9660 /dev/sr0 /mnt/cdrom/secure] returned 32: mount: /mnt/cdrom/secure: wrong fs type, bad option, bad superblock on /dev/sr0, missing codepage or helper program, or other error."

원인: UDF 드라이버가 커널에 로드되지 않습니다. VM이 프로비전하는 데 필요합니다. 이미지 요구 사항을 참조하세요.

Azure에서 VM이 처음 프로비전된 경우 Azure 호스트는 VM에 '프로비저닝 cdrom iso 디스크'를 제공합니다. 이 프로비저닝 디스크는 일반적으로 /dev/sr0을 통해 VM에 표시됩니다. 프로비저닝 디스크 내에 VM의 프로비전 정보가 포함된 프로비저닝 매니페스트가 있습니다. VM 내 프로비저닝 에이전트는 프로비저닝 디스크를 탑재하고 프로비저닝 매니페스트를 읽고 그에 따라 VM을 프로비전해야 합니다.

프로비저닝 디스크는 입니다. 이 디스크를 성공적으로 탑재하려면 커널에 Linux UDF 드라이버가 cdrom iso disk 필요합니다. 이는 Linux 이미지에 대한 Microsoft 설명서에서 참조됩니다. 이 VM의 경우 로그는 프로비저닝 디스크를 탑재하지 못하여 VM 프로비전이 실패했다는 것을 나타냅니다. 가장 가능성이 큰 이유는 누락되거나 차단된 UDF 드라이버 때문일 수 있습니다.

해결 방법: UDF 드라이버가 커널에 로드되도록 구성되어 있는지 확인

UDF 드라이버를 차단하는 일반적인 방법은 에서 구성을 통해 하는 /etc/modprobe.d/ 것입니다. 고객/이미지 소유자와 함께 Linux UDF 드라이버가 있으며 차단되지 않는지 확인하시기 바랍니다. 이 문서에서는 커널 드라이버 차단/차단 해제를 참조하십시오.

VM 태그의 유니코드 문자 문제

오류: cloud-init.log에서:

  File "/usr/lib/python2.7/site-packages/cloudinit/sources/DataSourceAzure.py", line 1316, in _get_metadata_from_imds
    except json.decoder.JSONDecodeError:
AttributeError: 'module' object has no attribute 'JSONDecodeError'

원인: VM 태그에 ascii 문자가 아닌 문자가 있으며 클라우드 인시트 버전이 20.3보다 오래 많기 때문에 발생합니다.

해결 방법: 이미지가 클라우드 init 20.3 이상을 지원하는지 확인하거나 VM 태그에서 ascii가 아닌 문자를 제거합니다.

유니코드 문자가 있는 암호

오류: cloud-init.log에서:

File "/usr/lib/python2.7/site-packages/cloudinit/sources/DataSourceAzure.py", line 1153, in encrypt_pass
    return crypt.crypt(password, salt_id + util.rand_str(strlen=16))
  File "/usr/lib64/python2.7/crypt.py", line 55, in crypt
    return _crypt.crypt(word, salt)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 10-11: ordinal not in range(128)

원인: 제공된 암호에 미지원 문자(ascii가 아닌 문자)가 있기 때문에 발생합니다.

해결 방법: ascii 문자만 있는 암호를 제공합니다.

Dhclient 권한

오류: cloud-init.log에서:

Command: ['/var/tmp/cloud-init/cloud-init-dhcp-yd8mvxud/dhclient', '-1', '-v', '-lf', '/var/tmp/cloud-init/cloud-init-dhcp-yd8mvxud/dhcp.leases', '-pf', '/var/tmp/cloud-init/cloud-init-dhcp-yd8mvxud/dhclient.pid', 'eth0', '-sf', '/bin/true']
Exit code: -
Reason: [Errno 13] Permission denied: b'/var/tmp/cloud-init/cloud-init-dhcp-yd8mvxud/dhclient'

원인: 이전 버전의 클라우드 init(버전 20.3 이전)은 에서 복사 및 실행하여 DHCP를 dhclient 수행 /var/tmp 합니다. VM에서 (실행 안 하도록) 탑재된 경우 /var/tmp DHCP는 내에서 실행할 수 있는 권한이 없음으로 인해 noexec dhclient /var/tmp 실패합니다.

클라우드 이니트 버전은 >= 20.3에는 변경되는 수정이 포함되어 있으며 "있는 경우"를 실행합니다(사용 권한 문제가 있는 경우 복사하여 실행하지 dhclient /var/tmp 않습니다).

해결 방법: 버전 20.3 이전의 클라우드 이니트를 실행하는 VM의 경우 로 탑재되지 않은 VM을 /var/tmp noexec 구성합니다. 또는 VM의 클라우드 이니트 패키지를 20.>버전으로 업그레이드합니다.

더 많은 로그 확인

VM에서 문제를 이해하기 위해 추가 로그가 필요한 경우 이미지에 구운 사용자를 사용하여 직렬 콘솔을 사용하여 VM으로 SSH를 사용할 수 있습니다. 사용자가 구운 사용자가 없는 경우 사용자와 함께 이미지를 다시 만듭니다. 또는 AZ VM 복구 도구를 사용하여 프로비전하지 못한 VM의 OS 디스크를 다른 VM에 탑재할 수 있습니다.

az vm repair create  \
    --resource-group $resourceGroup \
    --name $vmName \
    --repair-username repairadm \
    --repair-password AnotherPassword123! \
    --repair-vm-name repairVM \
    --verbose

cloud-init.log 이해

클라우드 이니트 로그에 액세스할 수 있는 경우 클라우드 이니트 문제 해결 설명서를 검토합니다.

지원받기

지침을 참조한 경우에도 문제를 해결할 수 없는 경우 지원 사례를 열 수 있습니다. 이 경우 올바른 제품 및 지원 항목을 선택하세요. 이렇게 하면 올바른 지원 팀이 참여합니다.

사례 제품 선택:

Product Family: Azure
Product: Virtual Machine Running (Window\Linux)
Support Topic: <COMPLETE>
Support Subtopic: <COMPLETE>

활동 로그 수집

문제 해결을 시작하려면 활동 로그를 수집하여 문제와 관련된 오류를 식별합니다. 다음 링크에는 따를 프로세스에 대한 자세한 정보가 포함되어 있습니다.

배포 작업 보기

Azure 리소스를 관리하기 위한 활동 로그 보기

문제: 사용자 지정 이미지 프로비전 오류

일반화된 VM 이미지를 특수 VM 이미지로 업로드하거나 캡처하거나 특수 VM 이미지로 캡처하는 경우 프로비저닝 오류가 발생합니다. 이 경우 프로비저닝 시간 제한 오류가 발생하고 후자는 프로비저닝 실패를 발생하게 됩니다. 오류 없이 사용자 지정 이미지를 배포하려면 캡처 프로세스 중에 이미지 형식이 변경되지 않는지 확인해야 합니다.

다음 표에서는 일반화 및 특수 이미지의 가능한 조합, 발생할 오류 유형 및 오류를 해결하기 위해 해야 할 작업을 나열합니다.

다음 표에는 일반화된 Linux 및 특수 OS 이미지의 가능한 업로드 및 캡처 조합이 나열됩니다. 오류 없이 처리될 조합은 Y로 표시하며, 오류가 발생할 조합은 N으로 표시됩니다. 실행할 여러 오류의 원인과 해결 해결이 표 아래에 표시됩니다.

OS 업로드 사양입니다. 업로드. 캡처 사양. 캡처 gen.
Linux gen. N1 Y N3 Y
Linux 사양. Y N2 Y N4

Y: OS가 Linux가 일반화된 경우 일반화된 설정으로 업로드 및/또는 캡처된 경우 오류가 없습니다. 마찬가지로 OS가 Linux 전문화 및/또는 특수 설정으로 업로드 및/또는 캡처된 경우 오류가 없습니다.

업로드 오류 발생

N 1: OS가 Linux가 일반화된 경우 특수하게 업로드된 경우 VM이 프로비저닝 단계에서 엄밀하게 유지될 수 있기 때문에 프로비저닝 시간 제한 오류가 발생합니다.

N 2: OS가 Linux 전문화되고 일반화된 것으로 업로드된 경우 새 VM이 원래 컴퓨터 이름, 사용자 이름 및 암호로 실행되고 있기 때문에 프로비저닝 실패 오류가 발생합니다.

해결 해결 - 업로드 오류

이러한 오류를 모두 해결하려면 OS에 대한 설정과 동일한 설정(일반화/특수화된)을 사용하여 프레미스에서 사용할 수 있는 원래 VHD를 업로드합니다. 일반화된 것으로 업로드하려면 먼저 -deprovision을 실행해야 합니다.

캡처 오류

N 3: OS가 Linux가 일반화되어 있으며 특수한 것으로 캡처된 경우 원래 VM이 일반화된 것으로 표시되어 있기 때문에 프로비저닝 시간 제한 오류가 발생합니다.

N 4: OS가 Linux 전문화되고 일반화된 것으로 캡처된 경우 새 VM이 원래 컴퓨터 이름, 사용자 이름 및 암호로 실행되고 있기 때문에 프로비저닝 실패 오류가 발생합니다. 또한 원래 VM은 특수한 것으로 표시되어 있기 때문에 사용되지 않습니다.

해결결과 - 캡처 오류

이러한 오류를 모두 해결하려면 포털에서 현재 이미지를 삭제하고 OS(일반화/특수화된)와 동일한 설정으로 현재 VHD에서 다시 포팅합니다.

이 오류는 요청되는 VM 크기를 지원할 수 없는 클러스터에 새 VM 요청이 고정되거나 요청을 수용할 수 있는 사용 가능한 공간이 없는 경우 발생합니다.

원인 1

클러스터는 요청된 VM 크기를 지원할 수 없습니다.

해결 해결 1

  • 더 작은 VM 크기를 사용하여 요청을 다시 시도합니다.

  • 요청한 VM의 크기를 변경할 수 없는 경우:

    • 가용성 집합의 모든 VM을 중지합니다. 리소스 그룹을 클릭하여 리소스 그룹 리소스 가용성 집합 가상 컴퓨터 > > > 중지 > > > 클릭합니다.
    • 모든 VM이 중지된 후 원하는 크기로 새 VM을 생성합니다.
    • 먼저 새 VM을 시작한 다음 중지된 각 VM을 선택하고 시작 을 클릭합니다.

원인 2

클러스터에 무료 리소스가 없습니다.

해결 2

  • 나중에 요청을 다시 시도합니다.
  • 새 VM이 다른 가용성 집합의 일부가 될 수 있는 경우
    • 같은 지역에 있는 다른 가용성 집합에서 새 VM을 만들 수 있습니다.
    • 새 VM을 동일한 가상 네트워크에 추가합니다.

상위 문제

다음과 같은 가장 많은 문제가 문제를 해결하는 데 도움이 될 수 있습니다. 문제 해결을 시작하기 위해 다음 단계를 검토하세요.

클러스터에서 요청된 VM 크기를 지원할 수 없습니다.

  • 더 작은 VM 크기를 사용하여 요청을 다시 시도합니다.
  • 요청한 VM의 크기를 변경할 수 없는 경우:
    • 가용성 집합의 모든 VM을 중지합니다. 가상 > 가상 > 컴퓨터의 가용성 집합을 > > 리소스 > 리소스 > 그룹 > 클릭합니다.
    • 모든 VM이 중지된 후 원하는 크기로 VM을 생성합니다.
    • 먼저 새 VM을 시작한 다음 중지된 각 VM을 선택하고 시작을 클릭합니다.

클러스터에 무료 리소스가 없습니다.

  • 나중에 요청을 다시 시도합니다.
  • 새 VM이 다른 가용성 집합의 일부가 될 수 있는 경우
    • 동일한 지역에 있는 다른 가용성 집합에서 VM을 만들 수 있습니다.
    • 새 VM을 동일한 가상 네트워크에 추가합니다.

FAQ

Visual Studio 2013에 대한 월별 크레딧을 Enterprise(BizSpark)

월별 크레딧을 활성화하려면 이 문서를 참조하세요.

Ubuntu NV VM용 GPU 드라이버를 설치할 수 없는 이유는 무엇입니까?

현재 Linux GPU 지원은 Ubuntu Server 16.04 LTS를 실행하는 Azure NC VM에서만 사용할 수 있습니다. 자세한 내용은 Linux를 실행하는 N 계열 VM에 대한 GPU 드라이버 설치를 참조하세요.

Linux N-Series VM에 대한 드라이버가 없습니다.

Linux 기반 VM용 드라이버를 설치하는 지침은 에 있습니다.

N-Series VM 내에서 GPU 인스턴스를 찾을 수 없습니다.

Azure N-series VM의 GPU 기능을 활용하려면 배포 후 각 VM에 그래픽 드라이버를 설치해야 합니다. 드라이버 설정 정보는 여기에서 사용할 수 있습니다.

내 지역에서 N-Series VM을 사용할 수 있나요?

지역 테이블에서 사용할 수 있는 제품 및가격은 여기에서 확인할 수 있습니다.

VM 크기를 조정하는 경우 원하는 VM Size 패밀리를 볼 수 없습니다.

VM이 실행 중이면 실제 서버에 배포됩니다. Azure 지역의 실제 서버는 일반적인 실제 하드웨어 클러스터로 그룹화됩니다. VM을 다른 하드웨어 클러스터로 이동해야 하는 VM의 크기 조정은 VM을 배포하는 데 사용된 배포 모델에 따라 다릅니다.

  • 클래식 배포 모델에 배포된 VM을 다른 크기 패밀리의 크기로 변경하려면 클라우드 서비스 배포를 제거하고 다시 배포해야 합니다.

  • 리소스 관리자 배포 모델에 배포된 VM은 가용성 집합의 VM 크기를 변경하기 전에 가용성 집합의 모든 VM을 중지해야 합니다.

가용성 집합에서 배포하는 동안 나열된 VM 크기는 지원되지 않습니다.

가용성 집합의 클러스터에서 지원되는 크기를 선택 합니다. 가용성 집합을 만들 때 필요한 가장 큰 VM 크기를 선택하고 가용성 집합에 첫 번째로 배포하는 것이 좋습니다.

Azure에서 지원되는 Linux 배포/버전은 무엇입니까?

Azure-Endorsed Distributions의Linux에서 목록을 찾을 수 있습니다.

가용성 집합에 기존 클래식 VM을 추가할 수 있나요?

예. 기존 클래식 VM을 새 가용성 집합 또는 기존 가용성 집합에 추가할 수 있습니다. 자세한 내용은 가용성 집합에 기존 가상 컴퓨터 추가를 참조하세요.

중요

클래식 VM은 2023년 3월 1일에 사용 중지됩니다.

ASM에서 IaaS 리소스를 사용하는 경우 2023년 3월 1일까지 마이그레이션을 완료합니다. Azure Resource Manager의 다양한 기능 향상 기능을 활용하기 위해 전환을 더 빨리 만드는 것이 권장됩니다.

자세한 내용은 2023년 3월 1일까지 Azure Resource Manager로 IaaS 리소스 마이그레이션을 참조하세요.

다음 단계