るつぼっと

NWエンジニアな人たちに向けて

Ansible

[Ansible] 変数のテキスト出力をパディングする方法

はじめに Ansibleでテキストを生成する際に、可変長の変数を使っていても出力をきれいに そろえる方法を調べたためここに書き残しておく。 予備知識 変数の表示フォーマットはJinja2経由でPythonのメソッドを使うことで定義できる。 Template Designer Docum…

[Ansible] AWX 21.1.0をAWS上へ構築してみた

はじめに お勉強のためにAWS上へAWX 21.1.0を構築した。 一応動いたのでメモを残すが、AWSもAWXもk8sも素人なので信頼しないでほしい。 なお下記の記事を参考にさせて頂きk3sを採用している。 AWX を AWX Operator でシングルノード K3s にホストする | kuro…

[Ansible] ansible_hostのIPをPlayの途中で変更する方法

はじめに Ansibleはansible_hostで定義したIPで対象ノードへ接続する。 ただNW機器の障害試験を自動化したい場合など、障害ケースによっては 指定のIPへ接続できない状況も起こりうる。 別名&別IPでinventoryを定義して一時的に使い分けてもいいが、それだ…

[Ansible] Jinja2テンプレートの役割と使い方

はじめに AnsibleにおけるJinja2テンプレートの役割について自分なりの理解を纏めてみました。 Ansible触りたての方がイメージを掴む参考になれば幸いです。 AnsibleにおけるJinja2テンプレートとは 順を追って確認してみる。 そもそも、Jinja2テンプレート…

[Ansible] PlaybookのYAML構文を理解する

はじめに Ansibleを調べ始めたけど、YAML形式がよく分からんという方向けの内容です。 具体的にはハイフンやインデントが何を意味するか見ていきます。 私自身Pythonにあまり詳しくないこともあり、正しくない表現があるかもしれません。 あくまでもイメージ…

[Ansible] vars lookupプラグインで階層構造の変数を参照する

はじめに vars lookupプラグインを使うと参照したい変数名を変数で指定できる。 しかし下記のとおり階層のトップ以外は指定できないようだ。 --- - hosts: localhost gather_facts: false vars: Fruits: Name: apple Value: 100 Target_var1: Fruits Target_…