LINEで送る
Pocket

ansibleで各サーバーごとに zabbix_agentd.conf を用意するというのはイケてない。
100台とかあったら毎回設定ファイルで変更するのはめんどくさすぎるし、運用上つらすぎる。

hostnameだけ変数化すれば一つのファイルで管理することができるので、今回 template モジュールを使って実装してみました。

"Server=","ServerActive=" の部分は変更を加えない
"Hostname=" を変数化してansible流すとhostsファイルをみて各サーバのhostnameを挿入する

※ちなみにsshはhostnameでログインできるようにしてます。


■構成

・tasks/main.yml

・templates/zabbix_agentd.conf


■まとめ

これで各サーバごとのconfファイルを1つのファイルで管理することができた!
他にも変数化できるところあったらやっちゃおう。
というかこれの応用。

[ansible]マジック変数を使いこなしているか!?inventory_hostname編

参考
http://docs.ansible.com/ansible/template_module.html

LINEで送る
Pocket

カテゴリー: Ansible

adachin

1989年生まれのLancers SRE。 ホスティングから大規模なアドテクなどのインフラエンジニアとして携わり、AnsibleやTerraformでのインフラコード化を推進。副業では数社サーバー保守、未経験によるエンジニアのメンターなども実施している。また、「脆弱性スキャナVuls」のOSS活動もしており、自称エバンジェリスト/技術広報/テクニカルサポート/コントリビュータでもある。現在はサービスの信頼性向上、可用性、レイテンシ、パフォーマンス、モニタリング、緊急対応、インフラコード化、リファクタリング、セキュリティ強化、新技術の検証、Docker開発環境の提供、AWSでのインフラ構築、グループ会社のインフラをECS/Fargateへ移行、CakePHP4での管理画面作成、メンター、分析基盤の運用を担当している。

0件のコメント

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください