avinetworks.aviconfig

OBSOLETO

Ansible Galaxy

⛔️ OBSOLETO: Este repositorio ya no es compatible, por favor considera utilizar https://github.com/vmware/ansible-collection-alb en su lugar ya que este rol ha sido migrado a colecciones de Ansible.

Este rol permite al usuario configurar Avi simplemente proporcionando un diccionario de objetos de configuración de Avi. Este rol invoca los módulos de Ansible adecuados de Avi como tareas en el orden correcto, asegurando una configuración consistente y exitosa.

Requisitos

  • python >= 2.7
  • avisdk

Este rol requiere Ansible 2.2 o superior. Los requisitos están listados en el archivo de metadatos.

Por favor, instala avisdk desde pip antes de ejecutar este módulo.

pip install avisdk --upgrade

Instalación

Para instalar el módulo Ansible aviconfig, emite el comando en la máquina desde la que ejecutarás Ansible.

ansible-galaxy install avinetworks.aviconfig

Para más información, visita http://docs.ansible.com/ansible/galaxy.html

Variables del Rol

avi_config

Este es un diccionario de todos los recursos REST de Avi que el usuario desea configurar. El rol aviconfig llama a los Módulos de Ansible de Avi para configurar estas configuraciones en el Controlador de Avi. Ejemplo:

- name: Definiendo configuración de 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: Aplicación Avi | Configurar Foo
  import_role:
    name: avinetworks.aviconfig
  vars:
    avi_config: "{{avi_config}}"

avi_config_file

Esto proporciona la ubicación al rol para leer los objetos de configuración de Avi. Carga la variable avi_config desde este archivo si está definido. Ejemplo:

- name: Aplicación Avi | Configurar VMWare Cloud con acceso de escritura
  import_role:
    name: avinetworks.aviconfig
  vars:
    avi_config_file: application/config.yml

avi_creds_file

Esto proporciona la ubicación de las variables de credenciales para el Controlador de Avi. Típicamente, este debería ser un archivo de Ansible vault. Ejemplo:

- name: Aplicación Avi | Configurar VMWare Cloud con acceso de escritura
  import_role:
    name: avinetworks.aviconfig
  vars:
    avi_config_file: application/config.yml
    avi_creds_file: credentials/creds.yml

avi_config_state

Esta es una anulación global para eliminar todos los objetos REST de Avi que están listados en el directorio avi_config. Esto es útil para crear una configuración completa y luego eliminar todos los objetos.

avi_config_state=ausente
Ej. ansible-playbook site_applications.yml --extra-vars "site_dir=`pwd` avi_config_state=ausente"

Ejemplos de Playbooks

---
- hosts: localhost
  connection: local
  roles:
    - role: avinetworks.avisdk
  tasks:
    - name: Aplicación Avi | Configurar foo
      import_role:
        name: avinetworks.aviconfig
      vars:
        avi_config_file: "foo/config.yml"
        avi_creds_file: "vars/creds.yml"

Este ejemplo muestra cómo crear avi_config como parte de la tarea y pasarlo al rol.

---
- hosts: localhost
  connection: local
  roles:
    - role: avinetworks.avisdk
  tasks:
    - name: Definiendo configuración de 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: Aplicación Avi | Configurar foo
      import_role:
        name: avinetworks.aviconfig
      vars:
        avi_config: "{{avi_config}}"
        avi_creds_file: "vars/creds.yaml"

Hay muchos más ejemplos ubicados en https://github.com/avinetworks/devops/tree/master/ansible.

Licencia

Apache 2.0

Información del Autor

Gaurav Rastogi

github: grastogi23

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

Instalar
ansible-galaxy install avinetworks.aviconfig
Licencia
apache-2.0
Descargas
43.8k
Propietario