Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к: ✔️ Виртуальные машины Linux ✔️ Виртуальные машины Windows ✔️ Гибкие масштабируемые наборы ✔️ Однородные масштабируемые наборы
Средства автоматизации, как правило, позволяют быстро и согласованно создавать виртуальные машины Azure в нужном масштабе, а также управлять ими. Существует множество средств и решений, которые помогают полностью автоматизировать жизненный цикл развертывания и администрирования инфраструктуры Azure. В этой статье приведены сведения о некоторых средствах автоматизации инфраструктуры Azure. Обычно их используют с такими целями:
Автоматизация настройки виртуальных машин:
- Средства включают Ansible, Chef, Puppet, Bicep и шаблон Azure Resource Manager.
- средства для настройки определенных виртуальных машин, например cloud-init для виртуальных машин Linux, PowerShell Desired State Configuration (DSC) и расширение пользовательских скриптов Azure для всех виртуальных машин Azure.
Автоматизация управления инфраструктурой:
- Эти инструменты включают Packer для автоматизации создания настраиваемых образов виртуальных машин и Terraform для автоматизации процесса построения инфраструктуры.
- Cлужба автоматизации Azure может выполнять действия в инфраструктуре Azure и локальной инфраструктуре.
Автоматизация развертывания и доставки приложений:
Терраформирование
Terraform — это инструмент автоматизации, который позволяет определить и создать целую инфраструктуру Azure с использованием единого языкового шаблона — HashiCorp Configuration Language (HCL). С помощью Terraform вы задаёте шаблоны, которые автоматизируют процесс создания ресурсов сети, хранилища и виртуальных машин для заданного приложения. Имеющиеся шаблоны Terraform можно использовать на других платформах с Azure. Это позволяет обеспечить согласованность и упростить развертывание инфраструктуры, не переходя на шаблон Azure Resource Manager.
Вы узнаете, как выполнять следующие задачи:
- Установите и настройте Terraform с Azure
- Создание базовой инфраструктуры в Azure с помощью Terraform
Служба автоматизации Azure
Служба автоматизации Azure использует ранбуки для обработки набора задач на целевых виртуальных машинах. В Cлужба автоматизации Azure используется для управления существующими виртуальными машинами, а не для создания инфраструктуры. Служба Cлужба автоматизации Azure может выполняться как на виртуальных машинах Linux, так и на виртуальных машинах Windows, а также на локальных виртуальных или физических машинах с гибридной рабочей ролью Runbook. Модули runbook можно хранить в репозитории системы управления версиями, например GitHub. Эти инструкции можно выполнять вручную или по заданному расписанию.
Служба автоматизации Azure также предоставляет службу DSC, которая позволяет создавать определения настройки заданного набора виртуальных машин. DSC гарантирует применение необходимой конфигурации и обеспечивает согласованность виртуальной машины. Cлужба автоматизации Azure DSC можно запустить на виртуальных машинах Windows и Linux.
Вы узнаете, как выполнять следующие задачи:
- Создание runbook PowerShell
- Используйте гибридный рабочий узел Runbook для управления локальными ресурсами.
- Используйте DSC службы автоматизации Azure
Azure DevOps Services
Azure DevOps Services — это набор средств, позволяющих отслеживать код и предоставлять к нему общий доступ, использовать автоматизированные сборки и создавать конвейеры непрерывной интеграции и разработки (CI/CD). Azure DevOps Services интегрируется с Visual Studio и другими редакторами, что упрощает его использование. Кроме того, этот набор средств позволяет создавать и настраивать виртуальные машины Azure, а затем развертывать код на них.
Дополнительные сведения:
Шаблон Azure Resource Manager
Azure Resource Manager — это служба развертывания и управления для Azure. Она обеспечивает уровень управления, позволяющий создавать, обновлять и удалять ресурсы в подписке Azure. Вы можете использовать ее функции управления, такие как управление доступом, блокировка и добавление тегов, чтобы защитить и упорядочить ресурсы после развертывания.
Вы узнаете, как выполнять следующие задачи:
- Развертывание Spot виртуальных машин с помощью шаблона диспетчера ресурсов.
- Создание виртуальной машины Windows из шаблона Диспетчера ресурсов.
- Скачивание шаблона для виртуальной машины.
- Создание шаблона Конструктора образов виртуальных машин Azure.
Бицепс
Bicep — это предметно-ориентированный язык (DSL), который использует декларативный синтаксис для развертывания ресурсов Azure. В файле Bicep вы определяете инфраструктуру, которую требуется развернуть в Azure, а затем используете этот файл на протяжении всего жизненного цикла разработки для многократного развертывания инфраструктуры. Ваши ресурсы развертываются согласованно.
Приступите к изучению Quickstart.
Cloud-init
Пакет cloud-init — широко используемое средство, используемое для настройки виртуальной машины Linux при ее первой загрузке. Вы можете использовать cloud-init для установки пакетов, записи файлов или настройки пользователей и параметров безопасности. Так как cloud-init вызывается во время начального процесса загрузки, для применения конфигурации нет дополнительных шагов или необходимых агентов. Дополнительные сведения о том, как правильно отформатировать файлы #cloud-config, см. на сайте документации по cloud-init. Файлы #cloud-config — это текстовые файлы, закодированные в формате base64.
Кроме того, cloud-init работает с разными дистрибутивами. Например, для установки пакета не используется apt-get install или yum install. Вместо этого можно определить список пакетов для установки. Cloud-init автоматически использует собственный инструмент управления пакетами из выбранного дистрибутива.
Мы активно работаем с нашими утвержденными партнерами дистрибутива Linux, чтобы иметь доступные в Azure Marketplace образы с поддержкой cloud-init. Эти образы обеспечивают бесперебойную работу развертываний и конфигураций cloud-init с виртуальными машинами и масштабируемыми наборами виртуальных машин. Дополнительные сведения о cloud-init в Azure:
- Поддержка cloud-init для виртуальных машин Linux в Azure
- Руководство по автоматизации настройки виртуальных машин при помощи cloud-init
PowerShell DSC
PowerShell Desired State Configuration — это платформа управления, которая позволяет определить конфигурацию целевых виртуальных машин. DSC также можно использовать в Linux через сервер Open Management Infrastructure.
Конфигурации DSC определяют компоненты, которые следует установить на виртуальной машине, а также параметры настройки узла. На каждом целевом узле, который обрабатывает запрашиваемые действия на основе отправленных конфигураций, выполняется модуль локального диспетчера конфигураций (LCM). Pull-сервер — это веб-служба, запущенная на центральном узле для хранения конфигураций DSC и связанных с ними ресурсов. Этот сервер взаимодействует с модулем LCM на каждом целевом узле и тем самым предоставляет требуемую конфигурацию и отчеты о соответствии.
Вы узнаете, как выполнять следующие задачи:
- Создание базовой конфигурации DSC (требуемого состояния)
- Настройка pull-сервера DSC
- Используйте DSC для Linux
Расширение пользовательских скриптов Azure
Расширение пользовательских скриптов Azure для Linux или Windows скачивает и выполняет скрипты на виртуальных машинах Azure. Расширение можно использовать при создании виртуальной машины или в любое время после использования виртуальной машины.
Скрипты можно скачать из хранилища Azure или любого общедоступного расположения, например репозитория GitHub. Расширение пользовательских скриптов позволяет создавать скрипты на любом языке, выполняющемся на исходной виртуальной машине. С помощью этих скриптов вы можете устанавливать приложения или нужным образом настраивать виртуальную машину. Чтобы защитить учетные данные, конфиденциальные сведения, например пароли, можно хранить в защищенной конфигурации. Эти учетные данные расшифровываются только на виртуальной машине.
Вы узнаете, как выполнять следующие задачи:
- Создайте виртуальную машину с Linux с помощью Azure CLI и расширения пользовательских скриптов
- Создание виртуальной машины Windows с помощью Azure PowerShell и использования расширения пользовательского скрипта
Ansible
Ansible — это модуль автоматизации управления конфигурацией, создания виртуальных машин и развертывания приложений. Ansible использует модель без агента, обычно с ключами SSH, для аутентификации и управления целевыми машинами. Задачи конфигурации определены в сборниках схем с несколькими модулями Ansible, доступными для выполнения конкретных задач. Дополнительные сведения см. в статье How Ansible works (Принципы работы Ansible).
Вы узнаете, как выполнять следующие задачи:
- Установка и настройка Ansible на Linux для использования с Azure
- Создание виртуальной машины Linux
- Управление виртуальной машиной Linux
Шеф-повар
Chef — это платформа автоматизации, которая помогает определить параметры настройки и развертывания инфраструктуры, а также управления ею. Некоторые компоненты включают Chef Habitat для автоматизации жизненного цикла приложений, а не инфраструктуры и Chef InSpec, которые помогают автоматизировать соответствие требованиям к безопасности и политике. Клиенты Chef установлены на целевых виртуальных машинах, а на одном или нескольких центральных серверах Chef хранится конфигурация и осуществляется управление ею. Дополнительные сведения см. в статье An Overview of Chef (Общие сведения о Chef).
Вы узнаете, как выполнять следующие задачи:
- Build, deploy, and manage with Chef Automate, the Continuous Automation Platform (Создание, развертывание и управление с помощью платформы непрерывной автоматизации Chef Automate)
- Установите Chef на Windows и создайте виртуальные машины Azure
марионетка
Puppet — это платформа автоматизации корпоративного уровня, обрабатывающая доставку и развертывание приложений. На целевых виртуальных машинах установлены агенты, которые позволяют главному серверу Puppet выполнять манифесты, определяющие требуемую конфигурацию инфраструктуры и виртуальных машин Azure. Puppet можно интегрировать с другими решениями, такими как Jenkins и GitHub, что позволяет улучшить рабочие процессы DevOps. Дополнительные сведения см. в статье How Puppet works (Принципы работы Puppet).
Вы узнаете, как выполнять следующие задачи:
Упаковщик
Packer автоматизирует процесс сборки при создании настраиваемого образа виртуальной машины Azure. Вы используете Packer для определения операционной системы и запуска скриптов постконфигурации, которые настраивают виртуальную машину под ваши конкретные потребности. После настройки виртуальная машина записывается как образ управляемого диска. Packer автоматизирует создание ресурсов исходной виртуальной машины, сети и хранилища, выполнение скриптов конфигурации и создание образа виртуальной машины.
Вы узнаете, как выполнять следующие задачи:
- Создание образов виртуальных машин Linux в Azure с помощью Packer
- Использование Packer для создания образов виртуальных машин Windows в Azure
Дженкинс
Jenkins — это сервер непрерывной интеграции, который помогает развертывать и тестировать приложения, а также создать автоматизированные конвейеры доставки кода. Базовую платформу Jenkins можно расширить с помощью сотен подключаемых модулей, а вебхуки позволяют интегрировать ее со многими другими продуктами и решениями. Вы можете вручную установить Jenkins на виртуальной машине Azure, запустить Jenkins в контейнере Docker или использовать готовый образ Azure Marketplace.
Вы узнаете, как выполнять следующие задачи:
Следующие шаги
Средства автоматизации инфраструктуры в Azure позволяют выполнять разные задачи. Вы можете использовать решения, которые максимально отвечают вашим потребностям и требованиям среды. Чтобы приступить к работе и оценить несколько стандартных средств Azure, ознакомьтесь с руководством по автоматизации настройки виртуальной машины Linux или Windows.