Добавление образов Linux в Azure Stack Hub Marketplace
Вы можете развернуть виртуальные машины Linux в Azure Stack Hub, добавив образ под управлением Linux в Azure Stack Hub Marketplace. Проще всего добавить образ Linux в Azure Stack Hub с помощью функции управления Marketplace. Эти образы были подготовлены и протестированы на совместимость с Azure Stack Hub.
Управление Marketplace
Сведения о том, как скачать образы Linux из Azure Marketplace, см. в статье Скачивание элементов Marketplace в Azure Stack Hub. Выберите образы Linux, которые вы хотите предложить пользователям в Azure Stack Hub.
Эти образы часто обновляются, поэтому регулярно проверяйте их актуальность.
Подготовка собственного образа
По возможности скачивайте образы, доступные в разделе управления Marketplace. Эти образы подготовлены и протестированы с помощью Azure Stack Hub.
Минимальный поддерживаемый агент Linux для Azure
Чтобы получить поддержку агента и расширений Azure Linux в Azure Stack Hub, версия агента Linux на виртуальной машине Linux должна быть ниже или равна версии 2.2.10, а Azure Stack Hub должна выполнять сборку, которая находится в двух выпусках текущего выпуска. Сведения об обновлениях Azure Stack Hub см. в заметках о выпуске Azure Stack Hub.
По состоянию на июль 2020 г. минимальная поддерживаемая версия — 2.2.41 для агента Linux. Если версия агента Linux более ранняя, чем версия 2.2.10, необходимо обновить виртуальную машину с помощью диспетчера пакетов распространения и включить автоматическое обновление.
- Если у поставщика дистрибутива нет минимальной версии агента Linux в репозиториях пакетов, система по-прежнему поддерживается. Если версия агента Linux ниже версии 2.1.7, необходимо включить функцию автоматического обновления агента. Он получит последнюю версию кода для обработки расширений.
- Если версия агента Linux более ранняя, чем версия 2.2.10, или если система Linux не поддерживается, возможно, вам потребуется обновить агент перед получением поддержки.
- Если версия агента Linux настраивается издателем, корпорация Майкрософт может направить вас на издателя для поддержки агента поддержки или поддержки для конкретных расширений из-за настройки. Сведения об обновлении агента Linux см. в статье " Обновление агента Linux Azure на виртуальной машине".
Проверка версии агента Linux
Чтобы проверить версию агента Linux, выполните следующую команду:
waagent --version
Например, если вы выполняете эту команду в Ubuntu 18.04, вы увидите выходные данные:
WALinuxAgent - 2.2.45
Python - 3.6.9
Goal State Agent - 2.2.48.1
Дополнительные сведения об агенте см. в разделе вопросов и ответов по WALinuxAgent.
Подготовка собственного образа Linux
Можно подготовить свой собственный образ Linux с помощью следующих инструкций.
- Подготовка виртуальной машины на основе CentOS для Azure
- Подготовка виртуального жесткого диска Debian для Azure
- Red Hat Enterprise Linux
- SLES и OpenSUSE
- Сервер Ubuntu
Cloud-init
Cloud-init можно использовать для настройки виртуальной машины Linux, используя следующие инструкции PowerShell.
Шаг 1. Создание файла cloud-init.txt с облачной конфигурацией
Создайте файл cloud-init.txt и вставьте в него приведенную ниже облачную конфигурацию:
#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
Шаг 2. Добавление ссылки на cloud-init.txt во время развертывания виртуальной машины Linux
Отправьте файл в учетную запись хранения Azure, учетную запись хранения Azure Stack Hub или репозиторий GitHub, доступный для виртуальной машины Azure Stack Hub в Linux.
В настоящее время использование cloud-init для развертывания виртуальных машин поддерживается только в REST, PowerShell и Azure CLI и не имеет связанного пользовательского интерфейса портала в Azure Stack Hub.
Краткое руководство. Создание виртуальной машины сервера Linux с помощью PowerShell в Azure Stack Hub для создания виртуальной машины Linux с помощью PowerShell. Обязательно укажите ссылку на cloud-init.txt
-CustomData
этот флаг:
$VirtualMachine =Set-AzVMOperatingSystem -VM $VirtualMachine `
-Linux `
-ComputerName "MainComputer" `
-Credential $cred -CustomData "#include https://cloudinitstrg.blob.core.windows.net/strg/cloud-init.txt"
Добавление образа в Marketplace
Следуйте указаниям по добавлению образа в marketplace. Убедитесь, что для параметра OSType
задано значение Linux
.
После добавления образа в Marketplace создается элемент Marketplace, и пользователи могут развернуть виртуальную машину Linux.