ベストプラクティスページには、hostsファイルにhosts.yml
を使用する例があります。
ただし、ドキュメントでは、hostsファイルを記述するためのINI構文しか見つけることができません。
YAMLのインベントリファイルの構文は何ですか?
はい。
非推奨 2012年のバージョン0.6で 再導入 2016年のバージョン2.1に最初に含まれたコミットです。
GitHubの サンプルファイル には、ガイドラインと例が含まれています。
- コメントは「#」文字で始まります
- 空白行は無視されます
- 最上位のエントリはグループであると想定されます
- ホストはグループのホストで指定する必要があります:そしてそれらはキーでなければなりません(:終了)
- グループは子、ホスト、varsキーを持つことができます
- ホストの下で定義されたものはすべてvarと見なされます
- ホスト名またはIPアドレスを入力できます
- ホスト名/ IPは複数のグループのメンバーになることができます
例1:グループ化されていないホスト、「グループ化されていない」グループに入れる
ungrouped: hosts: green.example.com: ansible_ssh_Host: 191.168.100.32 blue.example.com: 192.168.100.1: 192.168.100.10:
例2:「webservers」グループに属するホストのコレクション
webservers: hosts: alpha.example.org: beta.example.org: 192.168.1.100: 192.168.1.110:
例3:範囲を使用してホストを作成し、グループに子グループと変数を追加できます。子グループは、通常グループに追加するものなら何でも定義できます
testing: hosts: www[001:006].example.com: vars: testing1: value1 children: webservers: hosts: beta.example.org:
以前の回答は正しいですが、ここにスクリーンショットで並んでいるような単純なhosts.yamlとINIがあります。実際のhosts.yamlもここにコピーしていますので、コピーして貼り付けて編集したい場合はあなた自身
---
all:
hosts:
xmp:
ansible_connection: ssh
ansible_Host: "192.1.0.1"
ansible_port: 7822
ansible_user: nanoseco
いくつかの詳細情報:
https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html
Ansible INI to YAML inventory converter on github
を発見しました。
このリポジトリには、Python形式のAnsibleインベントリをYAML形式に変換するためのINIスクリプトが含まれています。
何らかの理由で、表示された正しい[01:03]
の代わりに=
で区切られたホスト範囲(:
)で変換が終了しました。