Введение в FreeBSD в Azure
Область применения: ✔️ Виртуальные машины Linux ✔️ Гибкие масштабируемые наборы
В этой статье представлен обзор запуска виртуальной машины FreeBSD в Azure.
Обзор
FreeBSD для Azure — это расширенная операционная система компьютера, используемая для питания современных серверов, настольных компьютеров и внедренных платформ.
Корпорация Майкрософт делает образы FreeBSD доступными в Azure с предварительно настроенным гостевым агентом виртуальной машины Azure. В настоящее время она предлагает образы FreeBSD следующих версий:
- FreeBSD 10.4 в Azure Marketplace
- FreeBSD 11.2 в Azure Marketplace
- FreeBSD 11.3 в Azure Marketplace
- FreeBSD 12.0 в Azure Marketplace
Следующие версии FreeBSD также включают гостевой агент виртуальной машины Azure. Они предлагаются в качестве образов в Фонде FreeBSD:
- FreeBSD 11.4 в Azure Marketplace
- FreeBSD 12.2 в Azure Marketplace
- FreeBSD 13.0 в Azure Marketplace
Агент отвечает за обмен данными между виртуальной машиной FreeBSD и структурой Azure для таких операций, как подготовка виртуальной машины при первом использовании (имя пользователя, пароль, ключ SSH и имя узла) и включение функций для выборочных расширений виртуальных машин.
Что касается будущих версий FreeBSD, стратегия заключается в том, чтобы оставаться в курсе последних выпусков и сделать последние выпуски доступными вскоре после публикации командой разработчиков выпуска FreeBSD.
Создание виртуальной машины FreeBSD с помощью Azure CLI в FreeBSD
Сначала необходимо установить Azure CLI с помощью следующей команды на компьютере FreeBSD:
curl -L https://aka.ms/InstallAzureCli | bash
Если bash не установлен на компьютере FreeBSD, выполните следующую команду перед установкой:
sudo pkg install bash
Если Python не установлен на компьютере FreeBSD, выполните следующие команды перед установкой:
sudo pkg install python38
cd /usr/local/bin
sudo rm /usr/local/bin/python
sudo ln -s /usr/local/bin/python3.8 /usr/local/bin/python
Во время установки вам будет предложено Modify profile to update your $PATH and enable shell/tab completion now? (Y/n)
. Если ответить y
и ввести /etc/rc.conf
как a path to an rc file to update
, может появиться ERROR: [Errno 13] Permission denied
. Чтобы устранить эту проблему, необходимо предоставить разрешение на запись текущему пользователю в файле etc/rc.conf
.
Теперь можно выполнить вход в Azure и создать виртуальную машину FreeBSD. В следующем примере показано, как создать виртуальную машину FreeBSD 11.0. Вы также можете добавить параметр --public-ip-address-dns-name
с глобально уникальным DNS-именем для только что созданного общедоступного IP-адреса.
az login
az group create --name myResourceGroup --location eastus
az vm create --name myFreeBSD11 \
--resource-group myResourceGroup \
--image MicrosoftOSTC:FreeBSD:11.0:latest \
--admin-username azureuser \
--generate-ssh-keys
Затем вы можете войти на виртуальную машину FreeBSD с помощью IP-адреса, напечатанного в выходных данных предыдущего развертывания.
ssh azureuser@xx.xx.xx.xx -i /etc/ssh/ssh_host_rsa_key
Расширения виртуальной машины для FreeBSD
Следующие расширения виртуальной машины поддерживаются в FreeBSD.
VMAccess
Возможности расширения VMAccess :
- сброс пароля исходного пользователя sudo;
- создание пользователя sudo с указанным паролем;
- настройка заданного значения открытого ключа узла;
- Сбросьте открытый ключ узла, предоставленный во время подготовки виртуальной машины, если ключ узла не указан.
- Откройте порт SSH (22) и восстановите
sshd_config
reset_ssh
значение if.true
- Удалите существующего пользователя.
- проверка дисков;
- восстановление добавленного диска.
CustomScript
Возможности расширения CustomScript :
- скачивание предоставленных пользовательских сценариев из службы хранилища Azure или общедоступного внешнего хранилища (например, Github);
- выполнение сценария точки входа;
- поддержка встроенных команд;
- автоматическое преобразование символа новой строки в стиле Windows в сценариях оболочки и Python;
- автоматическое удаление спецификации в сценариях оболочки и Python;
- Защита конфиденциальных данных в
CommandToExecute
.
Примечание.
В настоящий момент виртуальная машина FreeBSD поддерживает только CustomScript версии 1.x.
Проверка подлинности: имена пользователей, пароли и ключи SSH
При создании виртуальной машины FreeBSD с помощью портал Azure необходимо указать имя пользователя, пароль или открытый ключ SSH.
Имена пользователей для развертывания виртуальной машины FreeBSD в Azure не должны соответствовать именам системных учетных записей (UID <100), которые уже присутствуют в виртуальной машине (например, root).
В настоящее время поддерживается только ключ SSH на основе RSA. Многострочный ключ SSH должен начинаться с ---- BEGIN SSH2 PUBLIC KEY ----
и заканчиваться ---- END SSH2 PUBLIC KEY ----
.
Получение привилегий суперпользователя
Учетная запись пользователя, указанная во время развертывания экземпляра виртуальной машины в Azure, является привилегированной учетной записью. Пакет sudo установлен в опубликованном образе FreeBSD.
После входа в систему с помощью этой учетной записи пользователя вы сможете выполнять команды от учетной записи root, используя соответствующий синтаксис команд.
$ sudo <COMMAND>
При необходимости можно получить доступ к оболочке root с помощью команды sudo -s
.
Известные проблемы
Гостевой агент виртуальной машины Azure версии 2.2.2 имеет известную проблему, вызывающую сбой подготовки виртуальной машины FreeBSD в Azure. Ошибка исправлена в гостевом агенте виртуальной машины Azure версии 2.2.3 и более поздних выпусках.
Связанный контент
- Перейдите на сайт Azure Marketplace , чтобы создать виртуальную машину FreeBSD.