Подключение community.general.wsl — выполнение задач в дистрибутиве WSL с помощью CLI wsl.exe через SSH
Примечание
Этот подключаемый модуль подключения входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install community.general. Для использования этого подключаемого модуля подключения необходимы дополнительные требования; подробности см. в разделе Требования.
Чтобы использовать его в плейбуке, укажите: community.general.wsl.
Добавлено в community.general 10.6.0
Краткое описание
- Выполнение команд или передача/получение файлов в существующий дистрибутив WSL с помощью CLI wsl.exe через SSH.
- Для подключения к узлу WSL используется реализация SSH на Python (Paramiko).
Требования
Следующие требования должны быть выполнены на локальном управляющем узле, который устанавливает это подключение.
- paramiko
Параметры
Параметр | Комментарии |
|---|---|
banner_timeout float | Задаёт время ожидания отображения баннера SSH в секундах. Этот параметр поддерживается в paramiko версии 1.15.0 или новее. По умолчанию: Конфигурация:
|
become boolean | Использовать ли пользователя, заданного параметром Варианты:
Конфигурация:
|
become_user string | Пользователь дистрибутива WSL. По умолчанию: Конфигурация:
|
host_key_auto_add boolean | Автоматически добавлять ключи хостов в Варианты:
Конфигурация:
|
host_key_checking boolean | Установите значение Варианты:
Конфигурация:
|
lock_file_timeout integer | Количество секунд, по истечении которых подключаемый модуль прекращает попытки записать файл блокировки при записи известных ключей хостов SSH. По умолчанию: Конфигурация:
|
look_for_keys boolean | Установите значение Варианты:
Конфигурация:
|
password string | Секрет, используемый для входа на SSH-сервер или в качестве парольной фразы для SSH-ключей, которым она необходима. Можно задать в CLI с помощью параметра Конфигурация:
|
port integer | Удалённый порт для подключения. По умолчанию: Конфигурация:
|
private_key_file path | Путь к файлу закрытого ключа, используемого для аутентификации. Конфигурация:
|
proxy_command string | Параметры прокси для подключения через промежуточный узел. Этот параметр поддерживается в paramiko версии 1.9.0 или новее. По умолчанию: Конфигурация:
|
record_host_keys boolean | Сохранять ключи хостов в файл. Варианты:
Конфигурация:
|
remote_addr string | Адрес удалённого целевого узла. По умолчанию: Конфигурация:
|
remote_user string | Пользователь для входа/аутентификации. Можно задать в CLI с помощью параметра Конфигурация:
|
timeout integer | Количество секунд, по истечении которых подключаемый модуль прекращает попытки установить TCP-соединение. Этот параметр поддерживается в paramiko версии 2.2.0 или новее. По умолчанию: Конфигурация:
|
use_persistent_connections boolean | Включает или отключает постоянные подключения. Варианты:
Конфигурация:
|
use_rsa_sha2_algorithms boolean | Включать ли алгоритмы RSA SHA2 для открытых ключей и ключей хостов. В версиях paramiko ниже 2.9 это влияет только на ключи хостов. Чтобы поведение соответствовало paramiko<2.9, установите значение Варианты:
Конфигурация:
|
user_known_hosts_file path | Путь к файлу известных хостов пользователя. Используется для проверки ключей SSH-хостов. По умолчанию: Конфигурация:
|
wsl_distribution string / обязательный | Имя дистрибутива WSL. Конфигурация:
|
wsl_remote_ssh_shell_type string добавлено в community.general 12.2.0 | Тип оболочки, ожидаемый в сеансе SSH (не внутри сеанса WSL). См. также Варианты:
Конфигурация:
|
wsl_user string | Пользователь дистрибутива WSL. Конфигурация:
|
Примечание
Записи конфигурации, перечисленные выше для каждого типа записей (переменная Ansible, переменная окружения и т. д.), упорядочены от низкого к высокому приоритету. Например, переменная, расположенная ниже в списке, переопределит переменную, расположенную выше. Типы записей также упорядочены по возрастанию приоритета. Например, запись ansible.cfg (расположенная выше в списке) переопределяется переменной Ansible (расположенной ниже в списке).
Примеры
# ------------------------
# Inventory: inventory.yml
# ------------------------
---
all:
children:
wsl:
hosts:
example-wsl-ubuntu:
ansible_host: 10.0.0.10
wsl_distribution: ubuntu
wsl_user: ubuntu
vars:
ansible_connection: community.general.wsl
ansible_user: vagrant
# ----------------------
# Playbook: playbook.yml
# ----------------------
---
- name: WSL Example
hosts: wsl
gather_facts: true
become: true
tasks:
- name: Ping
ansible.builtin.ping:
- name: Id (with become false)
become: false
changed_when: false
args:
executable: /bin/bash
ansible.builtin.shell: |
exec 2>&1
set -x
echo "$0"
pwd
id
- name: Id (with become true)
changed_when: false
args:
executable: /bin/bash
ansible.builtin.shell: |
exec 2>&1
set -x
echo "$0"
pwd
id
- name: Reboot
ansible.builtin.reboot:
boot_time_command: systemctl show -p ActiveEnterTimestamp init.scope
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/general/wsl_connection.html