HA1-COD, HA2-COD, SRV1-COD, SRV2-COD, SRV3-COD:
sed -i "s/#PermitRootLogin without-password/PermitRootLogin yes/g" /etc/openssh/sshd_config
systemctl restart sshd
ADM-HQ:
- Установим необходимый пакет:
apt-get update && apt-get install -y python3-module-pip
- Из-под user создаём ключевую пару для SSH:
su - user //Если под root
ssh-keygen -t rsa //Пароль оставляем пустым
- Передаём открытый ключ SSH на требуемые хосты:
for i in ha1 ha2 srv1 srv2 srv3;
do
ssh-copy-id root@$i-cod
done
ИЛИ
ssh-copy-id root@ha1-cod
ssh-copy-id root@ha2-cod
ssh-copy-id root@srv1-cod
ssh-copy-id root@srv2-cod
ssh-copy-id root@srv3-cod
Будет спрашивать пароль от root (toor)
- Создаём требуемую структуру каталогов:
mkdir /home/user/ansible
cd /home/user/ansible
- Создаём виртуальное окружение:
python3 -m venv venv/ansible
- Активируем виртуальное окружение
source venv/ansible/bin/activate
-
- должно получиться следующее:

- Устанавливаем ansible через pip в виртуальное окружение:
pip install --upgrade pip && pip install ansible

- Создаём инвентарный файл:
mkdir -p inventories/production
cat <<EOF > inventories/production/hosts
all:
children:
proxy:
hosts:
ha1-cod:
ha2-cod:
server:
hosts:
srv1-cod:
srv2-cod:
srv3-cod:
EOF
- Указываем переменные для подключения:
mkdir inventories/production/group_vars
cat <<EOF > inventories/production/group_vars/all.yml
---
ansible_python_interpreter: /usr/bin/python3
ansible_ssh_user: root
ansible_ssh_private_key_file: ~/.ssh/id_rsa
EOF