問題タブ [ansible-inventory]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ansible - Ansible の動的インベントリーをリロードする
Ansible を使用して EC2 インスタンスをセットアップし、アプリをデプロイしています。タグ関連のサーバーとグループ情報を収集するホスト スクリプトがあります。これらのアクションを 1 つの Playbook として実行したいので、
- 必要に応じて新しいインスタンスが作成されます
- ホスト スクリプトがインベントリをロードします (サーバーのファクトを含む)
- デプロイ プレイブックが機能する
ただし、インベントリは事前にロードされるため、プレイ中にサーバーが作成/更新された場合、サーバー/グループのデータはありません。1) プロビジョニングとデプロイの Playbook を分離する 2) add_host トリックを使用して、サーバーの更新時に動的インベントリをエミュレートできますが、これらのアプローチには欠点があります。
Ansible にインベントリーを強制的にリロードさせることはできますか? 私のテストファイルは次のとおりです:
hosts
スクリプト:
サンプルplaybook.yml
:
実行するansible-playbook -i hosts playbook.yml -v
と、次の 2 つの実行が表示されます。
しかし、それを2倍にするコマンドが見つかりませんでした。
python-2.7 - ****ansible.errors.AnsibleError: インベントリ ファイルが見つかりません。-i で指定してください ?****
****ansible.errors.AnsibleError: インベントリ ファイルが見つかりません。-i で指定してください ?****
私のスクリプト:
sample1.yml:
/etc/ansible/ホスト:
ansible - ホストのカスタム名の表示
EC2 インスタンスを操作するための Ansible プレイブックがあります。動的インベントリ ( ec2.py ) を使用して、操作したいインスタンスのグループを取得しています ( hosts: tag_Service_Foo
)。実行すると、次のような出力が生成されます。
ただし、Amazon から特定のインスタンスの「名前」タグをフェッチすることはできます (これを実行し、プレイブックのいくつかの部分で使用するために変数に格納します)。
進行状況を表示するときにホスト名にこの文字列を使用するように Ansible を取得する方法はありますか? もっと説明的なものを見たいと思います(IPを記憶していないため):
インベントリ スクリプトの出力はec2.py
次のようになります (省略されています。非常に長いです)。
ansible - ansibleインベントリファイルでハッシュ(dict)を定義する方法は?
group_vars/all で以下のようにハッシュ (dict) を定義できます。
しかし、私の人生では、ホストファイルの下でそれを定義する方法を理解できませんでした
それが間違っていたことはわかっていますが、正しい方法はわかりません。誰か教えてください。
ansible - Ansible: ホストのシリアル番号を設定するにはどうすればよいですか
EC2 でホストをプロビジョニングしようとしているので、Ansible Dynamic Inventory を使用しています。
私がやりたいことは次のとおりです。各ノードのシリアル番号を設定します。
例: Zookeeper の「myid」構成
Zookeeper には、各ノードに「myid」という名前のシリアル番号が必要です。hostA の場合は 1、hostB の場合は 2、hostC の場合は 3 などです。
これは、「myid」ファイルをホストにコピーする私のプレイブックの一部です。
そしてmyid.j2
、以下のようになるはずです。
問題は、変数 "{{ serial_number }}" はどのようにすべきかということです。