演習 4.1: Tower ジョブテンプレートの作成

Read this in other languages: uk English, japan 日本語.

目次

目的

Red Hat Ansible Tower の BIG-IP 仮想サーバー構成ジョブテンプレートをデモします。このジョブテンプレートは、仮想サーバーとプールを作成し、2つの Web サーバーをプールに追加します。

Ansible Tower で Ansible Playbook を実行するには、ジョブテンプレート を作成する必要があります。ジョブテンプレート には以下が必要です。

解説

Step 1: プロジェクトを作成する

  1. Web UI を開き、左側のメニューバーから リソース セクションの下にある プロジェクト をクリックします。

  2. 緑色のtemplates linkボタンをクリックして、新しくプロジェクトを作成します。

  3. 以下の通りにパラメータを入力し、保存 をクリックします。

    パラメータ
    名前 Workshop Project
    組織 Default
    SCM タイプ Git
    SCMURL https://github.com/f5devcentral/ansible-tower-workshop-examples.git
    起動時のリビジョン更新

Note: ご使用の環境には、追加のプロジェクトがセットアップされている場合があります。各プロジェクトは、Ansible Playbook のリポジトリを表します。複数のプロジェクトがあるのは正常です。

workshop_project link

すべての Playbook は https://github.com/f5devcentral/ansible-tower-workshop-examples から入手でき、各 Playbook を確認することができます。

参考に、インポートされている、このラボの後半で実行される Playbook の一つを次に示します。

create_vs.yml

---
- name: BIG-IP SETUP
  hosts: lb
  connection: local
  gather_facts: false

  tasks:
    - name: Setting up provider values
      set_fact:
       provider:
        server: ""
        server_port: "8443"
        validate_certs: "False"
  
    - name: CREATE NODES
      bigip_node:
        provider: ""
        host: ""
        name: ""
      loop: ""

    - name: CREATE POOL
      bigip_pool:
        provider: ""
        name: "http_pool"
        lb_method: "round-robin"
        monitors: "/Common/http"
        monitor_type: "and_list"

    - name: ADD POOL MEMBERS
      bigip_pool_member:
        provider: ""
        state: "present"
        name: ""
        host: ""
        port: "80"
        pool: "http_pool"
      loop: ""

    - name: ADD VIRTUAL SERVER
      bigip_virtual_server:
        provider: ""
        name: "vip"
        destination: ""
        port: "443"
        enabled_vlans: "all"
        all_profiles: ['http','clientssl','oneconnect']
        pool: "http_pool"
        snat: "Automap"

    - name: PRINT OUT WEB VIP FOR F5
      debug:
        msg: "The VIP (Virtual IP) is https://"

Step 2: BIG-IP 認証情報の作成

ジョブを作成する前に、BIG-IP に対して認証するための資格情報を作成する必要があります。

  1. Web UI を開き、左側のメニューバーから リソース セクションの下にある 認証情報 をクリックします。

    credentials link

  2. 緑色のtemplates link ボタンをクリックし、新しく認証情報テンプレートを作成します。

  3. 以下の通りに、認証情報パラメータをフィールドに入力します。

パラメータ
名前 BIGIP
認証情報タイプ ネットワーク
ユーザ名 admin
パスワード  

NOTE: パスワードは、学生ラボ情報が含まれているWebページのワークベンチ情報セクションにあります。パスワードがわからない場合は、講師に相談してください。

  1. 保存 をクリックします。

Step 3: ジョブテンプレートの作成

  1. Web UI を開き、左側のメニューバーから リソース セクションの下にある テンプレート をクリックします。

    template link

  2. 緑色のtemplates link ボタンをクリックし、新しくジョブテンプレートを作成します。

  3. 以下の通りにパラメータを入力します。

パラメータ
名前 create_vs
ジョブタイプ 実行
インベントリー Workshop Inventory
プロジェクト Workshop Project
Playbook create_vs.yml
認証情報 BIGIP

認証情報タイプから ネットワーク を選択し、次に BIGIP を選択します。

network credential

これは、パラメータが入力されたジョブテンプレートのスクリーンショットです。

create_vs job template

  1. 下にスクロールして、緑色の 保存 ボタンをクリックします。

Step 4: ジョブテンプレートの起動

  1. 全てのテンプレートが一覧表示されている テンプレート ウインドウに戻ります。

  2. ロケットボタンを押して、create_vs を起動します。

    rocket button

    ロケットボタンをクリックすると、ジョブが起動します。ジョブ詳細表示 という新しいウインドウを開き確認します。Tower Jobsの詳細については、ドキュメントを参照してください。

Step 5: ジョブ詳細表示の確認

左側には 詳細ペイン があり、右側には 標準出力ペイン があります。

job details view

  1. 詳細ペイン を確認します。

    詳細ペインは、ジョブの開始と終了時のタイムスタンプのような情報や、ジョブの種類(チェックや実行)、ジョブを起動したユーザ、プロジェクトや Ansible Playbook 等の情報を提供します。

    ジョブがまだ終了していない場合、詳細ペイン にはキャンセルcancel buttonボタンがあり、ジョブを停止するために使用することができます。

  2. 標準出力ペイン を確認します。

    標準出力ペイン は、Ansible Playbook の出力を表示します。全ての Task の出力は、コマンドラインの出力と全く同じです。

  3. 出力の展開 expand image ボタンをクリックします。

    これにより、標準出力ペイン が拡張され、ウインドウ全体が表示されます。

  4. 標準出力ペイン の中から Task をクリックし、特定の Task から構造化された出力を開きます。

    任意の changed もしくは ok がある行をクリックします。

    task details window

Step 6: ジョブウインドウの確認

実行完了もしくは実行中の ジョブテンプレートジョブ ウインドウに表示されます。

  1. Web UI で、左側のメニューバーから ジョブ ボタンをクリックします。

    jobs button

    ジョブウインドウには、ジョブのリストとそのステータスが表示され、正常に完了したか失敗したか、またはアクティブな(実行中の)ジョブが表示されます。この画面から実行できるアクションには、特定のジョブの詳細と標準出力の表示、ジョブの再起動、ジョブの削除などがあります。

  2. create_vs ジョブをクリックします。

    jobs link

    その create_vs のジョブは最新です(他の演習を先に進めていない限り)。 このジョブをクリックし、ジョブ詳細表示 に移動します。Ansible Tower は起動されたすべてのジョブの履歴を保存します。

Step 7: BIG-IP 仮想サーバー作成確認

Web ブラウザーから F5 BIG-IP にログインし、構成内容を確認します。
BIG-IPのログイン情報:

左側のメニューに、Virtual Servers を見つけることができます。Local Traffic をクリックし、Virtual Servers をクリックします。以下のスクリーンショットを参照してください。 vip link

Step 8: Web サーバの確認

2つの RHEL Web サーバは、それぞれ既に Apache が起動しています。Web ブラウザーから F5 ロードバランサーのパブリック IP アドレスを開きます。

今回は8443ではなく443を使用します。例: https://X.X.X.X:443/

以下に示すように、更新するたびに BIG-IP は node1 と node2 間のトラフィックの負荷を分散します: node1 link node2 link

まとめ

デモに成功しました


完了

演習4.1を完了しました。

これで本演習は終わりです。演習ガイドへ戻る