Добавить в корзинуПозвонить
Найти в Дзене
ekdeus.me

Установка Ansible

Предварительные требования

Вы устанавливаете Ansible на контрольном узле, который затем использует SSH (по умолчанию) для связи с вашими управляемыми узлами (теми конечными устройствами, которые вы хотите автоматизировать).

Требования к управляющим узлам

В настоящее время Ansible может запускаться с любого компьютера с установленным Python 2 (версия 2.7) или Python 3 (версия 3.5 и выше), включая Red Hat, Debian, CentOS, macOS, любую из BSD и т. д. Windows не поддерживается для элемента управления node, подробнее об этом читайте в блоге Мэтта Дэвиса.При выборе узла управления имейте в виду, что любая система управления выигрывает от запуска рядом с управляемыми машинами. Если вы запускаете Ansible в облаке, подумайте о том, чтобы запустить его с машины внутри этого облака. В большинстве случаев это будет работать лучше, чем в открытом Интернете.

Примечание

macOS по умолчанию настроен на небольшое количество файловых дескрипторов, поэтому, если вы хотите использовать 15 или более вилок, вам нужно поднять ulimit с помощью

sudo launchctl limit maxfiles unlimited .

Эта команда также может исправить любую ошибку «Слишком много открытых файлов».

Предупреждение

Обратите внимание, что некоторые модули и плагины имеют дополнительные требования. Для модулей они должны быть выполнены на «целевой» машине (управляемом узле) и должны быть перечислены в документации по конкретным модулям.

Требования к управляемым узлам

На управляемых узлах вам нужен способ связи, обычно это SSH. По умолчанию это использует SFTP. Если он недоступен, вы можете переключиться на SCP inansible.cfg. Вам также понадобится Python 2 (версия 2.6 или новее) или Python 3 (версия 3.5 или новее).Примечание Если у вас включен SELinux на удаленных узлах, вы также захотите установить на нихllibselinux-python перед использованием любых функций, связанных с копированием/файлом/шаблоном в Ansible. Вы можете использовать модуль yum или dnf в Ansible, чтобы установить этот пакет в удаленных системах, в которых его нет. По умолчанию перед первым модулем Python в playbook выполняется на хосте, Ansible пытается найти на этом хосте подходящий интерпретатор Python. Вы можете переопределить поведение обнаружения, установив для переменной инвентаря ansible_python_interpreter конкретный интерпретатор и другими способами. Подробности см. В разделе Interpreter Discovery. Необработанный модуль Ansible и модуль сценария не зависят от установки Python на стороне клиента. Технически, вы можете использовать Ansible для установки совместимой версии Python с использованием необработанного модуля, который затем позволяет вам использовать все остальное. Например, если вам нужно загрузить Python 2 в систему на основе RHEL, вы можете установить его следующим образом:

$ ansible myhost --become -m raw -a "yum install -y python2"

Выбор версии Ansible для установки

Какая версия Ansible для установки исходя из ваших конкретных потребностей. Вы можете выбрать любой из следующих способов установки Ansible: Установите последний выпуск с помощью диспетчера пакетов вашей ОС (для Red Hat Enterprise Linux (TM), CentOS, Fedora, Debian или Ubuntu). Установить с помощью pip (менеджер пакетов Python). Установите ansible-base из исходного кода, чтобы получить доступ к версии для разработки ( devel ) для разработки или протестировать новейшие функции.ПримечаниеВы должны запускать ansible-base только из devel , если вы изменяете ansible-base или пробуете разрабатываемые функции. Это быстро меняющийся источник кода, который в любой момент может стать нестабильным.Ansible создает новые выпуски два-три раза в год. Из-за этого короткого цикла выпуска незначительные ошибки, как правило, будут исправлены в следующем выпуске, а не поддерживаются резервные копии в стабильной ветке. Для основных ошибок по-прежнему будут выпускаться отладочные версии, когда это необходимо, хотя они и нечасты.

Установка Ansible на RHEL, CentOS или Fedora

Установка Ansible на RHEL, CentOS или FedoraУстановка Ansible на RHEL, CentOS или Fedora На Fedora:$ sudo dnf install ansible В RHEL и CentOS:$ sudo yum install ansible RPM-пакеты для RHEL 7 и RHEL 8 доступны в репозитории Ansible Engine.Включение репозитория Ansible Engine для RHEL 8, выполните следующую команду:

$ sudo subscription-manager repos --enable ansible-2.9-for-rhel-8-x86_64-rpms

Чтобы включить репозиторий Ansible Engine для RHEL 7, выполните следующую команду:

$ sudo subscription-manager repos  - включить rhel-7-server-ansible-2.9-rpms RPM для текущей поддержки ed версии RHEL и CentOS также доступны в EPEL.

Примечание

Поскольку Ansible 2.10 для RHEL в настоящее время недоступен, продолжайте используйте Ansible 2.9.Ansible может управлять более старыми операционными системами, которые содержат Python 2.6 или выше.

Установка Ansible в Ubuntu

сборки Ubuntu доступны в PPA здесь.Чтобы настроить PPA на вашем компьютере и установить Ansible, выполните следующие команды:

$ sudo apt update $ sudo apt install software-properties-common
$ sudo apt-add-repository --yes --update ppa: ansible/ansible
$ sudo apt install ansible

Примечание

В старых дистрибутивах Ubuntu «общие свойства программного обеспечения» называются «python-software- свойства ». Вы можете использовать apt-get вместо apt в более старых версиях. Также имейте в виду, что только более новые дистрибутивы (другими словами, 18.04, 18.10 и т. Д.) Имеют флаг -u или - update , поэтому соответствующим образом настройте свой сценарий.Пакеты Debian/Ubuntu также могут быть собраны из проверки исходного кода, запустите:$ make deb Вы также можете запустить из исходного кода, чтобы получить ветку разработки, которая описана ниже.

