manageiq.manageiq_vmdb

manageiq.manageiq_vmdb

https://galaxy.ansible.com/manageiq/manageiq_vmdb

Die manageiq_vmdb Rolle ermöglicht es Benutzern von ManageIQ, VMDB-Objekte über ein Ansible Playbook zu ändern oder zu bearbeiten. Die Rolle enthält ein Modul manageiq_vmdb, das alle erforderlichen Aufgaben zur Bearbeitung oder Änderung von Objekten in der Datenbank übernimmt.

Anforderungen

ManageIQ muss die Gaprindashvili-Version (G Release) oder höher haben.

Das Beispiel-Playbook verwendet das manageiq_vmdb Modul, das ebenfalls Teil dieser Rolle ist.

Wenn Sie diese Rolle in Ansible Tower oder Embedded Ansible einfügen möchten, fügen Sie einfach ein leeres roles-Verzeichnis im Stammverzeichnis Ihres Playbooks hinzu und erstellen Sie eine requirements.yml-Datei mit dem folgenden Inhalt in diesem Verzeichnis:

---
- source: manageiq.manageiq_vmdb

Rollenvariablen

Zertifikate validieren: manageiq_validate_certs hat standardmäßig den Wert True. Wenn es in dem manageiq_connection-Datenfeld auf False gesetzt wird, dürfen selbstsignierte Zertifikate bei der Verwendung von SSL-REST-API-URLs verwendet werden.

ManageIQ: manageiq_connection ist ein Wörterbuch mit den Standardverbindungsinformationen. Diese Verbindungsdaten sind NUR erforderlich, wenn die Rolle außerhalb eines ManageIQ-Appliances verwendet wird. Eine ManageIQ-Appliance übergibt manageiq_connection über extra_vars, sodass die Verbindungsinformationen automatisch enthalten sind. Denken Sie daran, Ansible Vault für Passwörter zu verwenden.

    manageiq_connection:
        url: 'http://localhost:3000'
        username: 'admin'
        password: 'password'
        manageiq_validate_certs: false

Abhängigkeiten

Keine

Beispiel-Playbook

Ein Beispiel, das eine VM zu EC2 bereitstellt. Das Playbook verlinkt diese VM mit einem Dienst in der ManageIQ VMDB mithilfe des manageiq_vmdb Moduls. Das Beispiel zeigt zwei Möglichkeiten, das VMDB-Objekt an das Modul zu übergeben, entweder über einen href-Slug oder über eine Variable.

- name: Dienstverlinkung von VMs zu einem bestehenden Dienst
  hosts: localhost
  connection: local
  gather_facts: False

  vars:
  - key: db
  - name: db-test-provision-1
  - instance_type: t2.nano
  - security_group: sg-sdf234
  - image: ami-234234lkj
  - region: us-east-1
  - subnet: subnet-adsf098
  # Nur nötig, wenn dieses Playbook NICHT auf einer ManageIQ-Appliance ausgeführt wird
  - manageiq_connection:
      url: 'https://localhost.ssl:3000'
      username: 'admin'
      password: 'smartvm'
      manageiq_validate_certs: false

  roles:
  - manageiq.manageiq_vmdb

  tasks:
  - name: Hole ein vmdb-Objekt
    manageiq_vmdb:
      href: "services/80"
    register: vmdb_object

  - name: Erstelle EC2-Instanz
    ec2:
      key_name: "{{ key }}"
      instance_tags: {Name: "{{ name }}"}
      group_id: "{{ security_group }}"
      instance_type: "{{ instance_type }}"
      region: "{{ region }}"
      image: "{{ image }}"
      wait: yes
      count: 1
      vpc_subnet_id: "{{ subnet }}"
      assign_public_ip: yes
    register: ec2

  - name: Dienstverlinkung über einen href-Slug
    manageiq_vmdb:
      href: "href_slug::services/80"
      action: add_provider_vms
      data:
        uid_ems:
          - "{{ ec2.instances[0].id }}"
        provider:
          id: 24

  - name: Dienstverlinkung über ein Objekt
    manageiq_vmdb:
      vmdb: "{{ vmdb_object }}"
      action: add_provider_vms
      data:
        uid_ems:
          - "asdf234"
        provider:
          id: 24

Lizenz

Apache

Über das Projekt

Ansible role to query and modify ManageIQ vmdb objects

Installieren
ansible-galaxy install manageiq.manageiq_vmdb
Lizenz
apache-2.0
Downloads
3.5k
Besitzer
ManageIQ Open-Source Management Platform