1. はじめに
前回のansibleのプレイブックをAWX環境で動かしルータに設定できるか試してみました。
今回はルータに設定できるか試すだけなので、1つのルータの設定と確認のみを行うこととします。
いきなりAWXと思いますが、気にしないでください(笑)
自宅のサーバにAWX環境構築済みの為、環境構築からの記事にはなっておりません。 またどこかの機会で環境構築の記事を作成することがあるかもしれません。(多分)
2. AWX構築環境
簡単にAWXの環境だけ記載しておきます。
マシン:Dell Poweredge R410を使用 OS:VMware ESXi 上のubuntuを使用
3. ターゲットデバイス情報
前回と同様
3. AWX実行までの流れ
プレイブックをgithubにプッシュ
プロジェクト設定
インベントリー設定
認証設定
テンプレート設定
4. プレイブック
今回はルータ1台に対して設定を行うことを実験するので、設定は下記とする。 プレイブックのファイル名はospf.ymlとしてgithubにプッシュを行った。 今回使用したgithubのブランチはプライベートのブランチになる為、記載を行わないこととする。
--- - hosts: R3 gather_facts: no tasks: - name: interface-setup ios_config: parents: - interface GigabitEthernet0 lines: - ip address 192.168.2.2 255.255.255.0 - name: ospf-setup ios_config: parents: - router ospf 1 lines: - network 192.168.2.2 0.0.0.0 area 0
5. プロジェクト設定
プロジェクト設定ではプレイブックが格納されているブランチやディレクトリを指定を行う。 今回はgithubにプレイブックをプッシュした為、SCMタイプはGitとしている。(下図参照) SCMタイプを手動にするとAWXサーバに格納したプレイブックを指定することができる。
6. インベントリー設定
次にAWXのインベントリー設定となる。
前回はインベントリーファイルにホストIPの情報と変数に認証情報などを記載しました。
同様にAWXのインベントリーにも設定を行う。
AWXのインベントリーはサイドメニューのインベントリーにて新規でインベントリーを作成することができます。 次の図では変数の詳細を行う。(図は既に設定済みになる) 設定内容は下記になる
- 名前(任意)
- インスタンスグループ
- 組織(デフォルトだとadminが組織名になっている為、こちらを使用)
- 変数(前回と同様の変数設定で良いがコロン(:)で区切ること)
次にホストの設定を行います ホストの設定は下記とします。
- ホスト名(プレイブックで指定したホスト名と同じ)
- ホストIP
- sshポート
7. 認証設定
認証設定ではホストの認証設定を行う。 注意する点は認証情報タイプをマシンにすること。
今回はnetwork_cliで接続を行う為、マシンとなる。
その他の設定項目は環境に合わせて設定を行えば問題ない。
8. テンプレート設定
こちらも既に設定済みの画像であるが、 サイドメニューのテンプレートにてジョブを作成することができる。
*は作成したいテンプレートジョブに応じて変更を行ってください。 今回だとインベントリー、プロジェクト、PLAYBOOKは先ほどまで作成したのを使用する為、図の通りになる。 ジョブタイプは実行とチェックが有ります。 実行はPLAYBOOKの実行を行い、チェックはPLAYBOOKの構文の検査のみを行う。
9.実行と確認
実行と結果については下図を参照ください。
AWX側の実行
ciscoルータにて確認。
10.最後に
まだ慣れてないことが多い為、その辺も踏まえ今後は記事で残して行けたらと思います。 またブログを作成する上でも動画を載せたいのですが、動画ファイルを直接添付ができない。 その為、youtubeを始める予定ですが、まだyoutubeのチャンネルを稼働しておりません。 開始したらブログに動画を載せよりわかりやすいブログを目指します。 また間違っている点など有りましたらコメントください。