Установка Ansible на CentOS: Простое руководство для начинающих

На список статей
Blog image

Защитите свои сайты с My-Sites-Guard.com!
Сервис обеспечивает надежную защиту ваших веб-ресурсов: мониторинг доступности сайта, контроль валидности сертификатов, а также возможность собирать и анализировать логи работы сервера. My-Sites-Guard.com — всё для сохранности вашего сайта и спокойствия в работе!

Для установки Ansible на CentOS мы будем использовать командную строку. Чтобы начать, убедитесь, что у вас есть доступ к серверу с правами администратора. Обычно это осуществляется с помощью учетной записи root или пользователя, имеющего права sudo.

Шаг 1. Установка EPEL-репозитория

CentOS по умолчанию не предоставляет доступ к пакету Ansible, поэтому для начала нам нужно подключить дополнительный EPEL-репозиторий (Extra Packages for Enterprise Linux). EPEL — это коллекция пакетов, поддерживаемых сообществом и часто используемых в Red Hat и CentOS. Установить его можно, выполнив команду:

sudo yum install epel-release -y

Эта команда устанавливает репозиторий EPEL, что позволит в дальнейшем установить Ansible напрямую из YUM.

Шаг 2. Установка Ansible

Теперь, когда у нас есть доступ к EPEL-репозиторию, можно установить Ansible. Для этого используйте следующую команду:

sudo yum install ansible -y

Эта команда загрузит и установит Ansible и все необходимые зависимости. После завершения установки можно проверить успешность установки с помощью команды:

ansible --version

Если установка прошла успешно, вы увидите версию Ansible и другую сопутствующую информацию.

Проверка установки и базовая настройка

Теперь, когда Ansible установлен, давайте убедимся, что он может взаимодействовать с другими серверами. Для этого создадим простой файл настроек hosts, в котором укажем серверы, к которым Ansible сможет подключаться. Обычно этот файл находится по адресу /etc/ansible/hosts.

Шаг 3. Добавление серверов в файл hosts

Откройте файл /etc/ansible/hosts с помощью текстового редактора (например, vim или nano):

sudo nano /etc/ansible/hosts

Добавьте туда IP-адреса или доменные имена серверов, к которым вы хотите подключаться. Структура файла может выглядеть так:

[webservers]
192.168.0.101
192.168.0.102

[dbservers]
192.168.0.201
192.168.0.202

В примере выше мы добавили два сервера в группу webservers и два в dbservers. Группы помогают удобно разделять серверы по категориям для последующего управления.

Шаг 4. Настройка SSH-доступа

Ansible использует SSH для связи с удаленными серверами. Чтобы убедиться, что он сможет подключаться, настройте SSH-ключи для доступа к серверам без пароля. Это делается с помощью команды:

ssh-keygen

Следуйте инструкциям и сохраните ключи. Затем добавьте ключ на каждый сервер, к которому вы планируете подключаться, выполнив команду:

ssh-copy-id user@server_address

Где user — это имя пользователя, под которым вы будете подключаться, а server_address — это IP-адрес или доменное имя удаленного сервера.

Шаг 5. Проверка связи с серверами

После настройки SSH-доступа давайте проверим, что Ansible может связаться с нашими серверами. Используйте следующую команду:

ansible all -m ping

Если настройка выполнена правильно, вы увидите ответ pong от каждого из серверов, что означает успешное подключение.

Запуск первого простого примера

Теперь, когда Ansible установлен и настроен, давайте создадим простой playbook для выполнения команды на всех серверах.

Шаг 6. Создание playbook

Playbook — это файл YAML, который описывает задачи, которые нужно выполнить. Создадим playbook с именем test.yml:

---
- name: Проверка доступности серверов
 hosts: all
 tasks:
   - name: Проверка соединения
     ping:

Этот playbook проверяет соединение со всеми серверами, добавленными в файл hosts, отправляя команду ping.

Шаг 7. Запуск playbook

Запустим playbook с помощью команды:

ansible-playbook test.yml

Если все настройки верны, Ansible выполнит команду ping на каждом сервере и вернет информацию об успешном подключении.


Комментарии

Пока нет комментариев

Добавить комментарий