Partager via


Résoudre 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 classique se produit après la création d’une image personnalisée, puis le déploiement d’une machine virtuelle à partir de celle-ci, vous rencontrez ensuite une expérience à 40 minutes où l’état de la machine virtuelle s’affiche creatinget 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."
      }
    ]
  }
}

Vous voyez ensuite l’état de la machine virtuelle marqué comme failed.

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

En règle générale, les échecs d’approvisionnement peuvent se produire pour plusieurs raisons, telles que :

  • Approvisionnement manquant /agent configuré incorrectement

    Vous devez vous assurer qu’un agent est présent et fonctionne correctement, que vous devez utiliser cloud-init ou si votre image ne prendra pas en charge cela, vous pouvez passer en revue ces étapes.

  • Configuration incorrecte de l’image

    Nous avons des conseils sur la façon dont les images doivent être configurées avec cloud-init et d’autres exigences d’image Azure, vérifiez cela.

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

Pour identifier la raison de l’échec de l’approvisionnement, vous devez commencer par le journal série, ce qui est disponible pour vous en déployant la machine virtuelle avec les diagnostics de démarrage Azure.

Vous devez déployer une nouvelle machine virtuelle avec les diagnostics de démarrage activés pour la machine virtuelle avec l’image défaillante pour accéder 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

Lorsque la machine virtuelle est créée pour la première fois, cloud-init démarre et tente de monter une iso, établir une connectivité réseau, définir les propriétés passées lors de la création de la machine virtuelle, monter le disque éphémère (sur les tailles de machine virtuelle prises en charge) et signaler à la plateforme Azure que la configuration initiale du système d’exploitation a terminé.

Événements système et informations clés Journal série Notes
Version 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 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 système 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 réseau système courantes entre 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.
Objectifs de mise en réseau et d’état réseau approfondis pour Ubuntu et distributions où la mise en réseau 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.
Objectifs de mise en réseau et d’état réseau approfondis pour RHEL/CentOS et distributions où la mise en réseau 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.
Objectifs de mise en réseau et d’état réseau approfondis pour SUSE/SLES et distributions où la mise en réseau 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 a-t-il atteint suffisamment 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.
Phases cloud-init et 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 carte réseau (haut/bas) et adresses IP de carte réseau. Indique si les adresses IP de carte réseau ont été correctement configurées et affectées. L’attribution d’adresses IP peut être dynamique via DHCP ou configurée statiquement. [ 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 différents points de terminaison tels que le sous-réseau de réseau virtuel, le point de terminaison Azure (168.63.129.16) et le point de terminaison Azure Instance Metadata Server/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-infoRecherchez , Route IPv4 infoou Route IPv6 info.
Clés autorisées SSH pour les utilisateurs sur la machine virtuelle. Le authorized_keys fichier dans SSH spécifie les clés SSH qui peuvent être utilisées pour la connexion au compte d’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é hôte SSH. Une clé 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, généralement à l’aide des algorithmes RSA, DSA ou ECDSA. Les clés hôtes publiques sont stockées sur et/ou distribuées aux clients SSH, et les clés privées sont stockées sur des 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
Generating public/privateRecherchez , , Your identification has been saved inou The key fingerprint is:SHA.
Vidage des empreinte digitale de clé 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: #############################################################
BEGIN SSH HOST KEY FINGERPRINTS Recherchez et END SSH HOST KEY FINGERPRINTS.
Vidage 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-----
BEGIN SSH HOST KEY KEYS Recherchez 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.
Secure Shell serverRecherchez , 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:
Accounts ServiceRecherchez , , Login ServicePermit User Sessions, Login Prompts, et login:.
L’agent Linux Azure a-t-il démarré correctement ? [ [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 correctement terminé l’approvisionnement ? Le gestionnaire d’extension de machine virtuelle a-t-il démarré par l’agent Linux Azure après la réussite de l’approvisionnement ? L’agent Linux Azure démarre uniquement le gestionnaire d’extensions de machine virtuelle s’il détecte que le provisionnement de machines virtuelles 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 ? failRecherchez , error, warnet 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, il est nécessaire que la machine virtuelle approvisionne, consultez les exigences en matière d’image.

Lorsqu’une machine virtuelle est configurée pour la première fois sur Azure, l’hôte Azure présente un « disque iso cdrom de provisionnement » à 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 monter correctement ce disque. Cette documentation est référencée dans la documentation Microsoft sur les images Linux. Pour cette machine virtuelle, les journaux indiquent que le disque d’approvisionnement n’a pas pu être monté, ce qui a provoqué l’échec de l’approvisionnement de machines virtuelles. La raison la plus probable est due à des pilotes UDF manquants ou bloqués.

Solution : vérifiez que le pilote UDF est configuré pour être chargé dans le noyau.

Un moyen courant pour les pilotes UDF à bloquer consiste à utiliser des configurations dans /etc/modprobe.d/. Collaborez avec le propriétaire client/image pour vous assurer que les pilotes UDF Linux sont présents et non bloqués. Consultez cet article sur le blocage/le déblocage des pilotes de noyau.

Caractères Unicode dans le problème des 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 : Cela se produit parce que les balises de machine virtuelle ont des caractères non ascii et que la version de cloud-init est antérieure à 20.3.

Solution : utilisez ou vérifiez que votre image prend en charge cloud-init 20.3 ou une version ultérieure, ou supprimez des caractères non ascii des balises de machine virtuelle.

Mot de passe avec des 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 : cela se produit parce que le mot de passe fourni comporte des caractères non pris en charge (non ascii).

Solution : indiquez un mot de passe qui comporte uniquement 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 versions antérieures de cloud-init (avant la version 20.3) exécutent DHCP en copiant et en exécutant dhclient dans /var/tmp. Si /var/tmp elle est montée en tant que noexec (aucune exécution) par la machine virtuelle, DHCP échoue en raison de dhclient l’absence d’autorisations d’exécution dans /var/tmp.

Les versions >cloud-init = 20.3 contiennent un correctif qui revient et exécute dhclient « as-is » (en ne le copiant pas et en l’exécutant s’il /var/tmp existe des problèmes d’autorisations).

Solution : pour les machines virtuelles exécutant cloud-init antérieures à la version 20.3, configurez la machine virtuelle afin qu’elle ne soit pas montée en tant noexecque /var/tmp . Vous pouvez également mettre à niveau le package cloud-init de la machine virtuelle vers une 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 d’autres journaux d’activité

Si vous constatez que vous avez besoin d’autres journaux d’activité de la machine virtuelle pour comprendre les problèmes, vous pouvez peut-être effectuer une connexion SSH à la machine virtuelle à l’aide de la console série à l’aide d’un utilisateur qui est intégré à l’image. Si vous n’avez pas d’utilisateur connecté, vous pouvez recréer l’image avec un utilisateur ou utiliser l’outil de réparation de machine virtuelle AZ qui montera le disque du système d’exploitation de la machine virtuelle qui n’a pas pu être approvisionné 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 la cloud-init.log

Lorsque vous avez accès aux journaux cloud-init, consultez la documentation de résolution des problèmes 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 vous êtes référé aux instructions et que vous ne parvenez toujours pas à résoudre votre problème, vous pouvez créer une demande de support. Dans ce cas, sélectionnez le bon produit et la rubrique de support, ce qui implique l’équipe de support appropriée.

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.