Быстрая установка — различия между версиями

Материал из megapuper
Перейти к: навигация, поиск
 
(не показано 5 промежуточных версий этого же участника)
Строка 1: Строка 1:
 +
Устанавливаем на хосте управления
 
  apt install software-properties-common
 
  apt install software-properties-common
 
  apt-add-repository --yes --update ppa:ansible/ansible
 
  apt-add-repository --yes --update ppa:ansible/ansible
Строка 4: Строка 5:
  
  
 +
Конфиг ansible.cfg
 +
[defaults]
 +
inventory      = /etc/ansible/hosts
 +
host_key_checking = False
 +
remote_tmp    = ~/.ansible/tmp
 +
roles_path    = /etc/ansible/roles
 +
callback_plugins  = /usr/share/ansible/plugins/callback
 +
 +
 +
Создаём inventory - hosts
 +
[hosts:vars]
 +
ansible_python_interpreter=/usr/bin/python3
 +
ansible_user=ansible
 +
ansible_become=true
 +
ansible_ssh_private_key_file=/home/ansible/.ssh/id_rsa
 +
 +
[hosts]
 +
app01.iwad.ru
 +
app02.iwad.ru
 +
db01.iwad.ru
 +
db02.iwad.ru
 +
 +
[APP]
 +
app01.iwad.ru
 +
app01.iwad.ru
 +
 +
[DB]
 +
db01.iwad.ru
 +
db02.iwad.ru
 +
 +
 +
Заводим пользователя на клиентах
 
  useradd -u 20000 -s /bin/bash -m -d /home/ansible ansible
 
  useradd -u 20000 -s /bin/bash -m -d /home/ansible ansible
 
  mkdir /home/ansible/.ssh
 
  mkdir /home/ansible/.ssh
Строка 11: Строка 44:
 
  touch /etc/sudoers.d/ansible
 
  touch /etc/sudoers.d/ansible
 
  echo "ansible ALL=(root) NOPASSWD: ALL" > /etc/sudoers.d/ansible
 
  echo "ansible ALL=(root) NOPASSWD: ALL" > /etc/sudoers.d/ansible
 +
 +
 +
Проверяем работу ansible на хостах
 +
ansible -m ping all
 +
 +
 +
Сбор информации о хостах и вывод её на консоль в формате JSON
 +
ansible app01.iwad.ru -m setup
 +
  172.16.10.15 | SUCCESS => {
 +
    "ansible_facts": {
 +
        "discovered_interpreter_python": "/usr/bin/python"
 +
    },
 +
    "changed": false,
 +
    "ping": "pong"
 +
}
 +
 +
 +
Раскидываем свои плейбуки, роли и можно раскатывать
 +
ansible-playbook -l app01.iwad.ru base.yml

Текущая версия на 11:33, 24 февраля 2023

Устанавливаем на хосте управления

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


Конфиг ansible.cfg

[defaults]
inventory      = /etc/ansible/hosts
host_key_checking = False
remote_tmp     = ~/.ansible/tmp
roles_path    = /etc/ansible/roles
callback_plugins   = /usr/share/ansible/plugins/callback


Создаём inventory - hosts

[hosts:vars]
ansible_python_interpreter=/usr/bin/python3
ansible_user=ansible
ansible_become=true
ansible_ssh_private_key_file=/home/ansible/.ssh/id_rsa

[hosts]
app01.iwad.ru
app02.iwad.ru
db01.iwad.ru
db02.iwad.ru

[APP]
app01.iwad.ru
app01.iwad.ru

[DB]
db01.iwad.ru
db02.iwad.ru


Заводим пользователя на клиентах

useradd -u 20000 -s /bin/bash -m -d /home/ansible ansible
mkdir /home/ansible/.ssh
touch /home/ansible/.ssh/authorized_keys
chown -R ansible:ansible /home/ansible
echo "SSH PUBLIC KEY" > /home/ansible/.ssh/authorized_keys
touch /etc/sudoers.d/ansible
echo "ansible ALL=(root) NOPASSWD: ALL" > /etc/sudoers.d/ansible


Проверяем работу ansible на хостах

ansible -m ping all


Сбор информации о хостах и вывод её на консоль в формате JSON

ansible app01.iwad.ru -m setup
 172.16.10.15 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": false, 
    "ping": "pong"
}


Раскидываем свои плейбуки, роли и можно раскатывать

ansible-playbook -l app01.iwad.ru base.yml