Ansible — система управления конфигурациями, написанная на Python, с использованием декларативного языка разметки для описания конфигураций. Является двигателем автоматизации с открытым исходным кодом, который автоматизирует облако выделенных ресурсов, управляет конфигурацией и развертывает приложения. Обычно используется для управления Linux-узлами, но также поддерживается и Windows. Поддерживает работу с сетевыми устройствами, на которых установлен Python версии 2.4 и выше по SSH или PowerShell соединению.
Простота и удобство в использовании являются основными целями Ansible с сильным акцентом на безопасность и надежность. Разработчики Ansible считают, что простота относится ко всем размерам сред, поэтому дизайн для занятых пользователей всех типов: разработчиков, системных администраторов, инженеров, IT-релиз менеджеров, и все между ними. Ansible подходит для управления всеми средами, от небольших установок с несколькими экземплярами к корпоративной среде со многими тысячами экземпляров.
Мы уже упоминали, что Ansible управляет машинами безагентным образом. Вопрос о том, как обновить удаленные демоны или проблема не в состоянии управлять системами, потому что демоны могут быть деинсталлированы, не является проблемой. OpenSSH является одним из самых рецензируемых компонентов с открытым исходным кодом, таким образом, безопасность значительно увеличивается. Ansible децентрализована – она опирается на существующие учетные данные операционной системы для управления доступом к удаленным компьютерам. При необходимости, Ansible может легко соединиться с Kerberos, LDAP и другими централизованными системами управления аутентификации.
По умолчанию, Ansible управляет машинами по протоколу SSH. После установки Ansible не добавит базу данных, что означает, что не будет никаких демонов, чтобы начать или продолжать работать. Вы можете легко установить Ansible и управлять удаленными машинами из него. Ansible может быть установлен на Red Hat, Debian, CentOS, OS X, BSD и другие системы с помощью менеджеров операционных систем, пакетов PIP или от источника.
Пользователи Fedora могут установить Ansible напрямую, однако, CentOS и RHEL пользователям необходимо включить репозиторий Epel в первую очередь. Это может быть сделано с помощью:
# wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm # rpm -ivh epel-release-7-9.noarch.rpm
# wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm # rpm -ivh epel-release-6-8.noarch.rpm
# wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm # rpm -ivh epel-release-6-8.noarch.rpm
После установки легкой, выполните следующую команду:
# yum update # yum install ansible
Перед установкой Ansible на Ubuntu, PPA должен быть включен:
# sudo apt-get install software-properties-common # sudo apt-add-repository ppa:ansible/ansible # sudo apt-get update # sudo apt-get install ansible
Пользователи Debian могут использовать один и тот же источник, что и Ubuntu PPA:
Одним из ваших любимых текстовых редакторов добавьте ниже строку в файл /etc/apt/sources.list:
deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main
Сохраните и закройте файл, а затем выполните команду:
# sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367 # sudo apt-get update # sudo apt-get install ansible
Ansible может быть установлен с помощью PIP. Следующие команды установят некоторые весьма необходимые инструменты Python, PIP, а затем Ansible:
# apt-get install python-setuptools # easy_install pip # pip install ansible
По умолчанию, Ansible использует OpenSSH для удаленной связи и имеет файл инвентаризации по умолчанию, где вы можете определить, какие серверы будут управляться. Файл: /etc/ansible/hosts.
Чисто для справочных целей, вы можете скопировать файл по умолчанию, так что вы можете проверить его позже:
# cp /etc/ansible/hosts /etc/ansible/hosts.org
Теперь вы можете отредактировать файл инвентаризации в соответствии с вашими потребностями. Более подробную информацию о Ansible инвентаризации можно найти здесь.
Теперь это всего лишь проблеск того, что Ansible предлагает пользователям. Это просто статья будет стимулировать ваш интерес к Ansible и удивительным возможностям, которые она предлагает.
Для более подробной информации, необходимо прочитать документацию по Ansible.