f5devcentral.bigip_onboard

bigip-onboarding

BIG-IPのオンボーディング設定を自動化するためのAnsibleロール。このロールは以下の設定を行います。

  • BIG-IPホスト名
  • BIG-IP SSHバナーのテキスト
  • NTPサーバー
  • DNSサーバー
  • BIG-IPでのモジュールのプロビジョニング(ASM/AFMなど)
  • VLANとセルフIPの設定

要件

  • このロールはAnsible 2.6が必要です
  • インストールするパッケージ
    • pip install f5-sdk
    • pip install bigsuds
    • pip install netaddr

ロール変数

このロールに渡すことができる変数とその簡単な説明は以下の通りです。

username: admin                                     //BIG-IPのユーザー名
password: admin                                     //BIG-IPのパスワード

banner_text: "--ようこそオンボーディングBIG-IPへ--" //ユーザーがBIG-IPにSSH接続した時のバナー

hostname: 'ansibleManaged-bigip.local'              //BIG-IPのホスト名

ntp_servers:                                        //BIG-IPに設定されたNTPサーバー
 - '172.27.1.1'
 - '172.27.1.2'

dns_servers:                                        //BIG-IPに設定されたDNSサーバー
 - '8.8.8.8'
 - '4.4.4.4'

dns_search_domains:                                 //BIG-IPに設定されたDNS検索ドメイン
 - 'local'
 - 'localhost'

device_license: 'AAAAA-BBBBB-CCCCC-DDDDD-EEEEEEE'   //BIG-IPライセンスキー。ライセンス作業を行いたい場合のみこの変数を宣言してください。

ip_version: 4                                       //DNSプロトコルバージョン

vlan_information:                                   //BIG-IPに設定されたVLAN
 - name: 'External'                                 //例: VLAN 'External' タグ10
   tag: '10'                                       //タグ10がインターフェース1.1に設定されます。'tag'パラメータを省略すると、タグなしVLANが作成されます。
   interface: '1.1'                                 
 - name: 'Internal'                                 //例: VLAN 'Internal' タグ11 
   tag: '11'                                       //タグ11がインターフェース1.2に設定されます。'tag'パラメータを省略すると、タグなしVLANが作成されます。
   interface: '1.2'

selfip_information:                                 //BIG-IPに設定されたセルフIP
 - name: 'External-SelfIP'                                        
   address: '10.168.68.5'                                         
   netmask: '255.255.255.0'
   vlan: 'External'
   allow_service: 'default'
 - name: 'Internal-SelfIP'
   address: '192.168.68.5'
   netmask: '255.255.255.0'
   vlan: 'Internal'
   allow_service: 'default'

module_provisioning:                                 //BIG-IPでのモジュールプロビジョニング
 - name: 'asm'                                       //BIG-IPでASMモジュールが有効化されます
   level: 'nominal'

例示プレイブック

- hosts: bigips
  gather_facts: false
  roles:
  - { role: f5devcentral.bigip-onboarding }

認証情報の保管

このロールはBIG-IPへのアクセスに認証情報を使用するため、これらの変数はansible-vaultで暗号化されたファイルに提供することをお勧めします。

これはこのロールとは別に提供できます。

手順:

  • ボールトパスワードをファイルに保存 - '~/.vault_pass.txt'
  • プレイブックを次のように実行 - ansible-vault encrypt <> --vault-password-file ~/.vault_pass.txt

詳細については、以下を参照してください: http://docs.ansible.com/ansible/latest/playbooks_vault.html

証明書の検証

BIG-IP REST APIのSSL証明書を検証するには

ライセンス

BIG-IPのライセンスを取得する際に、このロールはあなたの代わりにEULA(エンドユーザーライセンス契約)に同意します。このモジュールはEULAを表示しないため、こちらで読むことが必要です: https://support.f5.com/csp/article/K12902

クレジット

https://github.com/F5Networks/f5-ansible

プロジェクトについて

Performs a basic series of on-boarding steps to bootstrap a BIG-IP system to the point that it can accept configuration.

インストール
ansible-galaxy install f5devcentral.bigip_onboard
ライセンス
apache-2.0
ダウンロード
11.5k
所有者
Community Supported Repos