jedimt.nebulon_manage_volumes

Rola Ansible: Zarządzanie Woluminami Nebulon

Zarządza woluminami dla nPodów Nebulon.

Wymagania

  • NebPyClient 2.0.8+
  • Nebulon Ansible Module 1.4.0+

Zmienne Roli

Zmienne są zdefiniowane w pliku defaults/main.yml. W tym przykładzie numery seryjne SPU są również przechowywane w skarbcu Ansible.

# Stan dla wszystkich woluminów (obecny|nieobecny)
volume_state: obecny

# Określ metodę eksportu LUN (nie wpływa na podstawowy wolumin)
# (obecny|wszystkie) -> Wszystkie serwery nPod mogą uzyskać dostęp do eksportu
# (host) -> Udostępnij eksport tylko jednemu hostowi. Wymaga host_uuid
# (lokalny) -> Udostępnij eksport tylko lokalnemu hostowi, który jest właścicielem woluminu
# (nieobecny) -> Usuń eksport woluminu
export_type: lokalny

# Nazwa nPoda do użycia przy zarządzaniu woluminami/eksportami
npod_name: "K8s_Lenovo"

host_uuid:

# Lista woluminów do zarządzania (tworzenie lub usuwanie)
volumes:
  - name: "server-10-local-kadalu"
    size: 1000000000000
    mirrored: true
    owner_spu_serial: "{{ server-10-spu-serial }}"
    backup_spu_serial: "{{ server-09-spu-serial }}"
    state: "{{ volume_state }}"

  - name: "server-11-local-kadalu"
    size: 1000000000000
    mirrored: true
    owner_spu_serial: "{{ server-11-spu-serial }}"
    backup_spu_serial: "{{ server-12-spu-serial }}"
    state: "{{ volume_state }}"

  - name: "server-12-local-kadalu"
    size: 1000000000000
    mirrored: true
    owner_spu_serial: "{{server-12-spu-serial }}"
    backup_spu_serial: "{{ server-11-spu-serial }}"
    state: "{{ volume_state }}"

Zależności

Brak.

Przykładowy Playbook

# ===========================================================================
# Zarządzaj Woluminami Nebulon
# ===========================================================================

# Przykładowe wywołanie:
# ansible-playbook -i inventory/lenovo.yml playbooks/ansible-playbook-nebulon-volume/manage_nebulon_volumes.yml

- name: Zarządzaj Woluminami Nebulon
  hosts: localhost
  connection: local
  tags: play_neb_vols
  gather_facts: false

  # module_defaults wymaga nebulon.nebulon_on w wersji 1.2.1 lub nowszej
  module_defaults:
    group/nebulon.nebulon_on.nebulon:
      neb_username: "{{ vault_neb_username }}"
      neb_password: "{{ vault_neb_password }}"

  vars_files:
    # Skarbiec Ansible z wszystkimi wymaganymi hasłami
    - "../../credentials.yml"
    # Skarbiec Ansible z numerami seryjnymi serwera i SPU
    - "../../serials.yml"

  roles:
    - { role: jedimt.nebulon_manage_volumes }

Licencja

MIT

Informacje o Autorze

Aaron Patten
aaronpatten@gmail.com

O projekcie

Manage Nebulon volumes

Zainstaluj
ansible-galaxy install jedimt.nebulon_manage_volumes
Licencja
mit
Pobrania
89
Właściciel