Добавление образов Linux в Azure Stack Hub Marketplace
Виртуальные машины Linux можно развернуть в центре Azure Stack, добавив образ на основе Linux в центр Azure Stack. Проще всего добавить образ Linux в Azure Stack Hub с помощью функции управления Marketplace. Эти образы были подготовлены и протестированы на совместимость с Azure Stack Hub.
Управление Marketplace
Сведения о том, как скачать образы Linux из Azure Marketplace, см. в статье Скачивание элементов Marketplace в Azure Stack Hub. Выберите образы Linux, которые вы хотите предложить пользователям в Azure Stack Hub.
Эти образы часто обновляются, поэтому регулярно проверяйте их.
Подготовка собственного образа
По возможности скачивайте образы, доступные в разделе управления Marketplace. Эти образы были подготовлены и протестированы с помощью центра Azure Stack.
Минимальный поддерживаемый агент Linux для Azure
Чтобы получить поддержку для агента и расширений Azure Linux в центре Azure Stack, версия агента Linux на виртуальной машине Linux должна быть позже или равна версии 2.2.10, а центр Azure Stack должен запустить сборку в двух выпусках текущего выпуска. Дополнительные сведения об обновлениях центра Azure Stack см. в разделе заметки о выпуске центра Azure Stack.
По состоянию на июль 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 для развертывания виртуальных машин поддерживается только для остальных, PowerShell и Azure CLI и не имеет связанного пользовательского интерфейса портала в центре Azure Stack.
Вы можете выполнить инструкции из краткого руководства по созданию виртуальной машины сервера Linux с помощью PowerShell в центре Azure Stack , чтобы создать виртуальную машину 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.