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

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

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

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

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

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

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

По умолчанию в качестве runtime environment на Linux используется интерпретатор скриптов Python, а для Windows – PowerShell. Текущая версия Ansible Core 2.18.7, поставляемая в составе 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 из пары ключей, созданных для управления целевыми узлами, в домашний каталог учетной записи, которая будет использована для авторизации.

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