Найти в Дзене
Скриптонит

Установка, настройка Ansible на РедОС Муром, Linux

Дельфинов день, дамы и господа. Сейчас опишу как просто развернуть сервис Ansible на Редосе. # Установка службы ansible                              dnf update # Установить службу                              dnf install ansible                               # Подключение клиентских хостов редактирует файл и добавляем:                              /etc/ansible/hosts                                             ...                                            [test]                                            192.168.1.100 ansible_user=admin                                            192.168.1.101 ansible_user=admin                                             ...                                             # Подключение к хостам осуществляется по протоколу ssh с помощью rsa ключей, генерируем его.                               ssh-keygen -C "$(whoami)@$(hostname)-$(date -I)"                               # Далее нужно распространить ключ на все подключенные хосты                         

Дельфинов день, дамы и господа.

Сейчас опишу как просто развернуть сервис Ansible на Редосе.

# Установка службы ansible

                             dnf update

# Установить службу

                             dnf install ansible

                             

# Подключение клиентских хостов редактирует файл и добавляем:

                             /etc/ansible/hosts

                                            ...

                                           [test]

                                           192.168.1.100 ansible_user=admin

                                           192.168.1.101 ansible_user=admin

                                            ...

                                           

# Подключение к хостам осуществляется по протоколу ssh с помощью rsa ключей, генерируем его.

                              ssh-keygen -C "$(whoami)@$(hostname)-$(date -I)"

                             

# Далее нужно распространить ключ на все подключенные хосты

                              ssh-copy-id admin@192.168.1.100

# либо

                              ssh-copy-id -i admin.pub admin@192.168.1.100

                             ssh-copy-id -i admin.pub admin@192.168.1.101

 

# вывод команды:

                                           ...

                                           Are you sure you want to continue connecting (yes/no/[fingerprint])? yes

                                           /bin/ssh-copy-id: INFO: Source of key(s) to be installed: "admin.pub"

                                           /bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed

                                           /bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys

                                            admin@192.168.1.100 password:

 

                                           Number of key(s) added: 1

 

                                           Now try logging into the machine, with:  "ssh 'admin@192.168.1.100"

                                           and check to make sure that only the key(s) you wanted were added.

                                            ...

#По умолчанию для подключения к удаленным хостам используется SSH.

#Чтобы автоматически принимать ssh fingerprint и не вводить yes при первоначальном доступе к хосту, с вводом пароля

#нужно добавить параметр в файл /etc/ansible/ansible.cfg:

                                           ...

                                           "host_key_checking = false"

                                           ...

#На удаленных серверах должна быть включена SSH аутенификация по ключам:

                              mcedit /etc/ssh/sshd_config

                                           ...

                                           PubkeyAuthentication yes

                                           AuthorizedKeysFile .ssh/authorized_keys

                                           # закомментировать PermitRootLogin no

                                           ...

                             service sshd restart

#Пингуем удаленные хосты с помощью Ansible, где test группа серверов:

#Проверим доступность всех хостов без сертификата:

                              ansible test -m ping --ask-pass  

#Пингуем по сертификату

                             ansible test -m ping

 

                             test-1 | success >> {

                                           "changed": false, U

                                           "ping": "pong"

                             }

                             

                              test-2 | success >> {

                                           "changed": false,

                                            "ping": "pong"

                              }

 Далее буду выкладывать разные плейбуки для Ansible, подписывайтесь, пишите комментарии. Спасибо за внимание!