Read this in other languages: English, 日本語.
BIG-IP config module を使って、稼働中のコンフィグを保存する方法を確認する。
テキストエディアを使って bigip-config.yml
ファイルを作成します。
[student1@ansible ~]$ nano bigip-config.yml
vim
とnano
がコントールノードで利用できます。もしくは RDP で接続して Visual Studio と Atom を利用することも可能です。
Ansible の playbook は YAML ファイルです。YAML は構造化されたエンコードで人にとって読みやすい形式です(JSON と違い・・・)
以下の play 定義を bigip-config.yml
に追加してください:
---
- name: BIG-IP SETUP
hosts: lb
connection: local
gather_facts: false
---
はこのファイルが YAML であることを示します。hosts: lb
はこのプレイブックが lb グループのみで実行されることを示しています。 本演習では、BIG-IP機器は1つだけですが、もし複数台が設定されている場合には同時に設定されます。connection: local
は Playbook がローカル実行されることを示します。gather_facts: false
Fact 情報の収集を無効にします。この演習では Playbook の中で Fact 情報を利用しません。まだエディタを閉じないでください。
次に、task
を追加します。このタスクは bigip-config
を使って稼働中のコンフィグを保存します。
tasks:
- name: SAVE RUNNING CONFIG ON BIG-IP
f5networks.f5_modules.bigip_config:
provider:
server: "{{private_ip}}"
user: "{{ansible_user}}"
password: "{{ansible_password}}"
server_port: 8443
validate_certs: false
save: true
play
はタスクのリストです。タスクとリストは1:1の関係を持ちます。Ansible モジュールは再利用可能で、Ansible API、ansible
ansible-playbook
コマンドから利用できるスタンドアローンなスクリプトです。実行されたモジュールは Ansible に JSON 形式の文字列を返します。
name: SAVE RUNNING CONFIG ON BIG-IP
は利用者が定義するタスクの説明文で、この内容がターミナルに表示されます。bigip_config:
はタスクで使用されるモジュール名を指定します。provider:
: BIG-IP の詳細な接続情報のオブジェクト。server: ""
モジュールのパラメーターです。モジュールがどのBIG-IPのIPアドレスに接続するかを指定します。ここではインベントリーで定義されたprivate_ip
が指定されています。user: ""
モジュールのパラメーターです。BIP-IPにログインするユーザー名を設定しています。password: ""
モジュールのパラメーターです。BIG-IPにログインするパスワードを指定します。server_port: 8443
モジュールのパラメーターです。BIP-IPに接続する際のポート番号を指定します。validate_certs: "false"
モジュールのパラメーターです。証明書の検証を行いません。これは演習上のデモ環境のためです。save: "yes""
モジュールのパラメーターです。running-config を startup-config へ保存するします。
この操作は現在のコンフィグに変更が行われた後に実行されます。何も変更されなくても設定は startup-config に保存されます。このオプションは常に changed
を返します。ファイルを保存して、エディタを終了してください。
Playbook の実行 - コマンドラインへ戻ったら以下のコマンドでPlaybookを実行してください:
[student1@ansible ~]$ ansible-playbook bigip-config.yml
[student1@ansible]$ ansible-playbook bigip-config.yml
PLAY [BIG-IP SETUP] ************************************************************************************************************************
TASK [SAVE RUNNING CONFIG ON BIG-IP] ************************************************************************************************************************
changed: [f5]
PLAY RECAP *************************************************************************************************************
f5 : ok=1 changed=1 unreachable=0 failed=0
完成したPlaybookのサンプルは bigip-config.yml から参照できます。
本演習は終了です。演習ガイドへ戻る