В статье [1] мы рассмотрели основные возможности работы с контейнерами Docker из командной строки. Но при использовании в масштабах предприятия управлять каждой виртуальной машиной по отдельности – занятие малоэффективное. В этой статье познакомимся с существующими подходами к автоматизации управления большими наборами контейнеров.
Особенность Docker такова, что даже при развертывании одного приложения вам может понадобиться несколько контейнеров. Большинство современных программ, запуск и настройку которых призван упростить Docker, использует сторонние компоненты – например, отдельный сервер СУБД или веб-сервер. Для облегчения поддержки, такие компоненты рекомендуется оформлять как отдельные виртуальные окружения. Более того, длямножества типичных компонентов уже имеются готовые образы в публичном реестре Docker Hub.
Перед запуском основного приложения необходимо запустить контейнеры со всеми их зависимостями, обеспечив при этом их корректное взаимодействие через связывание – например, в предыдущей статье описан запуск WordPress, который необходимо связать с контейнером MySQL. В дополнение к этому может понадобиться пробросить внутрь контейнера различные устройства, монтировать директории, открывать порты и так далее.
Вряд ли вам покажется удобным каждый раз вводить все необходимые параметры в командной строке, даже если все действия ограничены одной машиной. А уж при необходимости охватить зоопарк клиентских компьютеров без автоматических средств не обойтись. Однако не спешите писать собственные shell-скрипты, несмотря на молодость Docker, на рынке уже предостаточно инструментов для автоматизации.
Одними из первых на быстро развивающийся инструментарий обратили внимание разработчики различных инструментов управления конфигурацией множества машин. С них и начнем.
Системы управления конфигурацией
Взаимодействие с Docker можно осуществлять с помощью соответствующей утилиты командной строки либо с помощью полноценного API, поэтому трудности с добавлением поддержки этой технологии разработчики Puppet, Ansible и иже с ними вряд ли встретили. Во всяком случае, необходимый для манипуляций с контейнерами функционал был оперативно добавлен практически во все подобные приложения, предназначенные дляавтоматизированного управления конфигурацией парка компьютеров.
Статью целиком читайте в журнале «Системный администратор», №5 за 2015 г. на страницах 11-15.
PDF-версию данного номера можно приобрести в нашем магазине.