avinetworks.aviconfig
DEPROKOWANE
⛔️ DEPROKOWANE: Ta repozytorium nie jest już wspierane, prosimy rozważyć użycie https://github.com/vmware/ansible-collection-alb zamiast, ponieważ ta rola została przeniesiona do kolekcji Ansible.
Ta rola umożliwia użytkownikowi konfigurację Avi poprzez dostarczenie słownika obiektów konfiguracyjnych Avi. Rola ta wywołuje odpowiednie moduły Ansible dla Avi jako zadania w prawidłowej kolejności, zapewniając spójną i udaną konfigurację.
Wymagania
- python >= 2.7
- avisdk
Ta rola wymaga Ansible w wersji 2.2 lub wyższej. Wymagania są wymienione w pliku metadanych.
Proszę zainstalować avisdk za pomocą pip przed uruchomieniem tego modułu.
pip install avisdk --upgrade
Instalacja
Aby zainstalować moduł Ansible aviconfig, proszę wpisać poniższe polecenie na maszynie, z której będzie uruchamiane Ansible.
ansible-galaxy install avinetworks.aviconfig
Szczegółowe informacje można znaleźć na http://docs.ansible.com/ansible/galaxy.html
Zmienne Roli
avi_config
To słownik wszystkich zasobów REST Avi, które użytkownik chce skonfigurować. Rola aviconfig wywołuje moduły Ansible dla Avi, aby skonfigurować te ustawienia w kontrolerze Avi. Przykład:
- name: definiowanie konfiguracji 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: Aplikacja Avi | Konfiguracja Foo
import_role:
name: avinetworks.aviconfig
vars:
avi_config: "{{avi_config}}"
avi_config_file
To lokalizacja, z której rola ma odczytać obiekty konfiguracyjne Avi. Ładowała zmienną avi_config z tego pliku, jeśli jest zdefiniowana. Przykład:
- name: Aplikacja Avi | Konfiguracja VMWare Cloud z dostępem do zapisu
import_role:
name: avinetworks.aviconfig
vars:
avi_config_file: application/config.yml
avi_creds_file
To lokalizacja zmiennych poświadczeń dla kontrolera Avi. Zwykle powinien to być plik skarbca Ansible. Przykład:
- name: Aplikacja Avi | Konfiguracja VMWare Cloud z dostępem do zapisu
import_role:
name: avinetworks.aviconfig
vars:
avi_config_file: application/config.yml
avi_creds_file: credentials/creds.yml
avi_config_state
To globalne nadpisanie do usunięcia wszystkich obiektów REST Avi, które są wymienione w katalogu avi_config. Jest to przydatne do stworzenia pełnej konfiguracji, a następnie usunięcia wszystkich obiektów.
avi_config_state=absent
Przykład: ansible-playbook site_applications.yml --extra-vars "site_dir=`pwd` avi_config_state=absent"
Przykłady Playbooków
---
- hosts: localhost
connection: local
roles:
- role: avinetworks.avisdk
tasks:
- name: Aplikacja Avi | Konfiguracja foo
import_role:
name: avinetworks.aviconfig
vars:
avi_config_file: "foo/config.yml"
avi_creds_file: "vars/creds.yml"
Ten przykład pokazuje, jak utworzyć avi_config jako część zadania i przekazać go do roli.
---
- hosts: localhost
connection: local
roles:
- role: avinetworks.avisdk
tasks:
- name: definiowanie konfiguracji 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: Aplikacja Avi | Konfiguracja foo
import_role:
name: avinetworks.aviconfig
vars:
avi_config: "{{avi_config}}"
avi_creds_file: "vars/creds.yaml"
Dostępnych jest wiele innych przykładów pod adresem https://github.com/avinetworks/devops/tree/master/ansible.
Licencja
Apache 2.0
Informacje o autorze
Gaurav Rastogi
github: grastogi23
Ansible role to configure Avi
ansible-galaxy install avinetworks.aviconfig