Установка и настройка Ansible в ubuntu16.04LTS [дубликат]

На этот вопрос уже есть ответ:

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

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

1 ответ

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

  1. Установка:

    sudo apt-add-repository ppa:ansible/ansible
    sudo apt-get update
    sudo apt-get install ansible
    
  2. Конфигурирование хостов Ansible:

    1. Править sudo nano /etc/ansible/hosts:

      • Так как учебный макет использования размещает, они были бы добавлены в реальной ситуации:

        [group_name]
        alias ansible_ssh_host=your_server_ip
        
      • group_name является организационным тегом, который позволяет Вам обратиться к любым серверам, перечисленным под ним с одним словом. Псевдоним является просто именем для обращения к тому серверу. Таким образом в нашем сценарии, мы предполагаем, что у нас есть три сервера, которыми мы собираемся управлять с Ansible. Эти серверы доступны с сервера Ansible путем ввода:

        ssh root@your_server_ip
        
    2. Мы предположим, что 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
      
  3. С нашими текущими настройками, если бы мы пытались соединиться с каким-либо из этих хостов с Ansible, перестала бы работать команда (предположение, что Вы не действуете в качестве пользователя root). Это вызвано тем, что Ваш ключ SSH встраивается для пользователя root в удаленных системах, и Ansible будет попыткой по умолчанию соединиться как Ваш текущий пользователь. Попытка подключения получит эту ошибку:

    host1 | UNREACHABLE! => {
          "changed": false,
          "msg": "Failed to connect to the host via ssh.",
          "unreachable": true
    }
    
  4. На сервере Ansible мы используем пользователя, названного демонстрацией. 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.
  5. Использование простых команд Ansible:

    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
      
    • Мы можем указать несколько хостов путем разделения их с двоеточиями:

      ansible -m ping host1:host2
      
    • Модуль "оболочки" позволяет нам отправить терминальную команду в удаленный хост и получить результаты. Например, для обнаружения использования памяти на нашей 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/tutorials/how-to-install-and-configure-ansible-on-ubuntu-16-04

0
ответ дан 1 November 2019 в 06:24

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

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