Исправлена ​​установка и настройка на ubuntu16.04LTS [duplicate]

У этого вопроса уже есть ответ: установка ansible на ubuntu 4 ответа

Как установить и настроить на Ubuntu 16.04?

0
задан 8 November 2017 в 12:28

2 ответа

Я не использую Ansible, но я нашел это простым, чтобы следить за учебником из Digital Ocean, и это следующие шаги:

Установка: sudo apt-add-repository ppa:ansible/ansible sudo apt-get update sudo apt-get install ansible Настройка несуществующих хостов: Edit sudo nano /etc/ansible/hosts: Поскольку в учебнике используются фиктивные хосты, они будут добавлены в реальной ситуации: [group_name] alias ansible_ssh_host=your_server_ip Имя_группы - это организационный тег, который позволяет ссылаться на любые серверы, перечисленные под ним одним словом. Псевдоним - это просто имя для ссылки на этот сервер. Таким образом, в нашем сценарии мы представляем себе, что у нас есть три сервера, с которыми мы будем управлять с Ansible. Эти серверы доступны с сервера Ansible, набрав: ssh root@your_server_ip Предположим, что IP-адреса наших серверов - 192.0.2.1, 192.0.2.2 и 192.0.2.3. Мы установим это так, чтобы мы могли обращаться к ним отдельно как host1, host2 и host3 или как группа в качестве серверов: [servers] host1 ansible_ssh_host=192.0.2.1 host2 ansible_ssh_host=192.0.2.2 host3 ansible_ssh_host=192.0.2.3 С нашими текущими настройками, если мы попытались подключиться к любому из этих хостов с Ansible, (если вы не работаете в качестве пользователя root). Это связано с тем, что ваш SSH-ключ встроен для пользователя root в удаленных системах, а Ansible по умолчанию попытается подключиться как ваш текущий пользователь. Попытка подключения получит эту ошибку: host1 | UNREACHABLE! => { "changed": false, "msg": "Failed to connect to the host via ssh.", "unreachable": true } На сервере Ansible мы используем пользователя, который называется demo. Ansible попытается подключиться к каждому хосту с помощью ssh demo @ server. Это не будет работать, если демонстрационный пользователь не находится в удаленной системе. Мы можем создать файл, который сообщает всем серверам в группе «серверы» подключиться с использованием пользователя root. Для этого мы создадим каталог в структуре конфигурации Ansible, называемой group_vars. В этой папке мы можем создавать файлы в формате YAML для каждой группы, которую мы хотим настроить: sudo mkdir /etc/ansible/group_vars sudo nano /etc/ansible/group_vars/servers Добавить это там: --- ansible_ssh_user: root Если вы хотите указать данные конфигурации для каждого сервера, независимо от объединения групп, вы можете поместить эти подробности в файле / etc / ansible / group_vars / all. Отдельные хосты могут быть настроены путем создания файлов под каталогом на / etc / ansible / host_vars. Использование Simple Ansible Commands: ansible -m ping all # Output: host1 | SUCCESS => { "changed": false, "ping": "pong" } host3 | SUCCESS => { "changed": false, "ping": "pong" } host2 | SUCCESS => { "changed": false, "ping": "pong" } «Все» означает все хосты. Мы могли бы также легко указать группу: ansible -m ping servers Мы могли бы также указать отдельный хост: ansible -m ping host1 Мы можем указать несколько хостов, разделив их на colons: ansible -m ping host1:host2 Модуль «shell» позволяет нам отправить команду терминала на удаленный хост и получить результаты. Например, чтобы узнать об использовании памяти на нашей машине host1, мы могли бы использовать: ansible -m shell -a 'free -m' host1 # Result: host1 | SUCCESS | rc=0 >> total used free shared buffers cached Mem: 3954 227 3726 0 14 93 -/+ buffers/cache: 119 3834 Swap: 0 0 0

Дополнительная информация:

https://www.digitalocean.com/community/ учебники / как в установке, и конфигурировать-анзибль-на-убунту-16-04

0
ответ дан 18 July 2018 в 03:40

Я не использую Ansible, но я нашел это простым, чтобы следить за учебником из Digital Ocean, и это следующие шаги:

