Partage via


Ajouter des images Linux dans la Place de marché Azure Stack Hub

Vous pouvez déployer des machines virtuelles Linux sur Azure Stack Hub en ajoutant une image Linux dans la Place de marché Azure Stack Hub. Le moyen le plus simple d’ajouter une image Linux à Azure Stack Hub est de passer par la gestion de la Place de marché. Ces images ont été préparées et testées pour leur compatibilité avec Azure Stack Hub.

Gestion de la Place de marché

Pour ajouter des images Linux à partir de la Place de marché Azure, consultez Télécharger des éléments de Place de marché depuis Azure vers Azure Stack Hub. Sélectionnez les images Linux que vous souhaitez proposer aux utilisateurs sur votre système Azure Stack Hub.

Comme les mises à jour pour ces images sont fréquentes, revenez vérifier régulièrement.

Préparer votre propre image

Dans la mesure du possible, téléchargez les images disponibles par l’intermédiaire de la gestion de la Place de marché. Ces images ont été préparées et testées avec Azure Stack Hub.

Agent Linux Azure minimal pris en charge

Pour obtenir le support de l’agent Linux Azure et des extensions dans Azure Stack Hub, la version de l’agent Linux sur la machine virtuelle Linux doit être supérieure ou égale à la version 2.2.10, et Azure Stack Hub doit exécuter une build avec une marge de deux versions autour de la version actuelle. Pour plus d’informations sur les mises à jour d’Azure Stack Hub, consultez Notes de publication Azure Stack Hub.

Depuis juillet 2020, la version minimale prise en charge est 2.2.41 pour l’agent Linux. Si la version de l’agent Linux est antérieure à la version 2.2.10, vous devez mettre à jour la machine virtuelle à partir du gestionnaire de package de distribution et activer la mise à jour automatique.

  • Si le fournisseur de distribution n’a pas la version minimale de l’agent Linux dans les dépôts du package, le système est toujours pris en charge. Si la version de l’agent Linux est ultérieure à la version 2.1.7, vous devez activer la fonctionnalité de mise à jour automatique de l’agent. Elle récupère la dernière version du code pour la gestion des extensions.
  • Si la version de l’agent Linux est antérieure à la version 2.2.10 ou si le système Linux n’est plus pris en charge, nous pouvons vous demander de mettre à jour l’agent avant d’obtenir le support.
  • Si la version de l’agent Linux est personnalisée par un éditeur, Microsoft peut vous diriger vers le serveur de l’éditeur pour le support de l’agent ou un support propre à l’extension, en raison de la personnalisation. Pour mettre à niveau l’agent Linux, consultez Comment mettre à jour l’agent Linux Azure sur une machine virtuelle.

Vérifier la version de votre agent Linux

Pour vérifier la version de votre agent Linux, exécutez :

waagent --version

Par exemple, si vous exécutez cette commande sur Ubuntu 18.04, vous voyez la sortie :

WALinuxAgent - 2.2.45
Python - 3.6.9
Goal State Agent - 2.2.48.1

Pour plus d’informations sur l’agent, consultez le FAQ sur WALinuxAgent.

Préparer votre propre image Linux

Vous pouvez préparer votre propre image Linux en appliquant les instructions suivantes :

Cloud-Init

Vous pouvez utiliser Cloud-init pour personnaliser votre machine virtuelle Linux et les instructions PowerShell suivantes.

Étape 1 : Créer un fichier cloud-init.txt avec votre configuration cloud

Créez un fichier nommé cloud-init.txt et collez-y la configuration de cloud suivante :

#cloud-config
package_upgrade: true
packages:
  - nginx
  - nodejs
  - npm
write_files:
  - owner: www-data:www-data
    path: /etc/nginx/sites-available/default
    content: |
      server {
        listen 80;
        location / {
          proxy_pass http://localhost:3000;
          proxy_http_version 1.1;
          proxy_set_header Upgrade $http_upgrade;
          proxy_set_header Connection keep-alive;
          proxy_set_header Host $host;
          proxy_cache_bypass $http_upgrade;
        }
      }
  - owner: azureuser:azureuser
    path: /home/azureuser/myapp/index.js
    content: |
      var express = require('express')
      var app = express()
      var os = require('os');
      app.get('/', function (req, res) {
        res.send('Hello World from host ' + os.hostname() + '!')
      })
      app.listen(3000, function () {
        console.log('Hello world app listening on port 3000!')
      })
runcmd:
  - service nginx restart
  - cd "/home/azureuser/myapp"
  - npm init
  - npm install express -y
  - nodejs index.js

Étape 2 : Référencer cloud-init.txt pendant le déploiement de la machine virtuelle Linux

Chargez le fichier dans un compte de stockage Azure, un compte de stockage Azure Stack Hub ou un dépôt GitHub accessible par votre machine virtuelle Linux Azure Stack Hub.

Actuellement, l’utilisation de cloud-init pour le déploiement de machines virtuelles est prise en charge uniquement sur REST, PowerShell et Azure CLI, et elle n’a pas d’interface utilisateur de portail associée sur Azure Stack Hub.

Vous pouvez suivre le guide de Démarrage rapide : Créer une machine virtuelle de serveur Linux avec PowerShell dans Azure Stack Hub pour créer la machine virtuelle Linux à partir de PowerShell. Veillez à référencer le cloud-init.txt dans l’indicateur -CustomData :

$VirtualMachine =Set-AzVMOperatingSystem -VM $VirtualMachine `
  -Linux `
  -ComputerName "MainComputer" `
  -Credential $cred -CustomData "#include https://cloudinitstrg.blob.core.windows.net/strg/cloud-init.txt"

Ajouter votre image dans la Place de marché

Suivez Ajoutez l’image à la Place de Marché. Vérifiez que le paramètre OSType a la valeur Linux.

Une fois que vous avez ajouté l’image dans la Place de marché, un élément de Place de marché est créé et les utilisateurs peuvent déployer une machine virtuelle Linux.

Étapes suivantes