Das Bereitstellen einer VM aus einer VM-Vorlage auf VMware vCenter mit Ansible macht das Netzwerk unerreichbar

Das Bereitstellen einer VM aus einer VM-Vorlage auf VMware vCenter mit Ansible macht das Netzwerk unerreichbar

Betriebssystem: Oracle Linux 8.7 vCenter: 7.0.3 Build 20051473 Hypervisor: VMware ESXi, 7.0.3, 19193900 Ansible-Playbook [Core 2.13.5] Python-Version = 3.8.10 (Standard, 14. November 2022, 12:59:47) [GCC 9.4.0] Jinja-Version = 3.1.2 Libyaml = True

Ich stelle eine VM aus einer Vorlage mithilfe der folgenden Ansible-Aufgabe bereit:

- name: Create a new virtual machine {{ hostname }} on vCenter {{ vcenter_hostname }} from template {{ source_template }}
  community.vmware.vmware_guest:
    hostname: "{{ vcenter_hostname }}"
    username: "{{ vcenter_username }}"
    password: "{{ vcenter_password }}"
    validate_certs: false
    datacenter: "{{ datacenter_name }}"
    folder: /{{ datacenter_name }}/vm/
    name: "{{ hostname }}"
    state: present
    template: "{{ source_template }}"
    esxi_hostname: "{{ esxi_hostname }}"
    disk:
      - size_gb: "{{ size_disk }}"
        type: "{{ disk_type }}"
        datastore: "{{ datastore_name }}"
    hardware:
      memory_mb: "{{ memory }}"
      memory_reservation_lock: true
      num_cpus: "{{ vcpu }}"
      cpu_reservation: "{{ reserved_cpu }}"
      scsi: paravirtual
      nested_virt: true
    networks:
    - name: VM Network
      ip: "{{ ip_address }}"
      netmask: "{{ ip_netmask }}"
      gateway: "{{ default_gateway }}"
      device_type: vmxnet3
      type: static
      state: present
    customization:
      dns_servers:
        - "{{ dns_1 }}"
        - "{{ dns_2 }}"
    wait_for_ip_address: true
  delegate_to: localhost
  register: deploy_vm

Nach dem Bereitstellen der VM kann das Ansible-Playbook mit den folgenden Aufgaben nicht fortfahren:

fatal: [template-common]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: ssh: connect to host 172.24.76.35 port 22: Connection refused", "unreachable": true}

Ich habe auf die VM zugegriffen und festgestellt, dass sie das Netzwerk nicht erreichen kann. Ich habe das Problem gelöst, indem ich die MAC-Adresse über nmtui aus dem Adressfeld entfernt habe:

nmtui-Schnittstelle

Wenn ich dies jedoch in der VM-Vorlage mache und die VM davon bereitstelle, habe ich dasselbe Problem. Sogar die MAC-Adresse ist korrekt.

Ich habe auch versucht:

  • Entfernen des HWADDR-Parameters aus /etc/sysconfig/network-scripts/ifcfg-ens192
  • Entfernen von /etc/udev/rules.d/70.persistent-ipoib.rules
  • Entfernen des Netzwerkadapters vor dem Konvertieren der Quell-VM in eine VM-Vorlage

Trotz all dieser Änderungen kann die aus der VM-Vorlage erstellte VM die Schnittstelle immer noch nicht verwenden.

Ich möchte hervorheben, dass die Netzwerkschnittstelle nicht funktioniert, bis ich die Mac-Adresse aus der nmtui-Konfiguration entferne, auch wenn die Mac-Adresse im HWADDR-Parameter richtig eingestellt ist und in der durch den nmtui-Befehl angezeigten Schnittstelle (wie oben dargestellt).

Gibt es eine Möglichkeit, zu verhindern, dass die MAC-Adresse automatisch in nmtui geschrieben wird?

Alle anderen Lösungen oder Konfigurationen sind gültig. Die einzige Voraussetzung ist, dass die bereitgestellte VM über eine funktionierende Schnittstelle ohne zusätzliche Interaktion verfügt.

verwandte Informationen