Partager via


Détecter les problèmes lors du déploiement de machines virtuelles Linux

S’applique à : ✔️ Machines virtuelles Linux

Note

CentOS référencé dans cet article est une distribution Linux et atteint la fin de vie (EOL). Faites le point sur votre utilisation et organisez-vous en conséquence. Pour plus d’informations, consultez les conseils sur la fin de vie centOS.

Lorsque vous essayez de créer une machine virtuelle Azure, les erreurs courantes que vous rencontrez sont les échecs de configuration ou d’allocation.

  • Un échec de configuration se produit lorsque l’image du système d’exploitation ne parvient pas à se charger en raison d’étapes préparatoires incorrectes ou de la mauvaise sélection des paramètres pendant la capture d’image à partir du portail.
  • Un échec d’allocation se produit lorsque le cluster ou la région n’a pas de ressources disponibles ou ne prend pas en charge la taille de machine virtuelle requise.

Si le problème lié à Azure n’est pas traité dans cet article, parcourez les forums Azure sur MSDN et Stack Overflow. Vous pouvez publier votre problème sur ces forums ou @AzureSupport sur Twitter. Vous pouvez également envoyer une demande de support Azure. Pour envoyer une demande de support sur la page Prise en charge Azure, sélectionnez Obtenir de l’aide.

Symptômes

Un scénario d’échec d’approvisionnement typique se produit après la création d’une image personnalisée puis le déploiement d’une machine virtuelle à partir de celle-ci. L’état de la machine virtuelle affiche alors creatingdurant une période allant jusqu’à 40 minutes et vous voyez ce message d’erreur :

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/.

Ou :

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."
      }
    ]
  }
}

L’état de la machine virtuelle indique alors failed.

Pourquoi des échecs d’approvisionnement se produisent-ils ?

Généralement, les échecs d’approvisionnement peuvent survenir pour plusieurs raisons, telles que :

  • Approvisionnement manquant/agent configuré de manière incorrecte

    Vous devez vous assurer qu’un agent est présent et fonctionne correctement. Vous devez utiliser cloud-init. Si votre image ne le prend pas en charge, vous pouvez consulter ces étapes.

  • Configuration d’image incorrecte

    Consultez nos conseils sur la manière dont les images doivent être configurées avec cloud-init et d’autres exigences relatives aux images Azure.

Résoudre les problèmes des échecs de provisionnement

Pour identifier la raison d’un échec d’approvisionnement, vous devez commencer par le journal série. Celui-ci est disponible en déployant la machine virtuelle avec les diagnostics de démarrage Azure.

Vous devez déployer une nouvelle machine virtuelle avec diagnostics de démarrage activés pour que la machine virtuelle avec l’image défaillante accède aux événements d’approvisionnement dans le journal série.

# 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

Pour afficher le journal série, vous pouvez accéder au portail ou exécuter la commande ci-dessous pour télécharger le journal serialConsoleLogBlobUri :

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

Présentation du journal série pour les événements système et les événements d’approvisionnement

Lors de la création initiale de la machine virtuelle, cloud-init démarre et essaie de monter une image ISO, d’établir la connectivité réseau, de définir les propriétés transmises lors de la création de la machine virtuelle, de monter le disque éphémère (sur les tailles de machines virtuelles prises en charge) et de renvoyer un signal à la plateforme Azure pour indiquer l’achèvement de la configuration initiale du système d’exploitation.

Événements système et informations clés Journal série Notes
Publication du noyau et version du noyau [ 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) Apparaît au début du journal série.
Options de ligne de commande du noyau [ 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
Apparaît au début du journal série. Recherchez command line:.
Version de 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) Recherchez systemd.
Cibles systemd atteintes [ [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.
Recherchez Reached target.
Cibles de mise en réseau systemd communes à différentes distributions [ [0;32m OK [0m] Reached target Network (Pre).
[ [0;32m OK [0m] Reached target Network.
[ [0;32m OK [0m] Reached target Network is Online.
Recherchez Reached target Network.
État de mise en réseau approfondi et cibles de mise en réseau pour Ubuntu et les distributions où la mise en réseau du système est gérée par 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.
Recherchez network ou networkd.
État de mise en réseau approfondi et cibles de mise en réseau pour RHEL/CentOS et les distributions où la mise en réseau du système est gérée par 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.
Recherchez network ou Network Manager.
État de mise en réseau approfondi et cibles de mise en réseau pour SUSE/SLES et les distributions où la mise en réseau du système est gérée par 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.
Recherchez network ou wicked.
Le démarrage est-il allé assez loin pour que cloud-init démarre ? Starting Initial cloud-init job (pre-networking)...
Starting Initial cloud-init job (metadata service crawler)...
Recherchez Starting Initial cloud-init job.
Version de cloud-init et phases cloud-init atteintes [ 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
Recherchez Cloud-init v.
Interfaces réseau (cartes réseau), états de cartes réseau (activé/désactivé) et adresses IP de cartes réseau. Indique si les adresses IP de carte réseau ont été correctement configurées et attribuées. L’attribution d’adresses IP peut être dynamique, via DHCP, ou configurée de manière statique. [ 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: +--------+------+-----------------------------+---------------+--------+-------------------+
Recherchez ci-info ou Net device info.
Itinéraires IP (IPv4 et IPv6). Affiche les itinéraires IP pour divers points de terminaison tels que le sous-réseau virtuel, le point de terminaison Azure (168.63.129.16) et le point de terminaison du serveur Azure Instance Metadata/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: +-------+-------------+---------+-----------+-------+
Recherchez ci-info, Route IPv4 infoou Route IPv6 info.
Clés SSH autorisées pour les utilisateurs sur la machine virtuelle. Le fichier authorized_keys dans SSH spécifie les clés SSH qui peuvent être utilisées pour se connecter au compte utilisateur pour lequel le fichier est configuré. 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: +---------+-------------------------------------------------------------------------------------------------+---------+---------+
Recherchez Authorized keys.
Génération de clé d’hôte SSH. Une clé d’hôte est une clé de chiffrement utilisée pour authentifier les ordinateurs dans le protocole SSH. Les clés d’hôte sont des paires de clés qui utilisent généralement les algorithmes RSA, DSA ou ECDSA. Les clés d’hôte publiques sont stockées sur les clients SSH et/ou distribuées à ces derniers, tandis que les clés privées sont stockées sur les serveurs 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
Recherchez Generating public/private, Your identification has been saved in, The key fingerprint is:ou SHA.
Image mémoire des empreintes de clés d’hôte 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: #############################################################
Recherchez BEGIN SSH HOST KEY FINGERPRINTS et END SSH HOST KEY FINGERPRINTS.
Image mémoire des clés d’hôte 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-----
Recherchez BEGIN SSH HOST KEY KEYS et END SSH HOST KEY KEYS.
Le serveur SSH a-t-il démarré ? 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.
Recherchez Secure Shell server, OpenSSH server daemonou OpenSSH Daemon.
Les sessions utilisateur et les connexions utilisateur sont-elles autorisées ? La machine virtuelle affiche-t-elle une invite de connexion utilisateur ? 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:
Recherchez Accounts Service, Permit User Sessions, Login Service, Login Promptset login:.
L’agent Linux Azure a-t-il démarré avec succès ? [ [0;32m OK [0m] Started Azure Linux Agent.
2020/10/28 17:46:52.082569 INFO Daemon Azure Linux Agent Version:2.2.45
Recherchez Azure Linux Agent.
Du point de vue de l’agent Linux Azure, la machine virtuelle a-t-elle terminé l’approvisionnement avec succès ? L’agent Linux Azure a-t-il démarré le gestionnaire d’extensions de la machine virtuelle une fois l’approvisionnement réussi ? L’agent Linux Azure ne démarre le gestionnaire d’extensions de la machine virtuelle que s’il détecte que l’approvisionnement de la machine virtuelle a réussi. 2020/10/28 17:46:52.586765 INFO Daemon Finished provisioning Recherchez INFO Daemon Finished provisioning.
Y a-t-il eu des erreurs, des échecs ou des exceptions dans le journal série ? Recherchez fail, error, warn et exception dans les journaux série.

Erreurs courantes

Module UDF désactivé

Erreur dans le journal série :

[   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.

Erreur dans 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."

Cause : Le pilote UDF n’est pas chargé dans le noyau, or cela est nécessaire à l’approvisionnement de la machine virtuelle. Consultez les exigences relatives aux images.

Lors de l’approvisionnement initial d’une machine virtuelle sur Azure, l’hôte Azure présente un « disque ISO CD-ROM d’approvisionnement » à la machine virtuelle. Ce disque d’approvisionnement est généralement présenté à la machine virtuelle via /dev/sr0. Dans le disque d’approvisionnement, il existe un manifeste d’approvisionnement qui contient les informations d’approvisionnement d’une machine virtuelle. L’agent d’approvisionnement dans la machine virtuelle est censé monter le disque d’approvisionnement, lire le manifeste d’approvisionnement et approvisionner la machine virtuelle en conséquence.

Étant donné que le disque d’approvisionnement est un cdrom iso disk, le pilote UDF Linux est requis par le noyau pour pouvoir monter ce disque avec succès. La documentation relative aux images Linux de Microsoft référencie cela. Pour cette machine virtuelle, les journaux indiquent que le disque d’approvisionnement n’a pas pu être monté, ce qui a entraîné l’échec de l’approvisionnement de la machine virtuelle. La raison de cet échec est probablement due à des pilotes UDF manquants ou bloqués.

Solution : Assurez-vous que le pilote UDF est configuré pour être chargé dans le noyau.

Un moyen courant de bloquer les pilotes UDF est par le biais des configurations dans /etc/modprobe.d/. Consultez le propriétaire du client/de l’image pour vous assurer que les pilotes UDF Linux sont présents et ne sont pas bloqués. Consultez cet article sur le blocage/déblocage des pilotes du noyau.

Problème de caractères Unicode dans les balises de machine virtuelle

Erreur dans 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'

Cause : Ce problème se produit, car les balises de machine virtuelle comportent des caractères non-ASCII et la version de cloud-init est antérieure à 20.3.

Solution : Veillez à utiliser une image qui prend en charge cloud-init 20.3 ou version ultérieure, ou supprimez les caractères non-ASCII des balises de machine virtuelle.

Mot de passe avec caractères Unicode

Erreur dans 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)

Cause : Ce problème se produit, car le mot de passe fourni contient des caractères non pris en charge (non-ASCII).

Solution : Indiquez un mot de passe qui ne contient que des caractères ASCII.

Autorisation dhclient

Erreur dans 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'

Cause : Les anciennes versions de cloud-init (antérieures à la version 20.3) exécutent DHCP en copiant et en exécutant dhclient dans /var/tmp. Si /var/tmp est monté comme noexec (pas d’exécution) par la machine virtuelle, DHCP échoue car dhclient ne dispose pas des autorisations pour s’exécuter dans /var/tmp.

Les versions >=20.3 de cloud-init contiennent un correctif qui utilise les paramètres par défaut et exécute dhclient « tel quel » (en ne le copiant pas et en ne l’exécutant pas dans /var/tmp s’il existe des problèmes d’autorisations).

Solution : Pour les machines virtuelles exécutant les versions de cloud-init antérieures à la version 20.3, configurez la machine virtuelle de sorte que /var/tmp ne soit pas monté comme noexec. Vous pouvez également mettre à niveau le package cloud-init de la machine virtuelle vers la version >= 20.3.

Note

Le dhclient problème d’autorisation a été résolu dans cloud-init 22.4 et versions ultérieures. Pour plus d’informations, consultez les problèmes cloud-init 3956.

Obtention de plus de journaux

Si vous constatez que vous avez besoin de plus de journaux de la machine virtuelle pour comprendre les problèmes, vous pouvez peut-être vous connecter en SSH à la machine virtuelle en utilisant la console série à l’aide d’un utilisateur intégré à l’image. Si vous n’avez pas d’utilisateur intégré, vous pouvez soit recréer l’image avec un utilisateur, soit utiliser l’outil de réparation de machine virtuelle Azure, qui montera le disque du système d’exploitation de la machine virtuelle dont l’approvisionnement a échoué sur une autre machine virtuelle.

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

Présentation de cloud-init.log

Lorsque vous avez accès aux journaux cloud-init, consultez la documentation relative au dépannage de cloud-init.

Collecte des journaux d’activité

Pour résoudre les problèmes, commencez par collecter les journaux d’activité afin d’identifier l’erreur associée au problème. Les liens suivants contiennent des informations détaillées sur la marche à suivre.

Voir les opérations de déploiement

Afficher les journaux d’activité pour gérer les ressources Azure

Obtenir de l’aide

Si vous avez consulté le guide et que vous ne parvenez toujours pas à résoudre votre problème, vous pouvez ouvrir un cas de support. Le cas échéant, sélectionnez le produit et la rubrique de support appropriés. Cela vous mettra en relation avec la bonne équipe de support.

Sélection du produit de la demande :

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

Contactez-nous pour obtenir de l’aide

Pour toute demande ou assistance, créez une demande de support ou posez une question au support de la communauté Azure. Vous pouvez également soumettre des commentaires sur les produits à la communauté de commentaires Azure.