avinetworks.aviconfig

廃止予定

Ansible Galaxy

⛔️ 廃止予定: このリポジトリはサポートされていません。代わりに https://github.com/vmware/ansible-collection-alb の使用を検討してください。 この役割はAnsibleコレクションに移行されました。

この役割は、ユーザーがAviの設定オブジェクトの辞書を提供するだけでAviを構成する機能を提供します。この役割は、正しい順序でAvi Ansibleモジュールをタスクとして呼び出し、一貫した成功した構成を確保します。

必要条件

  • python >= 2.7
  • avisdk

この役割はAnsible 2.2以上を必要とします。必要条件はメタデータファイルにリストされています。

このモジュールを実行する前に、pipからavisdkをインストールしてください。

pip install avisdk --upgrade

インストール

aviconfig Ansibleモジュールをインストールするには、Ansibleを実行するマシンで以下のコマンドを発行してください。

ansible-galaxy install avinetworks.aviconfig

詳しくは http://docs.ansible.com/ansible/galaxy.html をご覧ください。

役割変数

avi_config

これは、ユーザーが設定したいすべてのAvi RESTリソースの辞書です。Aviconfig役割は、Aviコントローラーにこれらの設定を構成するためにAvi Ansibleモジュールを呼び出します。例:

- name: avi設定を定義する
  set_fact:
    avi_config:
      pool:
        - name: "foo-pool"
          lb_algorithm: LB_ALGORITHM_ROUND_ROBIN
          servers:
            - ip:
                 addr: "42.42.42.42"
                 type: 'V4'
      virtualservice:
        - name: foo
          services:
            - port: 80
          pool_ref: "/api/pool?name=foo-pool"
          vip:
            - ip_address:
                addr: "10.10.10.10"
                type: 'V4'
              vip_id: '1'

- name: Aviアプリケーション | Fooを設定
  import_role:
    name: avinetworks.aviconfig
  vars:
    avi_config: "{{avi_config}}"

avi_config_file

これは役割がAvi構成オブジェクトを読み取る場所を提供します。このファイルから変数avi_configをロードします(定義されている場合)。例:

- name: Aviアプリケーション | 書き込みアクセスを持つVMWareクラウドを設定
  import_role:
    name: avinetworks.aviconfig
  vars:
    avi_config_file: application/config.yml

avi_creds_file

これはAviコントローラーの資格情報変数の位置を提供します。通常、これはAnsibleボールトファイルであるべきです。例:

- name: Aviアプリケーション | 書き込みアクセスを持つVMWareクラウドを設定
  import_role:
    name: avinetworks.aviconfig
  vars:
    avi_config_file: application/config.yml
    avi_creds_file: credentials/creds.yml

avi_config_state

これは、avi_configディレクトリにリストされたすべてのAvi RESTオブジェクトを削除するためのグローバルオーバーライドです。これは、完全な構成を作成し、その後すべてのオブジェクトを削除するのに便利です。

avi_config_state=absent
例: ansible-playbook site_applications.yml --extra-vars "site_dir=`pwd` avi_config_state=absent"

サンプルプレイブック

---
- hosts: localhost
  connection: local
  roles:
    - role: avinetworks.avisdk
  tasks:
    - name: Aviアプリケーション | fooを設定
      import_role:
        name: avinetworks.aviconfig
      vars:
        avi_config_file: "foo/config.yml"
        avi_creds_file: "vars/creds.yml"

この例は、タスクの一部としてavi_configを作成し、それを役割に渡す方法を示しています。

---
- hosts: localhost
  connection: local
  roles:
    - role: avinetworks.avisdk
  tasks:
    - name: avi設定を定義する
      set_fact:
        avi_config:
          pool:
            - name: foo-pool
              lb_algorithm: LB_ALGORITHM_ROUND_ROBIN
              servers:
                - ip:
                     addr: 42.42.42.42
                     type: V4
          virtualservice:
            - name: foo
              services:
                - port: 80
              pool_ref: "/api/pool?name=foo-pool"
              vip:
                - ip_address:
                    addr: 10.10.10.10
                    type: V4
                  vip_id: '1'

    - name: Aviアプリケーション | fooを設定
      import_role:
        name: avinetworks.aviconfig
      vars:
        avi_config: "{{avi_config}}"
        avi_creds_file: "vars/creds.yaml"

他にも多くの例がこちらにあります。

ライセンス

Apache 2.0

著者情報

ガウラブ・ラスゴウィ

github: grastogi23

[https://www.linkedin.com/in/grrastogi]

インストール
ansible-galaxy install avinetworks.aviconfig
ライセンス
apache-2.0
ダウンロード
43.8k
所有者