Если вы хотите автоматизировать управление вашей инфраструктурой, вам понадобится инструмент Ansible. Он помогает выполнять команды и целые плейбуки сразу на нескольких машинах, снижая тем самым количество ручной работы, облегчая жизнь системных администраторов и разработчиков.
Если вы еще не знакомы с Ansible, обязательно прочтите нашу статью о нем, это позволит вам понять основную концепцию и принципы программы. В этой статье мы подробно объясним, как установить Ansible с помощью pip — популярного менеджера пакетов для Python. Да, Ansible написан на Python, поэтому использование pip – отличный вариант.
Что такое Ansible и зачем его устанавливать?
Ansible — это инструмент автоматизации, который позволяет управлять конфигурациями систем, развертывать приложения и выполнять задачи на множестве серверов одновременно. Он работает по принципу “безагентной автоматизации” — не требует установки дополнительных программ на управляемых машинах, что делает его очень удобным.
Почему стоит использовать pip для установки?
Pip — основной менеджер пакетов для Python, предназначенный для установки и управления библиотеками и программами на Python.
Установка через pip подходит для пользователей, работающих в среде с Python, так как она обеспечивает быстрое и простое обновление.
- Шаг 1: Проверка установки Python и pip
- Шаг 2: Обновление pip (опционально, рекомендуется)
- Шаг 3: Установка Ansible через pip
- Шаг 4: Проверка установки Ansible
Шаг 1: Проверка установки Python и pip
Перед установкой Ansible убедитесь, что у вас установлен Python и pip.
Проверка Python
Откройте терминал и введите команду:
[root@waky practice]# python3 --version
Python 3.12.12
[root@waky practice]#
Если вы видите версию Python, значит он установлен установлен. Если же сообщение, о том, что команда не найдена, то сначала придется установить Python, наши статьи вам в этом помогут (для Ubuntu, для CentOS).
Проверка pip
Теперь проверьте наличие pip:
[root@waky practice]# pip3 --version
pip 23.2.1 from /usr/local/lib/python3.12/site-packages/pip (python 3.12)
[root@waky practice]#
Если команда выводит номер версии, значит pip тоже установлен. В противном случае, сначала установите pip (инструкция для Ubuntu, для CentOS).
Шаг 2: Обновление pip (опционально, рекомендуется)
Для стабильной работы рекомендуется обновить pip до последней версии:
[root@waky practice]# pip3 install --upgrade pip
Requirement already satisfied: pip in /usr/local/lib/python3.12/site-packages (23.2.1)
Collecting pip
Obtaining dependency information for pip from https://files.pythonhosted.org/packages/44/3c/d717024885424591d5376220b5e836c2d5293ce2011523c9de23ff7bf068/pip-25.3-py3-none-any.whl.metadata
Downloading pip-25.3-py3-none-any.whl.metadata (4.7 kB)
Downloading pip-25.3-py3-none-any.whl (1.8 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 1.8 MB/s eta 0:00:00
Installing collected packages: pip
Attempting uninstall: pip
Found existing installation: pip 23.2.1
Uninstalling pip-23.2.1:
Successfully uninstalled pip-23.2.1
Successfully installed pip-25.3
[root@waky practice]#
Шаг 3: Установка Ansible через pip
Теперь, когда все подготовлено, можно установить Ansible. Введите следующую команду:
[root@waky practice]# pip3 install ansible
Collecting ansible
Downloading ansible-13.0.0-py3-none-any.whl.metadata (8.1 kB)
Collecting ansible-core~=2.20.0 (from ansible)
Downloading ansible_core-2.20.0-py3-none-any.whl.metadata (7.7 kB)
Collecting jinja2>=3.1.0 (from ansible-core~=2.20.0->ansible)
Downloading jinja2-3.1.6-py3-none-any.whl.metadata (2.9 kB)
Collecting PyYAML>=5.1 (from ansible-core~=2.20.0->ansible)
Downloading pyyaml-6.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.4 kB)
Collecting cryptography (from ansible-core~=2.20.0->ansible)
Downloading cryptography-46.0.3-cp311-abi3-manylinux_2_34_x86_64.whl.metadata (5.7 kB)
Collecting packaging (from ansible-core~=2.20.0->ansible)
Downloading packaging-25.0-py3-none-any.whl.metadata (3.3 kB)
Collecting resolvelib<2.0.0,>=0.8.0 (from ansible-core~=2.20.0->ansible)
Downloading resolvelib-1.2.1-py3-none-any.whl.metadata (3.7 kB)
Collecting MarkupSafe>=2.0 (from jinja2>=3.1.0->ansible-core~=2.20.0->ansible)
Downloading markupsafe-3.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.7 kB)
Collecting cffi>=2.0.0 (from cryptography->ansible-core~=2.20.0->ansible)
Downloading cffi-2.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (2.6 kB)
Collecting pycparser (from cffi>=2.0.0->cryptography->ansible-core~=2.20.0->ansible)
Downloading pycparser-2.23-py3-none-any.whl.metadata (993 bytes)
Downloading ansible-13.0.0-py3-none-any.whl (53.3 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 53.3/53.3 MB 6.7 MB/s 0:00:08
Downloading ansible_core-2.20.0-py3-none-any.whl (2.4 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.4/2.4 MB 11.4 MB/s 0:00:00
Downloading resolvelib-1.2.1-py3-none-any.whl (18 kB)
Downloading jinja2-3.1.6-py3-none-any.whl (134 kB)
Downloading markupsafe-3.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (22 kB)
Downloading pyyaml-6.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (807 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 807.9/807.9 kB 23.1 MB/s 0:00:00
Downloading cryptography-46.0.3-cp311-abi3-manylinux_2_34_x86_64.whl (4.5 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.5/4.5 MB 9.8 MB/s 0:00:00
Downloading cffi-2.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (219 kB)
Downloading packaging-25.0-py3-none-any.whl (66 kB)
Downloading pycparser-2.23-py3-none-any.whl (118 kB)
Installing collected packages: resolvelib, PyYAML, pycparser, packaging, MarkupSafe, jinja2, cffi, cryptography, ansible-core, ansible
Successfully installed MarkupSafe-3.0.3 PyYAML-6.0.3 ansible-13.0.0 ansible-core-2.20.0 cffi-2.0.0 cryptography-46.0.3 jinja2-3.1.6 packaging-25.0 pycparser-2.23 resolvelib-1.2.1
[root@waky practice]#
Процесс установки начнется сразу и займет пару минут. Весь процесс происходит автоматически и не требует дополнительных настроек.
Шаг 4: Проверка установки Ansible
Чтобы убедиться, что Ansible установлен правильно, выполните команду:
[root@waky practice]# ansible --version
ansible [core 2.20.0]
config file = None
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/local/lib/python3.12/site-packages/ansible
ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/local/bin/ansible
python version = 3.12.12 (main, Nov 14 2025, 00:00:00) [GCC 11.5.0 20240719 (Red Hat 11.5.0-14)] (/usr/bin/python3)
jinja version = 3.1.6
pyyaml version = 6.0.3 (with libyaml v0.2.5)
[root@waky practice]#
Вы увидите информацию о версии Ansible — значит установка прошла успешно.
Заключение
Установка Ansible с помощью pip — это быстрый и простой способ начать автоматизацию. Следуя этим шагам, вы обеспечите правильную установку и сможете сразу приступить к управлению своими серверами.
Если вы устанавливаете Ansible не на отдельный сервер, а на свою рабочую станцию, имеет смысл использовать отдельное виртуальные окружения Python (venv). Это обеспечит изоляции зависимостей и предотвратит конфликты с другими проектами.