はじめに Ansible のエラーメッセージは、改行のない JSON で表示されるため読みにくいという意見を見かけました。確かにデフォルトだとそうです。 Ansible は Playbook 実行結果をコールバックプラグインという仕組みで扱われます。いくつか種類があるので…
はじめに 先日の記事で、ansible-lint コマンドの即時性を高めるには別途仕組みが必要な旨を書きました。今回は、自動化の仕組みとして pre-commit を使って仕込んでみます。 だいぶシンプルな設定に抑えています。 導入 venv への pre-commit のインストー…
はじめに 2023年5月にリリース予定の ansible-core 2.15 で、vars ディレクティブ直下にリストで変数を定義する方法が Deprecated(非推奨)として警告が表示されるようになります。ansible-core 2.15 の Porting Guide にも掲載されています。 言葉にすると…
はじめに VS Code には、Ansible Playbook を書く際に便利な拡張があります。 marketplace.visualstudio.com とても便利な拡張で様々な機能があり、ファイル保存時に自動で ansible-lint を実行することもできます。 Playbook の保存時に、そのPlaybook を起…
はじめに ansible-navigator は、Playbook を実行するだけでなく ansible-lint を呼び出す機能もあります。 タイトル通り、多分 EE 側に ansible-lint が必要だろうと思っていたものの、一応確かめてみようと思ったので試しました(結果タイトル通りでした)…
はじめに ansible-lint 6.13.0 で、無視するルールを定義するファイル が導入されました。 定義ファイル名は .ansible-lint-ignore または .config/ansible-lint-ignore.txt です(個人的には後者が好み)。ファイル名の先頭の . 有無や、拡張子の有無が異な…
はじめに ansible-lint にはは、yamllint を呼んで YAML としてのチェックをする機能があります。 たとえば、1行あたりの文字数が何文字以内であるべきか、真偽値はどう指定するべきか、などのルールです。 うすうす感じていた(?)のですが、ansible-lint …
はじめに ansible-navigator 3.0.0 で、vars_prompt ディレクティブや ansible.builtin.pause モジュール のような、ユーザーの入力を待つ機能と組み合わせて使うためのオプション --enable-prompts (短縮形は --ep )が追加されました。 該当 changelog: A…
はじめに pip でいう pip freeze で requirements.txt のフォーマットを出力できるのと同じように、Ansible のコレクションでもコレクションの一覧を requirementst.yml のフォーマットで出力できれば便利かもしれないなと思いました。 ansible-galaxy colle…
quay.io/ansible/ansible-runner とは venv でははく、コンテナベースの Ansible の実行環境が登場してしばらく経ちました。 AAP を利用するときは registry.redhat.io/ansible-automation-platform-21/ee-supported-rhel8 のようなイメージを見かけますが、…
はじめに Ansible から Azure の VM の情報を取得して動的にインベントリを生成できる azure.azcollection.azure_rm インベントリプラグインでは、従来から include_vm_resource_groups オプションで、どのリソースグループに所属する VM かを絞り込みできま…
はじめに 各種 Azure リソースを操作する azure.azcollection コレクションのモジュールやプラグインを利用する場合は、依存 Python パッケージをインストールする必要があります。 上手くインストールできてなかったり、認識できていなかったりするとエラー…
はじめに Ansible から Azure の VM の情報を取得して動的にインベントリを生成できる azure.azcollection.azure_rm インベントリプラグインという便利なものがあります。 こちらの issue で、プライベートIPアドレスを接続先にするにはどうしたらよいかとい…
はじめに たまに、Ansible の設定項目一覧を眺めるのですが、結構前からあるけど知らない設定を見つけることがあります。 今回は、DISPLAY_ARGS_TO_STDOUT という設定項目。Playbook の実行ログに、モジュールに与えたオプション値を表示させるもののようで…
いろいろな書き方ができる真偽値 たとえば Ansible の Playbook では、真偽値を指定する時に、true/false 、yes/no などいろいろな書き方ができてしまいます。 去年、Ansible のコミュニティでは、ドキュメント上どう統一するのがいいかの投票がありました。…
はじめに ansible-core 2.14.0 の changelog を眺めてて始めて気がついたのですが、INVENTORY_UNPARSED_WARNING という設定項目が追加されていました。 インベントリファイルを読み込めなかったときに表示される警告、[WARNING]: No inventory was parsed, o…
はじめに 2023/01/25-27 に山梨県富士吉田市で開催(現地とオンラインのハイブリッド)された JANOG51 Meeting にオンラインで参加しました。 はじめて JANOG Meeting に参加したのが JANOG41 だったので、今回で10回目となりました。 現地は、満席で立ち見…
はじめに Azure の操作を自動化するとき、みなさんどんなツール使うことが多いのかなと思い、先日こんなアンケートをとってみました。 (アンケートです)Azure リソース操作の自動化で主に使ってるもの(選択肢1/2)— よこち (@akira6592) 2023年1月11日 (…
はじめに 先日、関連付けされていない NSG を Azure CLI で洗い出してまとめ削除するという記事を投稿しました。 tekunabe.hatenablog.jp これを Ansible でもやってみようとおもって、やってみました。 環境 ansible-core 2.12.1 azure.azcollection 1.14.0…
はじめに セキュリティグループ(NSG)の設定の自動化を試しているうちに、どのサブネット、どのネットワークインターフェースにも関連づいていない不要な NSG がちらほらできてしまいました。これらを洗い出したり、まとめ削除したいなと思うことがありまし…
はじめに 先日、以下の記事を拝見しました。 zenn.dev そこで、ネットワークセキュリティグループのルール内のプロトコル(TCP など)の大文字小文字が、ポータルから設定するときと、Ansible から設定するときとで異なることを知りました。 気になったので…
はじめに Azure 情報さまざまなリソースをコマンドラインで操作できる Azure CLI というツールがあります。 裏では Azure REST API を叩いていたりするようです。ときどき、Azure CLI による操作がどういう API を叩いてるのか(エンドポイント、ボディ)、…
この記事は、Ansible Advent Calendar 2022 (Adventar 版) の 24日目の記事です。 はじめに Ansible には AWS の EC2 インスタンスの情報を取得し、動的なインベントリとして扱える amazon.aws.aws_ec2_inventory というインベントリプラグインがあります。 …
この記事は Ansible Advent Calendar 2022 23日目の記事です。 はじめに 2022年もAnsible関連で様々なリリースがありました。ansible-core や AAP も予定通りバージョンアップされてきました。 ansible-rulebook(developer preview)もインパクトがありまし…
この記事は、Ansible Advent Calendar 2022 (Adventar 版) の 23日目の記事です。 はじめに コレクションをインストールするための ansible-galaxy collection install というコマンドがあります。 コレクション名(cisco.ios など)を指定して、オンライン…
この記事は、Ansible Advent Calendar 2022 (Adventar 版) の 22日目の記事です。 はじめに community.zabbix コレクション内のモジュールは、最近のバージョンでは httpapi コネクションプラグインに対応してきたようです。 これにより、各タスクで server_…
この記事は、Ansible Advent Calendar 2022 (Adventar 版) の 21日目の記事です。 はじめに ansible-core 2.14.0 で、URL、URI、URN の文字列をチェックするテストプラグインが追加されました。 url uri urn 使用例は、それぞれのドキュメントページの Examp…
この記事は、Ansible Advent Calendar 2022 (Adventar 版) の 20日目の記事です。 偶然ですが、同日 Qiita 版に同じフィルターを扱った記事がアップされています。こちらも是非ご覧ください。 ansible.utilsコレクションのフィルタ(keep_keys/remove_keys/re…
この記事は、Ansible Advent Calendar 2022 (Adventar 版) の 19日目の記事です。 はじめに Ansible の公式ドキュメントは、GitHub のリポジトリ ansible/ansible 上で追加や修正されています。 devel ブランチのコミットを追っても分かるといえば分かるので…
この記事は、Ansible Advent Calendar 2022 (Adventar 版) の 18日目の記事です。 はじめに あらためて考えると「あれ、どうだっけ?」となることの一つに、変数の評価タイミングがあります。 インベントリ変数や、Play変数、vars_files 、set_fact、include…