web-dev-qa-db-ja.com

AnsibleモジュールがIPアドレスの代わりに/ etc / ansible / hostsを使用するようにする

使用しようとしているこのDelliDRAC管理モジュールがあります。

いくつかの奇妙な理由で、hosts:ディレクティブを尊重する代わりにIPアドレスを要求するようです。これが私が与えられた例です:

- 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は私が使用すべきものですか、それとも別の(異なる)インベントリオブジェクトを作成する必要がありますか?

1
mr.zog

私が知る限り、ホストごとにこれらの事実を自分で定義する必要があります。

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

もちろん、実行する可能性のある他の操作のいくつかについて、他の場所で変数を取得することもできます。各ホストに設定された静的ファクトまたは動的インベントリスクリプトからですが、これで開始できます。

1
Michael Hampton