Устранение неполадок с развертыванием Resource Manager при создании виртуальной машины Linux в Azure

Примечание.

CentOS, упоминаемая в этой статье, является дистрибутивом Linux и достигнет конца жизненного срока (EOL). Рассмотрите возможность использования и спланируйте соответствующие планы. Дополнительные сведения см. в руководстве по окончании жизненного циклов CentOS.

При попытке создать виртуальную машину Azure часто возникают сбои подготовки или сбои выделения.

  • Сбой подготовки происходит, когда образ ОС не удается загрузить из-за неправильных подготовительных действий или из-за выбора неправильных параметров во время записи образа на портале.
  • Сбой выделения возникает, когда кластер или регион либо не имеет доступных ресурсов, либо не поддерживает запрошенный размер виртуальной машины.

Если проблема с Azure не устранена в этой статье, посетите форумы Azure на веб-сайтах MSDN и Stack Overflow. Вы можете опубликовать свою проблему на этих форумах или опубликовать на @AzureSupport в Twitter. Вы также можете отправить запрос на поддержка Azure. Чтобы отправить запрос на поддержку, на странице поддержка Azure выберите Получить поддержку.

Устранение неполадок с подготовкой

Типичный сбой подготовки возникает после создания пользовательского образа, а затем развертывания виртуальной машины из него. Затем вы увидите 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."
      }
    ]
  }
}

Затем отобразится состояние виртуальной машины, помеченное как failed.

Почему происходят сбои подготовки?

Как правило, сбои подготовки могут происходить по нескольким причинам, например:

  • Отсутствует агент подготовки /неправильно настроенный

    • Вам потребуется убедиться, что агент присутствует и работает правильно, следует использовать cloud-init или, если образ не поддерживает эту функцию, вы можете просмотреть эти действия.
  • Неправильная конфигурация образа

    • У нас есть рекомендации по настройке образов с использованием cloud-init и других требований к образам Azure. Пожалуйста, проверка это.

Устранение неполадок при подготовке

Чтобы определить причину сбоя подготовки, необходимо начать с последовательного журнала. Это можно сделать, развернув виртуальную машину с помощью диагностика загрузки Azure.

Вам потребуется развернуть новую виртуальную машину с включенной загрузкой диагностика для виртуальной машины с сбоем образа для доступа к событиям подготовки в последовательном журнале.

# 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

Общие сведения о последовательном журнале для системных событий и событий подготовки

Когда виртуальная машина создается в первый раз, cloud-init запустится и попытается подключить ISO-файл, установить сетевое подключение, задать свойства, переданные во время создания виртуальной машины, подключить временный диск (при поддерживаемых размерах виртуальных машин) и сообщить платформе 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:.
Systemd version [ 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 и дистрибутивов, где системная сеть управляется .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 и дистрибутивов, в которых системная сеть управляется .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 и дистрибутивов, в которых системная сеть управляется .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.
Достигла ли загрузка достаточно далеко, чтобы начать cloud-init? Starting Initial cloud-init job (pre-networking)...
Starting Initial cloud-init job (metadata service crawler)...
Поиск для Starting Initial cloud-init job.
Достигнута версия cloud-init и этапы cloud-init [ 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.
Сетевые интерфейсы ,состояния сетевого адаптера (вверх или вниз) и IP-адреса сетевого адаптера. Показывает, правильно ли настроены и назначены 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). Показывает IP-маршруты для различных конечных точек, таких как подсеть виртуальной сети, конечная точка Azure (168.63.129.16) и конечная точка сервера метаданных экземпляра Azure (169.254.169.254IMDS). [ 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.
Авторизованные ключи SSH для пользователей на виртуальной машине. Файл authorized_keys в SSH указывает ключи 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.
Разрешены ли сеансы пользователей и имена входа пользователей? Отображается ли на виртуальной машине запрос на вход пользователя? 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:.
Успешно ли запущен агент Linux для Azure? [ [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.
С точки зрения агента Linux Для Azure виртуальная машина успешно завершила подготовку? Был ли обработчик расширения виртуальной машины запущен агентом Azure Linux после успешной подготовки? Агент Linux для Azure запускает обработчик расширения виртуальной машины только в том случае, если обнаруживает, что подготовка виртуальной машины выполнена успешно. 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 не загружается в ядро. Это необходимо для подготовки виртуальной машины. См. требования к образу.

При первой подготовке виртуальной машины в Azure узел Azure предоставляет виртуальной машине "диск cdrom ISO". Этот диск подготовки обычно предоставляется виртуальной машине через /dev/sr0. На диске подготовки имеется манифест подготовки, содержащий сведения о подготовке виртуальной машины. Ожидается, что агент подготовки на виртуальной машине подключает диск подготовки, считывает манифест подготовки и подготавливает виртуальную машину соответствующим образом.

Так как диск подготовки является cdrom iso disk, для успешного подключения этого диска требуется драйвер UDF Linux для ядра. Это упоминается в документации Майкрософт по образам Linux. Для этой виртуальной машины журналы указывают на то, что не удалось подключить диск подготовки, что привело к сбою подготовки виртуальной машины. Наиболее вероятной причиной является отсутствие или блокировка драйверов UDF.

Решение. Убедитесь, что драйвер UDF настроен для загрузки в ядро.

Распространенный способ блокировки драйверов UDF — это конфигурации в /etc/modprobe.d/. Обратитесь к клиенту или владельцу образа, чтобы убедиться, что драйверы UDF Linux присутствуют и не заблокированы. Ознакомьтесь с этой статьей о блокировке и разблокировки драйверов ядра.

Проблема с символами Юникода в тегах виртуальной машины

Ошибка: в 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'

Причина. Это происходит из-за того, что теги виртуальных машин имеют символы, отличные от ascii, а версия cloud-init старше 20.3.

Решение. Используйте или убедитесь, что образ поддерживает cloud-init версии 20.3 или более поздней версии или удалите символы, отличные от 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'

Причина. В более старых версиях cloud-init (до версии 20.3) dhcp выполняется путем копирования dhclient и выполнения в ./var/tmp Если /var/tmp виртуальная машина подключена как noexec (без выполнения), dhcp завершится ошибкой dhclient из-за отсутствия разрешений на выполнение в ./var/tmp

Версии >Cloud-init = 20.3 содержат исправление, которое возвращается и выполняется dhclient "как есть" (не копируя и не выполняя его в /var/tmp , если есть проблемы с разрешениями).

Решение. Для виртуальных машин с cloud-init старше версии 20.3 настройте виртуальную машину так, чтобы /var/tmp она не была подключена как noexec. Кроме того, обновите пакет cloud-init виртуальной машины до версии >20.3.

Получение дополнительных журналов

Если вы обнаружите, что требуется больше журналов с виртуальной машины, чтобы понять проблемы, возможно, вы можете использовать SSH-подключение к виртуальной машине с помощью последовательной консоли с помощью пользователя, который врезается в образ. Если у вас нет пользователя, вы можете либо повторно создать образ с пользователем, либо использовать средство восстановления виртуальной машины AZ , которое подключит диск ОС виртуальной машины, для которой не удалось подготовиться, к другой виртуальной машине.

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

Общие сведения об cloud-init.log

Если у вас есть доступ к журналам cloud-init, ознакомьтесь с документацией по устранению неполадок cloud-init.

Получение поддержки

Если вы ссылались на руководство и по-прежнему не можете устранить проблему, вы можете отправить обращение в службу поддержки. При этом выберите правильный раздел продукта и поддержки. Для этого обратитесь в соответствующую службу поддержки.

Выбор продукта для обращения:

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

Сбор журналов действий

Чтобы приступить к устранению неполадок, соберите журналы действий, чтобы определить ошибку, связанную с проблемой. Следующие ссылки содержат подробные сведения о процессе выполнения.

Просмотр операций развертывания

Просмотр журналов действий для управления ресурсами Azure

Проблема: пользовательское изображение; Ошибки подготовки

Ошибки подготовки возникают при передаче или записи обобщенного образа виртуальной машины в качестве специализированного образа виртуальной машины или наоборот. Первый вызовет ошибку времени ожидания подготовки, а второй вызовет сбой подготовки. Чтобы развернуть пользовательский образ без ошибок, необходимо убедиться, что тип образа не изменяется в процессе записи.

В следующей таблице перечислены возможные сочетания обобщенных и специализированных образов, тип ошибки, который вы столкнетесь, и действия, необходимые для устранения ошибок.

В следующей таблице перечислены возможные сочетания отправки и записи обобщенных и специализированных образов ОС Linux. Сочетания, которые будут обрабатываться без ошибок, указываются с помощью Y, а те, которые будут вызывать ошибки, указываются с помощью N. Причины и способы устранения различных ошибок, с помощью которых вы будете столкнуться, приведены под таблицей.

ОС Отправить спецификацию. Поколение отправки. Спецификация захвата. Поколение захвата.
Поколение Linux. N1 Да N3 Да
Спецификация Linux. Да N2 Да N4

Y: Если ос является обобщенной, и она передается и (или) записывается с помощью обобщенного параметра, то ошибок не будет. Аналогичным образом, если ос является специализированной для Linux, и она передается и (или) записывается с помощью специализированного параметра, то ошибок не будет.

Ошибки отправки

N1: Если ОС является обобщенной и передается как специализированная, вы получите ошибку времени ожидания подготовки, так как виртуальная машина зависла на этапе подготовки.

N2: Если ос является специализированной для Linux и передается как обобщенная, вы получите ошибку сбой подготовки, так как новая виртуальная машина работает с исходным именем компьютера, именем пользователя и паролем.

Решение — ошибка отправки

Чтобы устранить обе эти ошибки, отправьте исходный виртуальный жесткий диск, доступный в локальной среде, с тем же параметром, что и для ОС (обобщенный или специализированный). Чтобы отправить как обобщенное, сначала запустите -deprovision.

Ошибки записи

N3: Если ОС является обобщенной и записывается как специализированная, вы получите ошибку времени ожидания подготовки, так как исходная виртуальная машина не подходит для использования, так как она помечена как обобщенная.

N4: Если ос является специализированной для Linux и записывается как обобщенная, вы получите ошибку сбой подготовки, так как новая виртуальная машина работает с исходным именем компьютера, именем пользователя и паролем. Кроме того, исходная виртуальная машина недоступна для использования, так как она помечена как специализированная.

Решение — ошибка записи

Чтобы устранить обе эти ошибки, удалите текущий образ с портала и запустите его из текущих виртуальных жестких дисков с тем же параметром, что и для ОС (обобщенный или специализированный).

Эта ошибка возникает в ситуациях, когда новый запрос виртуальной машины закреплен в кластере, который либо не поддерживает запрашиваемый размер виртуальной машины, либо не имеет свободного места для размещения запроса.

Причина 1

Кластер не поддерживает запрошенный размер виртуальной машины.

Решение 1

  • Повторите запрос, используя виртуальную машину меньшего размера.

  • Если размер запрошенной виртуальной машины изменить невозможно:

    • Остановите все виртуальные машины в группе доступности. Щелкните Группы>ресурсов группа> ресурсовРесурсы>группы ресурсов группа> доступности Виртуальные машины>выбор виртуальной машины>остановить.
    • После остановки всех виртуальных машин создайте новую виртуальную машину нужного размера.
    • Сначала запустите новую виртуальную машину, выберите каждую из остановленных виртуальных машин и нажмите кнопку Пуск.

Причина 2

В кластере нет бесплатных ресурсов.

Решение 2

  • Повторите запрос позже.
  • Если новая виртуальная машина может входить в другую группу доступности
    • Создайте виртуальную машину в другой группе доступности (в том же регионе).
    • Добавьте новую виртуальную машину в ту же виртуальную сеть.

Основные проблемы

Следующие основные проблемы могут помочь устранить проблему. Чтобы приступить к устранению неполадок, ознакомьтесь со следующими шагами:

Кластер не поддерживает запрошенный размер виртуальной машины

  • Повторите запрос, используя виртуальную машину меньшего размера.
  • Если размер запрошенной виртуальной машины изменить невозможно:
    • Остановите все виртуальные машины в группе доступности. Щелкните Группы> ресурсов группа > ресурсов Ресурсы>, которые группа> доступности Виртуальные машины > виртуальная машина >Остановить.
    • После остановки всех виртуальных машин создайте виртуальную машину нужного размера.
    • Сначала запустите новую виртуальную машину, выберите каждую из остановленных виртуальных машин и нажмите кнопку Пуск.

В кластере нет бесплатных ресурсов

  • Повторите запрос позже.
  • Если новая виртуальная машина может входить в другую группу доступности
    • Создайте виртуальную машину в другой группе доступности (в том же регионе).
    • Добавьте новую виртуальную машину в ту же виртуальную сеть.

Вопросы и ответы

Разделы справки активации ежемесячного кредита для Visual Studio Enterprise (BizSpark)

Сведения об активации ежемесячного кредита см. в этой статье.

Почему не удается установить драйвер GPU для виртуальной машины Виртуальной машины Ubuntu NV?

В настоящее время поддержка GPU Linux доступна только на виртуальных машинах NC Azure под управлением Ubuntu Server 16.04 LTS. Дополнительные сведения см. в статье Настройка драйверов GPU для виртуальных машин серии N под управлением Linux.

Отсутствуют драйверы для виртуальной машины Linux серии N

Инструкции по установке драйверов для виртуальных машин под управлением Linux приведены здесь.

Не удается найти экземпляр GPU на виртуальной машине серии N

Чтобы воспользоваться возможностями GPU виртуальных машин Azure серии N, необходимо установить графические драйверы на каждой виртуальной машине после развертывания. Сведения о настройке драйвера доступны здесь.

Доступны ли виртуальные машины серии N в моем регионе?

Вы можете проверка доступность из таблицы Продукты, доступные по регионам, и цены здесь.

При изменении размера виртуальной машины не отображается нужное семейство размера виртуальной машины

При запуске виртуальной машины она развертывается на физическом сервере. Физические серверы в регионах Azure группируются в кластеры общего физического оборудования. Изменение размера виртуальной машины, для которой требуется переместить виртуальную машину в разные аппаратные кластеры, зависит от модели развертывания, используемой для развертывания виртуальной машины.

  • Виртуальные машины, развернутые в классической модели развертывания, должны быть удалены и повторно развернуты, чтобы изменить размер виртуальных машин в другом семействе размеров.

  • Виртуальные машины, развернутые в Resource Manager модели развертывания, необходимо остановить все виртуальные машины в группе доступности, прежде чем изменять размер любой виртуальной машины в группе доступности.

Указанный размер виртуальной машины не поддерживается при развертывании в группе доступности

Выберите размер, поддерживаемый в кластере группы доступности. При создании группы доступности рекомендуется выбрать самый большой размер виртуальной машины, который, по вашему мнению, вам нужен, и иметь это первое развертывание в группе доступности.

Какие дистрибутивы и версии Linux поддерживаются в Azure?

Список можно найти на странице Linux в дистрибутивах, поддерживаемых Azure.

Можно ли добавить существующую классическую виртуальную машину в группу доступности?

Да. Вы можете добавить существующую классическую виртуальную машину в новую или существующую группу доступности. Дополнительные сведения см. в статье Добавление существующей виртуальной машины в группу доступности.

Важно!

Классические виртуальные машины будут прекращены 1 сентября 2023 г.

Если вы используете ресурсы IaaS из ASM, завершите миграцию до 1 сентября 2023 г. Мы рекомендуем сделать этот переход быстрее, чтобы воспользоваться преимуществами многочисленных улучшений функций в Azure Resource Manager.

Дополнительные сведения см. в статье Перенос ресурсов IaaS в Azure Resource Manager до 1 сентября 2023 г.

Дальнейшие действия

Свяжитесь с нами для получения помощи

Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.