Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: ✔️ виртуальные машины Linux
Примечание.
CentOS, на который ссылается в этой статье, является дистрибутивом Linux и достигнет конца жизни (EOL). Думайте об использовании и планировании соответствующим образом. Дополнительные сведения см. в руководстве centOS End Of Life.
Наиболее распространенные ошибки, возникающие при попытке создания новой виртуальной машины Azure, — ошибки подготовки и ошибки выделения.
- Ошибки подготовки возникают, когда образ операционной системы не удается загрузить из-за неправильных подготовительных действий или из-за выбора неправильных параметров во время записи образа на портале.
- Ошибки выделения возникают, когда кластер или регион не имеют доступных ресурсов или не поддерживают запрошенный размер виртуальной машины.
Это важно
Новое! Попробуйте использовать инструмент VM Assist для решения наиболее часто встречающихся проблем. Рекомендуется запустить Ассистент виртуальных машин для Windows или Ассистент виртуальных машин для Linux. Эти средства диагностики на основе скриптов помогают выявить распространенные проблемы, влияющие на гостевой агент виртуальной машины Azure и общую работоспособность виртуальных машин.
Если у вас возникли проблемы с производительностью на виртуальных машинах, сначала запустите эти средства перед обращением в службу поддержки Майкрософт.
Сводка
Эта статья помогает диагностировать и устранять проблемы, возникающие при развертывании виртуальных машин Linux в Azure. Он фокусируется на определении того, где развертывание завершилось сбоем (развертывание, подготовка или загрузка ОС) и показывает , какие журналы и средства будут использоваться на каждом этапе.
Определение этапа сбоя развертывания виртуальной машины Linux
Перед устранением неполадок определите, где произошел сбой развертывания:
- Сбой развертывания: на портале Azure отображается сбой развертывания.
- Развертывание выполнено успешно, но виртуальная машина не запустится: виртуальная машина отображает остановленную или неудачную работу.
- Виртуальная машина запущена, но недоступна: сбой Secure Shell (SSH), зависание загрузки или сбой расширений.
| Симптом | Вероятная область |
|---|---|
| Развертывание Azure Resource Manager завершается сбоем | Шаблон, квота, регион, изображение, условия |
| Виртуальная машина зависла в подготовке | Cloud-init, расширение, конфигурация ОС |
| Виртуальная машина работает, но нет SSH | Сеть, группа безопасности сети (NSG), конфигурация SSH |
Симптомы
Сбой настройки
При развертывании виртуальной машины из пользовательского образа Linux возникает типичный сбой подготовки ресурсов. В этом сценарии:
- Виртуальная машина остается в состоянии создания до 40 минут.
- Развертывание в конечном итоге завершается ошибкой.
- Azure сообщает об ошибке подготовки ОС.
В следующем примере показано следующее сообщение об ошибке:
Примечание.
Убедитесь, что образ Linux правильно подготовлен (параметризован).
Deployment failed. Correlation ID: aaaa0000-bb11-2222-33cc-444444dddddd. {
"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.
Дополнительные условия
Некоторые образы Marketplace (отличные от тех, которые требуются в Azure) требуют, чтобы пользователь принял условия для их развертывания.
Ниже приведено типичное сообщение об ошибке во время развертывания при использовании Azure CLI для развертывания таких образов Marketplace:
Message: Offer with PublisherId: 'xxxx', OfferId: 'XXXXlinux-aarch64' cannot be purchased due to validation errors.
For more information see details. Correlation Id: 'aaaa0000-bb11-2222-33cc-444444dddddd' You have not accepted the legal terms on this subscription: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'
for this plan. Before the subscription can be used, you need to accept the legal terms of the image. To read and accept legal terms, use the Azure CLI commands described at
https://go.microsoft.com/fwlink/?linkid=2110637 or the PowerShell commands available at https://go.microsoft.com/fwlink/?linkid=862451. Alternatively, deploying via the Azure portal
provides a UI experience for reading and accepting the legal terms. Offer details: publisher='llll' offer = 'xxxxxxx', sku = 'xxxxx-xxx,
Correlation Id: 'aaaa0000-bb11-2222-33cc-444444dddddd'...
Резолюция
Для решения используйте один из следующих вариантов:
- Используйте Azure CLI.
- Используйте Azure PowerShell.
- Разверните компьютер на портале Azure и примите условия во время процесса развертывания.
Почему происходит сбой развертывания виртуальных машин Linux
Сбои в предоставлении ресурсов обычно возникают по нескольким причинам, в том числе:
- Отсутствует настройка или неправильно настроенный агент
Убедитесь, что агент существует и работает правильно с помощью cloud-init. Если образ не поддерживает эту конфигурацию, просмотрите эти действия.
- Неправильная конфигурация образа
Рекомендации по настройке образов с помощью cloud-init см. в разделе "Требования к образам Azure".
- Не удалось принять условия для конкретного изображения
Примите условия с помощью PowerShell, Azure CLI или портала 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
Примечание.
Замените следующие значения, как они сопоставляются с вашей ситуацией: 1$resourceGroup, $location, , $storageacct, $vmName$brokenImageNameи $sshPubkeyPath.
Проверка последовательной консоли
Чтобы определить, почему произошел сбой предоставления ресурсов, проверьте журнал последовательной консоли. Этот журнал записывает события ранней загрузки и подготовки.
При создании виртуальной машины необходимо включить диагностику загрузки. Если ваш образ постоянно не удается подготовить, разверните новую виртуальную машину, используя тот же образ и включенную диагностику загрузки. Затем скачайте последовательный журнал с помощью портала Azure или Azure CLI.
az vm boot-diagnostics get-boot-log-uris --name $vmName --resource-group $resourceGroup
Примечание.
Замените следующие значения, как они сопоставляются с вашей ситуацией: $resourceGroup и $vmName.
Понимание журнала серийных событий для системных событий и событий настройки
При создании виртуальной машины cloud-init запускается и пытается выполнить следующие действия:
- Подключите ISO-файл.
- Установите сетевое подключение.
- Задайте свойства, которые передаются во время создания виртуальной машины.
- Подключите временный диск (на поддерживаемых размерах виртуальных машин).
- Уведомите платформу Azure о завершении начальной конфигурации ОС.
Как интерпретировать журнал последовательной консоли
Последовательная консоль записывает активность на раннем этапе загрузки, в том числе:
- Инициализация ядра
- Конфигурация сети
- Выполнение cloud-init
- запуск агента виртуальной машины Linux Azure
Вам не нужно понимать каждую запись. Вместо:
- Определите последнюю успешную подсистему (сеть, cloud-init, SSH).
- Сразу после этого проверьте наличие ошибок, таких как
error,failилиexception. - Сопоставьте точку сбоя с разделом распространённых ошибок ниже.
| Системные события и ключевые сведения | Последовательный журнал | Примечания. |
|---|---|---|
| Выпуск ядра и версия ядра | [ 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 | [ 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-маршруты для различных конечных точек, таких как подсеть VNet, конечная точка Azure (168.63.129.16) и сервер метаданных экземпляра Azure/конечная точка IMDS (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. |
Авторизованные ключи 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, а закрытые ключи хранятся на серверах 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@myVmNamessh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIbGOVk/IMfL+RZBDo6YlfbKncVTIBy7wSrqL5ixX6yZ root@myVmNamessh-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 ttyS0myVmName 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 виртуальная машина успешно завершила подготовку? Был ли обработчик расширения виртуальной машины запущен агентом Linux Azure после успешной подготовки? Агент 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. Для обеспечения виртуальные машины с cloud-init 21.1 или более ранних версий нуждаются в этом драйвере. Дополнительные сведения см. в разделе "Требования к изображениям".
Виртуальные машины с cloud-init 21.2 или более поздней версии успешно развертываются. Однако пользовательские данные недоступны для этих виртуальных машин, предотвращая развертывание паролей и других конфиденциальных данных.
При первой подготовке виртуальной машины в Azure узел Azure предоставляет виртуальной машине provisioning cdrom iso disk. Этот диск подготовки предоставляется виртуальной машине через /dev/sr0. На диске подготовки есть манифест подготовки, содержащий сведения о подготовке виртуальной машины. Ожидается, что агент подготовки в виртуальной машине подключает диск подготовки, считывает манифест подготовки и подготавливает виртуальную машину соответствующим образом.
Так как диск развертывания является диском cdrom iso disk, ядро Linux требует, чтобы драйвер UDF подключал этот диск.
Документация Майкрософт по образам 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 или более поздней версии.
Примечание.
Проблема dhclient с правами доступа была разрешена в cloud-init 22.4 и в более поздних версиях. Дополнительные сведения см. в статье об проблемах cloud-init 3956.
Получите дополнительные журналы для устранения сбоев подготовки виртуальных машин Linux
Если вам потребуется больше журналов из виртуальной машины для понимания проблем, используйте заранее настроенного пользователя для входа в последовательную консоль. Если у вас нет заранее настроенного пользователя, вы можете либо заново создать образ, чтобы добавить его, либо использовать средство восстановления AZ VM Repair для подключения диска ОС виртуальной машины, которая не была подготовлена, к другой виртуальной машине.
az vm repair create \
--resource-group $resourceGroup \
--name $vmName \
--repair-username repairadm \
--repair-password $password \
--repair-vm-name repairVM \
--verbose
Примечание.
Замените следующие значения, как они сопоставляются с вашей ситуацией: $resourceGroup, $vmNameи $password.
Общие сведения о cloud-init.log
Если у вас есть доступ к журналам cloud-init, ознакомьтесь с документацией по устранению неполадок с cloud-init.
Сбор журналов действий
Чтобы начать устранение неполадок, соберите журналы действий, чтобы определить ошибку, связанную с проблемой. Следующие ссылки содержат подробные сведения о следующем процессе.
Просмотр операций развертывания
Просмотр журналов действий для управления ресурсами Azure
Получите поддержку
Если вы ссылаетесь на рекомендации, но по-прежнему не можете устранить проблему, обратитесь в службу поддержки Майкрософт. Выберите соответствующий продукт и раздел поддержки, чтобы привлечь правильную службу поддержки.
Выбор продукта:
Product Family: Azure
Product: Virtual Machine Running Linux
Support Topic: <COMPLETE>
Support Subtopic: <COMPLETE>