Подготовка целевых узлов

Подготовка целевых узлов#

Ansible предъявляет к целевому узлу следующие основные требования:

  • наличие в узле программной среды (runtime environment) для используемых типов модулей;

  • поддержка требуемого протокола прикладного уровня, с помощью которого можно управлять этим узлом удаленно.

Для Ansible Core наиболее подготовленными для этого являются узлы под управлением операционной системы Linux и, с некоторыми доработками, определенных версий Windows. Дальнейшее описание касается в основном именно этих типов узлов.

Интерпретаторы#

По умолчанию в качестве программной среды на Linux используется интерпретатор скриптов Python, а для Windows – PowerShell. Текущая версия Ansible Core 2.18.3, поставляемая в составе Astra Automation, требует следующих версий интерпретаторов:

  • Python 3.8–3.13;

  • PowerShell 5.1 или новее.

Ansible Core поддерживает базовую версию PowerShell, поставляемую вместе с Windows. Например, в Windows Server 2016 базовая версия PowerShell – 5.1. Это значит, что Ansible Core будет работать с этой версией до окончания поддержки соответствующей версии Windows.

На целевых узлах может быть установлено несколько версий Python. В этом случае Ansible использует интерпретатор Python, доступный по умолчанию. Для использования версии интерпретатора, отличной от версии по умолчанию, укажите ее одним из перечисленных способов:

  • Переменная окружения ANSIBLE_PYTHON_INTERPRETER:

    export ANSIBLE_PYTHON_INTERPRETER=/usr/bin/python3.11
    
  • Настройка interpreter_python в конфигурационном файле ansible.cfg:

    [defaults]
    interpreter_python = /usr/bin/python3.11
    
  • Переменная ansible_python_interpreter:

    ansible_python_interpreter = /usr/bin/python3.11
    
    vars:
      ansible_python_interpreter: /usr/bin/python3.11
    

Создание целевого узла#

Если некоторый узел не отвечает требованиям, предъявляемым для целевого узла, но позволяет устанавливать приложения, то для того, чтобы им можно было управлять по SSH, необходимо выполнить на нем следующие действия:

  • установить и настроить сервер OpenSSH;

  • добавить публичный ключ SSH из пары ключей, созданных для управления целевыми узлами, в файл ~/.ssh/authorized_keys учетной записи, которая будет использована для авторизации.

Кроме удаленного управления необходимо будет обеспечить требуемую программную среду (runtime environment) для исполнения модулей.