てくなべ (tekunabe)

ansible / network automation / 学習メモ

Postman の URL 欄に curl コマンドをペーストすると Postman のリクエスト設定に変換してくれる

はじめに Postman は、HTTP リクエストを自由自在に出せるツールで、REST API を叩くときなどに利用しています。 (最近 VS Code 向けの拡張があることを知りました) 偶然知ったのですが、URL を入力する欄に curl のコマンドをペーストすると、Postman の…

[Ansible/EDA] Automation Controller との連携に EDA Controller が必要かどうか考える

はじめに 以前の記事 で、Palo Alto ファイアウォールと EDA Controller、Automation Controller の連携を試しました。 記事の中でも触れていますが、EDA Controller が本当に必要かどうかは考えず、とりあえず手を動かしてみた趣旨でした。 連携を考えるう…

[Ansible] Palo Alto ファイアウォールから Automation Controller のジョブテンプレートを実行する(EDA Controller なし)

はじめに 前回の記事(以下、EDAありの記事)で、EDA Controller を使い、Palo Alto ファイアウォールの設定変更したらコンフィグを git にバックアップする仕組みを作ってみました。 作っている途中、EDA Controller を経由しなくても同等のことが実現でき…

[Ansible/EDA] EDA Controller に設定されている連携先 Automation Controller のURLを確認、変更する

はじめに EDA Controller から Automation Controller のジョブテンプレートを実行するといった連携ができます。 そのためには、EDA Controller 側に、Automation Controller の URL を指定する必要があります。 インストール時であればインストーラー の in…

[Ansible/EDA] Automation Controller のジョブテンプレート側で、EDA Controller 側のイベント情報を参照できる ansible_eda 変数

はじめに EDA Controller 側から run_job_temolate アクションを利用すると、API 経由でAutomation Controller のジョブテンプレートを実行できます。 (なお、ansible-rulebook 1.0.0 現在、ワークフロージョブテンプレートは実行できません。機能追加予定 …

[Ansible/EDA] EDA Controller ではユーザー「eda」が DE(Decision Environment)を扱う

はじめに Automation Controller では、awx というユーザーで EE (Execution Environment) で pull などしてました。 AAP 2.4 で追加された EDA Controller だとどうなんだろうと調べてみました。 環境 EDA Controller 1.0.0 バージョン番号は rpm のファイ…

pip install コマンドの --dry-run コマンドで、インストール予定のパッケージを確認する

、# はじめに たまたまですが、pip install コマンドに --dry-run オプションが有ることを知りました。 連想できる通り、指定したパッケージを実際にはインストールせずに、依存パッケージ含めて何がインストールされる予定かを教えてくれるオプションです。…

[Ansible/EDA] Palo Alto ファイアウォールの設定変更したらコンフィグを git にバックアップする仕組みを作ってみた

はじめに 以前の記事で、 paloaltonetworks.panos コレクションを含む Decision Environment (DE) をビルドしました。 せっかくなので、paloaltonetworks.panos コレクション内の logs イベントソースプラグインを使って、Palo Alto のファイアウォールと、 …

[Ansible] ansible-builder はコレクションが依存しているパッケージもインストールしてくれる

はじめに Ansible の Execution Environment(EE、Playbookを実行するコンテナイメージ)をビルドするツールとして、ansible-builderがあります。 正直、私はこれまで「Dockerfile / Containerfile を yaml で記述できるちょっとしたラッパーツール」くらい…

[Ansible/EDA] カスタム の Decision Environment (DE)を ansible-builder でビルドする

はじめに EDA Controller では、Rulebook を実行するために Decision Environment(画面上の文言は "決定環境" )が必要です。実態は利用するコンテナイメージの指定です。Automation Controller が Playbook を実行するために、Execution Environment(EE、…

JANOG52 Meeting 参加レポート

はじめに 2023/07/05-07 に長崎県長崎市で開催(現地とオンラインのハイブリッド)された JANOG52 Meeting にオンラインで参加しました。現地も盛り上がって、コロナ禍まえに徐々に戻ってきているみたいでしたね。 本記事では、当日参加したプログラム、現時…

[Ansible] docs や expamles がリポジトリ移行。WinRM セットアップスクリプトがリンク切れに

はじめに Ansible の コミュニティドキュメントを、リポジトリansible/ansible から分けて ansible-documentation に移す動きが進んでいます。 この記事では、これまでの経緯や今のところ分かっている影響をまとめます。 経緯 分かっている範囲では、発端は…

[Ansible/AAP] Automation Controller 4.4 で tech preview 中の新しい UIへ切り替える

はじめに AWX の方では少し前(21.14.0 あたり?)から、新しい UI が tech preview 扱いで利用できるようになりました。 先月リリースされた AAP 2.4 に含まれる Automation Controller 4.4 でも tech preview 扱いで限定的に利用できるようになりました。…

[Ansible/EDA] EDA Controller でログイン時に 400 Bad Request のエラーになる現象と対処

はじめに AAP 2.4 のインストーラーを利用インストールした EDA Controller のうち、特定の環境だけが、ログインしようとすると HTTP 400 のエラーが発生しました。 現象と原因、対策をまとめます。 環境 AAP 2.4 AWS EC2 インスタンスを利用 [2023/08/01 追…

[Ansible/EDA] AAP2.4 の EDA Controller と Automation Controller をインストールして連携を試す

はじめに Red Hat Ansible Automation Platform (AAP) 2.4 がリリースされました。 www.ansible.com 大きなアップデートの一つに、 Event-Driven Ansible Controller の登場があります。 本ブログでもこれまで、AAP のプロダクトとしてではなく ansible/eda-…

[Ansible] EDA (Evnet-Driven Ansible) Controller / eda-server 経由で Automation Controller のジョブテンプレートを実行してみる

はじめに 前回の記事で、eda-server をデプロイしてログインできるところまで確認しました。 今回は、Webhook をイベントソースとしてAutomation Controller のジョブテンプレートを実行する仕組みを試します。 以降、念のため AAP のプロダクトとして EDA C…

[Ansible] EDA (Evnet-Driven Ansible) Controller / eda-server を docker compose でデプロイして画面を探索してみる

はじめに Event-Driven な Ansible を実現するために去年から ansible-rulebook が登場しました。 今年は先日の AnsibleFest での発表頃から更に話が進み、Event-Driven Ansible の実行基盤とも言える、EDA (Evnet-Driven Ansible) Controller の足音が聞こ…

Interop Tokyo 2023 に参加してきました

はじめに 2023/06/14-16(現地展示期間として)に開催されたInterop Tokyo 2023に参加してきました。 今年も ShowNet のさまざまな機器や、気になるブースやセッションがありましたので、いくつかまとめます。 ※ 口頭で聞いた内容を思い出しながら書いた記述…

[Ansible] FQCN でモジュールを指定しないと困るケース

はじめに 多くのモジュールがコレクションに移行してから、モジュール名は namespace.collection.module_name のようにどのコレクションのモジュールなのかを指定ができるようになりました。ここではこの指定方法を FQCN と呼びます。 Ansible本体 (ansible-…

[Ansible] 「つまずき Ansible 【Part37】Ansible Lightspeed を試してみる」ふりかえり

はじめに 2023/06/03 に、YouTube Live で「つまずき Ansible【Part37】Ansible Lightspeed を試してみる」という配信をしました。 つまずき Ansible 【Part37】Ansible Lightspeed を試してみる - connpass タスクの name に自然言語で処理を書くと、AIがタ…

[Ansible] AI で Playbook を生成する Ansible Lightspeed のクローズドベータ申込みとお試し

はじめに 先日の AnsibleFest 2023のキーノートでも発表がありましたが、AI で Playbook を生成する Ansible Lightspeed が2023年後半に提供予定されています。 以前から、申し込めばクローズドベータ版が利用できるようだったので、申し込みをして待ってい…

[Ansible] インベントリファイルにおける INI と YAML の比較

はじめに スタティックなインベントリファイルの書き方には、INI 形式や YAML 形式、などがあります(ansbile.buitlint内の一覧はこちら)。 シンプルに定義する分には INI 形式が好みです。一方で、少し込み入ってきた場合は、YAML のほうが良いかなと思い…

[Ansible] dict のようで dict でない値にキーを指定してエラーが発生した場合の対処(from_jsonフィルター)

はじめに コマンドの出力結果などで dict らしき出力を受け取った後、その中の値から必要な値を抽出する機会がときどきあります。 ところが、たとえば、キーを指定して dictらしき結果.キー名 を指定すると、以下のようなエラーまってしまうことがあります。…

[Ansible] AnsibleFest 2023 のキーノートで気になったポイント(Ansible Ligthspeed、Event-Driven Ansible)

はじめに 2023/05/23-25(現地時間)、ボストンで Red Hat Summit 2023 と AnsibleFest 2023 が開催されました。今年からこの 2つのイベントが合同開催の扱いになったようです。 私は現地には行っていませんが、3つのキーノートが YouTube Live で見れました。…

[CML] Refplat ISO のデータはディスクにコピーが必要になってた

はじめに 自宅で利用している CML(Cisco Modeling Labs)のバージョンが 2.1 のままバージョンアップできずにいました。バージョンアップするにも、最新の 2.5 系にはすんなりバージョンアップできなさそうだったのと、トポロジーファイルも保存済みだった…

[CML] 新規デプロイ時にディスクサイズを拡張しておく

cml

はじめに CML (Cisco Modeling Labs) は、使っていくとディスク容量をまぁまぁ食っていきます。 デフォルトは 32 GB で、そのうち 10GB はOS類で専有するという説明もあります。 The default hard disk capacity is set to 32 GB, and 10 GB of that space …

[Ansible] Playbookの実行結果(エラー含む)を改行付きで表示する(デフォルトのコールバックプラグイン編)

はじめに 先日、community.general.yaml コールバックプラグイン を使って、Playbook の実行結果を改行付きで表示させる方法を投稿しました。 tekunabe.hatenablog.jp ふと、デフォルトの ansible.builtin.default コールバックプラグイン でも似たようなこ…

[VSCode] エディターの表示のみ倍率変更(拡大/縮小)できるようにする設定 "editor.mouseWheelZoom": true

はじめに Visual Studio Code (VS Code ) では、表示の拡大/縮小操作ができますが、デフォルトでできる操作の場合はメニューやターミナルも倍率が変更されます。 個人的には、エディターのみ倍率変更したい機会のほうが多いので、それができればなーと思って…

[Ansible] Playbookの実行結果(エラー含む)を改行付きで表示する(community.general.yaml コールバックプラグイン編)

はじめに Ansible のエラーメッセージは、改行のない JSON で表示されるため読みにくいという意見を見かけました。確かにデフォルトだとそうです。 Ansible は Playbook 実行結果をコールバックプラグインという仕組みで扱われます。いくつか種類があるので…

[Ansible] pre-commit を使って git commit 前に自動で ansible-lint する

はじめに 先日の記事で、ansible-lint コマンドの即時性を高めるには別途仕組みが必要な旨を書きました。今回は、自動化の仕組みとして pre-commit を使って仕込んでみます。 だいぶシンプルな設定に抑えています。 導入 venv への pre-commit のインストー…