У меня есть модуль управления Dell iDRAC, который я пытаюсь использовать.
По какой-то странной причине он, похоже, требует IP-адрес вместо директивы hosts :. Вот пример, который мне дали:
- hosts: idracs
connection: local
name: Check LC Ready Status
gather_facts: False
tasks:
- name: Check LC Ready Status
dellemc_get_lcstatus:
idrac_ip: "{{ idrac_ip }}"
idrac_user: "{{ idrac_user }}"
idrac_pwd: "{{ idrac_pwd }}"
Я не понимаю, как превратить idrac_ip в переменную. Я должен использовать / etc / ansible / hosts или создать другой (другой) объект инвентаризации?
Насколько я могу судить, вам нужно определить эти факты для каждого хоста самостоятельно.
Похоже, вы используете Модули Dell EMC OpenManage Ansible. Поскольку эти примеры построены, они, кажется, ожидают, что переменные будут происходить от фактов хоста. Итак, вы можете просто определить host_vars
для каждого хоста. Например, вы можете создать host_vars/myserver.example.com/idrac.yml
:
idrac_ip: 10.208.35.6
idrac_user: root
idrac_pw: calvin
Конечно, вы можете получить переменные в другом месте для некоторых других операций, которые вы можете выполнять, например из статических фактов, установленных на каждом хосте, или из сценария динамической инвентаризации, но это должно помочь вам начать работу.