Настройка заданий

Настройка заданий#

Окно Настройка заданий (Job Settings) определяет глобальные параметры выполнения задач автоматизации:

  • настройка стратегии запуска и параллельности выполнения;

  • управление временем ожидания, политиками повторного запуска и поведением при сбоях;

  • задание параметров журналирования и сохранения артефактов выполнения.

Для перехода к окну Настройка заданий (Job Settings) выберите на панели навигации Настройки ‣ Задание (Settings ‣ Job).

../../../_images/job-light.png ../../../_images/job-dark.png

Получение информации#

В окне просмотра информации отображается информация о настройках, которые управляют запуском и исполнением всех заданий. Отображаются только заданные настройки. Для их редактирования воспользуйтесь инструкцией.

Полный список параметров:

  • Модули Ansible, разрешенные для выполнения специальных заданий (Ansible Modules Allowed for Ad Hoc Jobs) – список модулей Ansible, которые разрешено использовать при выполнении отдельных (ad hoc) команд.

    Значение по умолчанию:

    - command
    - shell
    - yum
    - apt
    - apt_key
    - apt_repository
    - apt_rpm
    - service
    - group
    - user
    - mount
    - ping
    - selinux
    - setup
    - win_ping
    - win_service
    - win_updates
    - win_group
    - win_user
    
  • В каких случаях дополнительные переменные могут содержать шаблоны Jinja? (When can extra variables contain Jinja templates?) – разрешение на использование шаблонов Jinja2 в дополнительных переменных.

    Возможные значения:

    • Always – всегда;

    • Never – никогда;

    • Only On Job Template Definition – только в шаблоне задания;

    Предупреждение

    Для этой настройки рекомендуется использовать значение Never или Only On Job Template Definition. Это связано с тем, что шаблоны Jinja2 потенциально могут быть использованы для запуска произвольного кода на языке Python, что создает угрозу безопасности.

    Значение по умолчанию: Only On Job Template Definition.

  • Путь выполнения задания (Job execution path) – путь к каталогу, в котором контроллер должен создать временный подкаталог для хранения данных, связанных с заданием, например, файлы полномочий.

    Значение по умолчанию: /tmp.

  • Пути для доступа к изолированным заданиям (Paths to expose to isolated jobs) – список путей, монтируемых на исполняющих узлах в контейнеры как отдельные тома, по одному на строку. Пути, не указанные в этом списке, недоступны в контейнерах и не могут быть использованы при выполнении заданий.

    Формат записей:

    <HOST_DIR>[:<CONTAINER_DIR>[:<OPTIONS>]]
    

    Здесь:

    • <HOST_DIR> – путь к каталогу в файловой системе исполняющего узла;

    • <CONTAINER_DIR> – точка монтирования каталога в файловой системе контейнера;

    • <OPTIONS> – опциональные параметры монтирования.

    Значение по умолчанию:

    - /etc/ssl/certs:/etc/ssl/certs:O
    - /usr/local/share/ca-certificates:/usr/local/share/ca-certificates:O
    
  • Дополнительные переменные окружения (Extra Environment Variables) – дополнительные переменные среды, заданные для запуска сценариев, обновления инвентаря, обновления проектов и отправки уведомлений.

  • Интервал сохранения соединения (keep-alive) для обмена сообщениями с Ansible Runner в Kubernetes (K8S Ansible Runner Keep-Alive Message Interval) – интервал в секундах, через который узлам из группы контейнеров отправляется сообщение для поддержания соединения. При значении 0 сообщения не отправляются.

    Значение по умолчанию: 0.

  • Переменные окружения для команд Galaxy (Environment Variables for Galaxy Commands) – дополнительные переменные окружения, используемые при вызове команды ansible-galaxy для обновления проекта. Использование этих переменных может быть полезно, если команда ansible-galaxy работает через прокси-сервер, но не Git.

    Значение по умолчанию:

    {
      "ANSIBLE_FORCE_COLOR": "false",
      "GIT_SSH_COMMAND": "ssh -o StrictHostKeyChecking=no"
    }
    
  • Максимальный размер дисплея стандартного вывода (Standard Output Maximum Display Size) – максимальный размер (в байтах) вывода в стандартный поток (stdout), отображаемого в графического интерфейсе.

    Значение по умолчанию: 1048576 (1 МБ).

  • Максимальный размер дисплея для стандартного вывода события задания (Job Event Standard Output Maximum Display Size) – максимальный размер (в байтах) вывода одного события в стандартный поток (stdout), отображаемого в графического интерфейсе.

    Значение по умолчанию: 1024.

  • Максимальное количество сообщений Websocket в секунду для события задания (Job Event Maximum Websocket Messages Per Second)– максимальное количество сообщений в секунду о событиях, отправляемых через WebSocket.

    Значение по умолчанию: 30.

  • Максимальное количество запланированных заданий (Maximum Scheduled Jobs) – количество заданий на основе одного и того же шаблона, которые можно поставить в очередь выполнения. Если указанное значение будет достигнуто, создавать новые задания будет нельзя.

    Значение по умолчанию: 10.

  • Расширения Ansible Callback (Ansible Callback Plugins) – список путей для поиска расширений обратного вызова Ansible, по одному на строку. При значении [] расширения обратного вызова не используются.

    Значение по умолчанию: [].

  • Тайм-аут задания по умолчанию (Default Job Timeout) – время в секундах, отведенное на исполнение каждого задания. Значение этой настройки может быть переопределено в настройках шаблона задания. При значении 0 задания выполняются без ограничений по времени.

    Значение по умолчанию: 0.

  • Тайм-аут простоя задания по умолчанию (Default Job Idle Timeout) – если за указанный период времени в секундах не происходит вывода Ansible, исполнение задания прерывается. При значении 0 задания могут выполняться без вывода неограниченно долго.

    Значение по умолчанию: 0.

  • Тайм-аут обновления инвентаря по умолчанию (Default Inventory Update Timeout) – время в секундах, отведенное на выполнение задачи обновления инвентаря из внешнего источника. Значение этой настройки может быть переопределено в настройках инвентаря. При значении 0 задания обновления инвентаря выполняются без ограничений по времени.

    Значение по умолчанию: 0.

  • Тайм-аут обновления проекта по умолчанию (Default Project Update Timeout) – время в секундах, отведенное на выполнение задачи обновления проекта из внешнего источника. Значение этой настройки может быть переопределено в настройках проекта. При значении 0 задания обновления проекта выполняются без ограничений по времени.

    Значение по умолчанию: 0.

  • Тайм-аут кэширования ansible фактов для каждого узла (Per-Host Ansible Fact Cache Timeout) – период времени в секундах, в течение которого факты Ansible считаются действительными с момента их последнего изменения. В наборе сценариев будут доступны только действительные, не устаревшие факты. При значении 0 факты не устаревают.

    Важно

    Эта настройка не влияет на удаление фактов в базе данных Automation Controller.

    Значение по умолчанию: 0.

  • Максимальное количество ответвлений задания (Maximum number of forks per job) – максимально допустимое количество ответвленных процессов, которое можно задать в настройках шаблона задания. Попытка сохранить шаблон задания со значением больше указанного приведет к ошибке.

    Значение по умолчанию: 200.

  • Опции запуска для контейнеров (Container Run Options) – список параметров для передачи Podman при запуске контейнера.

    Значение по умолчанию:

    - '--network'
    - slirp4netns:enable_ipv6=true
    
  • Выполнить обновление проекта с большей детализацией (Run Project Updates With Higher Verbosity) – если эта настройка включена, используется более детализированный вывод при выполнении заданий обновления проектов. Использование этой настройки эквивалентно выполнению команды ansible-playbook project_update.yml с параметром -vvv.

    Значение по умолчанию: выключено.

  • Включить загрузку ролей (Enable Role Download) – если эта настройка включена и источником кода проекта является система контроля версий, разрешена загрузка ролей, перечисленных в файле проекта requirements.yml.

    Значение по умолчанию: включено.

  • Разрешить загрузку коллекции(й) (Enable Collection(s) Download) – если эта настройка включена и источником кода проекта является система контроля версий, разрешена загрузка коллекций, перечисленных в файле проекта requirements.yml.

    Значение по умолчанию: включено.

  • Переходы по символическим ссылкам (Follow symlinks) – если эта настройка включена, при обработке сценариев разрешен переход по символическим ссылкам.

    Предупреждение

    Переход по ссылкам может привести к бесконечной рекурсии, если ссылка указывает на свой родительский каталог.

    Значение по умолчанию: выключено.

  • Объявить пути к узлам для контейнерных групп (Expose host paths for Container Groups) – если эта настройка включена, разрешено использование в подах переменных hostPath, указывающих на каталоги исполняющего узла, для монтирования этих каталогов в качестве томов к контейнерам среды исполнения.

    Предупреждение

    Использование томов hostPath содержит потенциальные риски безопасности. Рекомендуется избегать использования hostPath, где это возможно.

    Значение по умолчанию: выключено.

  • Игнорировать проверку SSL-сертификата Ansible Galaxy (Ignore Ansible Galaxy SSL Certificate Verification) – если эта настройка включена, при подключении к реестрам коллекций Ansible не выполняется проверка сертификата TLS.

    Значение по умолчанию: выключено (проверка выполняется).

Редактирование#

Для изменения действующих настроек заданий в окне Задания (Job) выполните следующие действия:

  1. Нажмите кнопку Редактировать (Edit).

  2. Внесите необходимые изменения.

  3. Нажмите кнопку Сохранить (Save).