Установка: sudo apt-add-repository ppa:ansible/ansible sudo apt-get update sudo apt-get install ansible Настройка несуществующих хостов: Edit sudo nano /etc/ansible/hosts: Поскольку в учебнике используются фиктивные хосты, они будут добавлены в реальной ситуации: [group_name] alias ansible_ssh_host=your_server_ip Имя_группы - это организационный тег, который позволяет ссылаться на любые серверы, перечисленные под ним одним словом. Псевдоним - это просто имя для ссылки на этот сервер. Таким образом, в нашем сценарии мы представляем себе, что у нас есть три сервера, с которыми мы будем управлять с Ansible. Эти серверы доступны с сервера Ansible, набрав: ssh root@your_server_ip Предположим, что IP-адреса наших серверов - 192.0.2.1, 192.0.2.2 и 192.0.2.3. Мы установим это так, чтобы мы могли обращаться к ним отдельно как host1, host2 и host3 или как группа в качестве серверов: [servers] host1 ansible_ssh_host=192.0.2.1 host2 ansible_ssh_host=192.0.2.2 host3 ansible_ssh_host=192.0.2.3 С нашими текущими настройками, если мы попытались подключиться к любому из этих хостов с Ansible, (если вы не работаете в качестве пользователя root). Это связано с тем, что ваш SSH-ключ встроен для пользователя root в удаленных системах, а Ansible по умолчанию попытается подключиться как ваш текущий пользователь. Попытка подключения получит эту ошибку: host1 | UNREACHABLE! => { "changed": false, "msg": "Failed to connect to the host via ssh.", "unreachable": true } На сервере Ansible мы используем пользователя, который называется demo. Ansible попытается подключиться к каждому хосту с помощью ssh demo @ server. Это не будет работать, если демонстрационный пользователь не находится в удаленной системе. Мы можем создать файл, который сообщает всем серверам в группе «серверы» подключиться с использованием пользователя root. Для этого мы создадим каталог в структуре конфигурации Ansible, называемой group_vars. В этой папке мы можем создавать файлы в формате YAML для каждой группы, которую мы хотим настроить: sudo mkdir /etc/ansible/group_vars sudo nano /etc/ansible/group_vars/servers Добавить это там: --- ansible_ssh_user: root Если вы хотите указать данные конфигурации для каждого сервера, независимо от объединения групп, вы можете поместить эти подробности в файле / etc / ansible / group_vars / all. Отдельные хосты могут быть настроены путем создания файлов под каталогом на / etc / ansible / host_vars. Использование Simple Ansible Commands: ansible -m ping all # Output: host1 | SUCCESS => { "changed": false, "ping": "pong" } host3 | SUCCESS => { "changed": false, "ping": "pong" } host2 | SUCCESS => { "changed": false, "ping": "pong" } «Все» означает все хосты. Мы могли бы также легко указать группу: ansible -m ping servers Мы могли бы также указать отдельный хост: ansible -m ping host1 Мы можем указать несколько хостов, разделив их на colons: ansible -m ping host1:host2 Модуль «shell» позволяет нам отправить команду терминала на удаленный хост и получить результаты. Например, чтобы узнать об использовании памяти на нашей машине host1, мы могли бы использовать: ansible -m shell -a 'free -m' host1 # Result: host1 | SUCCESS | rc=0 >> total used free shared buffers cached Mem: 3954 227 3726 0 14 93 -/+ buffers/cache: 119 3834 Swap: 0 0 0

Дополнительная информация:

https://www.digitalocean.com/community/ учебники / как в установке, и конфигурировать-анзибль-на-убунту-16-04

0
ответ дан 24 July 2018 в 17:54
  • 1
    Спасибо, что ответили на это, но теперь я получаю и ошибаюсь, когда запускаю команду ping: - 192.168.1.78 | UNREACHABLE! = & GT; {«изменено»: «false», «msg»: «Не удалось подключиться к хосту через ssh:« Разрешено разрешение (публикация, пароль). \ r \ n »,« unreachable »: true) – user757423 8 November 2017 в 12:31
  • 2
    вы установили корневой доступ, как указано в этом учебнике? – George Udosen 8 November 2017 в 13:34
  • 3
    Да, я сделал это, чтобы попытаться изменить и изменить тест ssh-keygen на клиентской системе, которые отлично работают, но проблема сохраняется. – user757423 8 November 2017 в 16:17

Другие вопросы по тегам:

Похожие вопросы: