мета-данные страницы
  •  

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
ansible_guide [2026/06/12 00:51] – создано - внешнее изменение 127.0.0.1ansible_guide [2026/06/16 10:48] (текущий) – [Ansible Docs] kim1r
Строка 1: Строка 1:
-====== Базовая настройка Ansible и SSH-ключей ====== 
  
  
- 
-===== Ansible Docs ===== 
- 
- 
-[[#prep|1. Подготовка]] [[#keys|2. SSH Ключи]] [[#inventory|3. Файл Inventory]] [[#config|4. Конфигурация]] [[#test|5. Проверка связи]] 
 ====== Базовая настройка Ansible ====== ====== Базовая настройка Ansible ======
  
Строка 28: Строка 22:
 Установите сам пакет Ansible на главную машину: Установите сам пакет Ansible на главную машину:
  
-Copy 
 <code> <code>
 apt-get update && apt-get install -y ansible apt-get update && apt-get install -y ansible
Строка 40: Строка 33:
 Сгенерируйте пару SSH-ключей на управляющем сервере (нажимайте Enter, оставляя все параметры по умолчанию, парольную фразу (passphrase) вводить не нужно): Сгенерируйте пару SSH-ключей на управляющем сервере (нажимайте Enter, оставляя все параметры по умолчанию, парольную фразу (passphrase) вводить не нужно):
  
-Copy 
 <code> <code>
 ssh-keygen ssh-keygen
Строка 48: Строка 40:
 Скопируйте публичный ключ на все управляемые машины. Если сервер использует стандартный порт 22: Скопируйте публичный ключ на все управляемые машины. Если сервер использует стандартный порт 22:
  
-Copy 
 <code> <code>
 ssh-copy-id имя_пользователя@имя_управляемого_узла ssh-copy-id имя_пользователя@имя_управляемого_узла
Строка 57: Строка 48:
 Если на сервере настроен нестандартный SSH-порт (например, порт ''%%2026%%''), используйте флаг ''%%-p%%'': Если на сервере настроен нестандартный SSH-порт (например, порт ''%%2026%%''), используйте флаг ''%%-p%%'':
  
-Copy 
 <code> <code>
 ssh-copy-id -p кастомный_порт имя_пользователя@специальный_сервер ssh-copy-id -p кастомный_порт имя_пользователя@специальный_сервер
Строка 71: Строка 61:
 Ansible должен знать, какими машинами он управляет. Откройте файл инвентаризации: Ansible должен знать, какими машинами он управляет. Откройте файл инвентаризации:
  
-Copy 
 <code> <code>
 vim /etc/ansible/hosts vim /etc/ansible/hosts
Строка 79: Строка 68:
 Заполните файл. Секция ''%%[all:vars]%%'' содержит глобальные переменные для всех машин (мы явно указываем путь к Python 3, чтобы избежать системных предупреждений интерпретатора). Далее создаем группы хостов и указываем параметры подключения: Заполните файл. Секция ''%%[all:vars]%%'' содержит глобальные переменные для всех машин (мы явно указываем путь к Python 3, чтобы избежать системных предупреждений интерпретатора). Далее создаем группы хостов и указываем параметры подключения:
  
-Copy 
 <code> <code>
 [all:vars] [all:vars]
Строка 101: Строка 89:
 Чтобы Ansible по умолчанию использовал наш файл инвентаризации, его нужно прописать в главном конфигурационном файле: Чтобы Ansible по умолчанию использовал наш файл инвентаризации, его нужно прописать в главном конфигурационном файле:
  
-Copy 
 <code> <code>
 vim /etc/ansible/ansible.cfg vim /etc/ansible/ansible.cfg
Строка 109: Строка 96:
 Найдите (или создайте) блок ''%%[defaults]%%'' и укажите путь ''%%inventory%%'': Найдите (или создайте) блок ''%%[defaults]%%'' и укажите путь ''%%inventory%%'':
  
-Copy 
 <code> <code>
 [defaults] [defaults]
Строка 122: Строка 108:
 На управляющем сервере выполните команду пинга всех узлов. Модуль ''%%ping%%'' в Ansible — это не ICMP-пинг, а проверка возможности подключиться по SSH и выполнить скрипт Python. На управляющем сервере выполните команду пинга всех узлов. Модуль ''%%ping%%'' в Ansible — это не ICMP-пинг, а проверка возможности подключиться по SSH и выполнить скрипт Python.
  
-Copy 
 <code> <code>
 ansible all -m ping ansible all -m ping