Установка Ansible в Debian

Пользователи Debian могут использовать тот же источник, что и Ubuntu PPA.Добавьте следующую строку в/ и т.д /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 update
$ sudo apt install ansible

Примечание

Э тот метод был проверен с источниками Trusty в Debian Jessie и Stretch, но может не поддерживаться в более ранних версиях. Вы можете использовать apt-get вместо apt в более старых версиях.

Установка Ansible в Gentoo с помощью portage

$ emerge -av app-admin/ansible

Чтобы установить новейшую версию, вам может потребоваться демаскировать пакет Ansible до его появления:

$ echo 'app-admin /ansible '>>/etc/portage/package.accept_keywords

Установка Ansible на FreeBSD

Хотя Ansible работает с версиями Python 2 и 3, FreeBSD имеет разные пакеты для каждой версии Python, поэтому для установки вы можете использовать:

$ sudo pkg install py27-ansible

или

$ sudo pkg install py36- ansible

Вы также можете установить из портов, запустите:

$ sudo make -C/usr/ports/sysutils/ansible install

Вы также можете выбрать конкретную версию, например ansible25 .Более старые версии FreeBSD работали примерно так (замените выбранный вами менеджер пакетов):

$ sudo pkg install ansible

Установка Ansible на macOS

Предпочтительный способ установки Ansible на Mac — с помощью pip .Инструкции можно найти в разделе Установка Ansible с помощью pip. Если вы используете macOS версии 10.12 или более ранней, вам следует обновить до последней версии pip , чтобы безопасно подключиться к индексу пакетов Python. Следует отметить, что pip должен запускаться как модуль в macOS, и связанные инструкции pip покажут вам, как это сделать.

Примечание

Если у вас установлен Ansible 2.9 или более ранняя версия, вам нужно сначала использовать pip uninstall ansible  , чтобы удалить старые версии Ansible перед его повторной установкой.Если вы устанавливаете на macOS Mavericks (10.9), вы можете столкнуться с некоторым шумом из вашего компилятора. Обходной путь заключается в следующем:

$ CFLAGS = -Qunused-arguments CPPFLAGS = -Qunused-arguments pip install --user ansible

Установка Ansible на Solaris

Ansible доступен для Solaris как пакет SysV из OpenCSW.

# pkgadd -d http://get.opencsw. org/now #/opt/csw/bin/pkgutil -i ansible

Установка Ansible в Arch Linux

Ansible доступен в репозитории сообщества:

$ pacman -S ansible

В AUR есть PKGBUILD для извлечения напрямую из GitHub под названием ansible-git.

Установка Ansible в Slackware Linux

Скрипт сборки Ansible доступен в репозитории SlackBuilds.org. Может быть собран и установлен с помощью sbopkg.Создайте очередь с Ansible и всеми зависимостями:

# sqg -p ansible Build

установите пакеты из созданного файла очереди (ответьте на вопрос о том, следует ли sbopkg использовать очередь или пакет):

# sbopkg -k -i ansible

Установка Ansible на Clear Linux

Ansible и его зависимости доступны как часть хоста sysadmin пакет управления:

$ sudo swupd bundle-add sysadmin-hostmgmt

Обновлением программного обеспечения будет управлять инструмент swupd:

$ sudo swupd update

Установка Ansible с pip

Ansible можно установить с помощью pip , менеджера пакетов Python. Если pip еще не доступен в вашей системе Python, выполните следующие команды, чтобы установить его:

$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py $ python get-pip.py --user

Примечание

Если у вас установлен Ansible 2.9 или более ранняя версия, вам нужно сначала использовать pip uninstall ansible , чтобы удалить более старые версии Ansible перед повторной установкой. установка его.Затем установите Ansible 1:

$ python -m pip install --user ansible

Чтобы использовать подключаемый модуль подключения paramiko или модули, требующие paramiko , установите требуемый модуль 2:

$ python -m pip install --user paramiko

Если вы хотите установить Ansible глобально, выполните следующие команды:

$ sudo python get-pip.py $ sudo python -m pip install ansible

Примечание

Запуск  pip с sudo внесет глобальные изменения в систему. Поскольку pip не координируется с системными менеджерами пакетов, он может внести изменения в вашу систему, которые оставят ее в несогласованном или нефункционирующем состоянии. Это особенно актуально для macOS. Рекомендуется установка с использованием - user , если вы полностью не понимаете последствия изменения глобальных файлов в системе.

Примечание

В более старых версиях pip по умолчанию используется http://pypi.python.org/simple, который больше не работает. Убедитесь, что у вас установлена последняя версия pip перед установкой Ansible. Если у вас установлена более старая версия pip , вы можете выполнить обновление, следуя инструкциям по обновлению pip.

Обновление Ansible с версии 2.9 и старше до версии 2.10 или новее

Начиная с версии 2.10, Ansible состоит из двух пакетов. Перед обновлением вам необходимо сначала удалить старую версию Ansible (2.9 или более раннюю). Если вы не удалите старую версию Ansible, вы увидите следующее сообщение, и никакие изменения не будут внесены:Невозможно установить ansible-base с уже существующей установкой ansible == 2.x. Известно, что установка ansible-base с помощью ansible-2.9 или более ранней версии, установленной на данный момент withpip, вызывает проблемы. Удалите ansible и установите новую версию: pip uninstall ansiblepip install ansible-base ... Как объясняется в сообщении, для обновления вы должны сначала удалить версию Установлен Ansible, а затем установите его до последней версии.

$ pip uninstall ansible
$ pip install ansible