![Ansible Playbook kann mit dem vmware_guest-Modul keine statische IP-Adresse zuweisen](https://rvso.com/image/1607068/Ansible%20Playbook%20kann%20mit%20dem%20vmware_guest-Modul%20keine%20statische%20IP-Adresse%20zuweisen.png)
Ich versuche, mit Ansible eine VM aus einer Vorlage zu erstellen. Ich muss die IP-Adresse angeben. Alle anderen Konfigurationen funktionieren im Playbook. Es handelt sich nicht um ein Syntaxproblem. Dies ist ein Labor, daher habe ich kein VLAN, das ich für die Konfiguration verwenden kann. Ich muss den Netzwerknamen verwenden. SystemsLab ist eine gültige Standard-Portgruppe.
Laut Ansible-Dokument für das vmware_guest-Netzwerk:
Netzwerke
„Eine Liste von Netzwerken (in der Reihenfolge der Netzwerkkarten). Das Entfernen von Netzwerkkarten ist während der Neukonfiguration der virtuellen Maschine nicht zulässig. Bei allen Parametern und VMware-Objektnamen muss die Groß-/Kleinschreibung beachtet werden.
Pro Eintrag ist einer der folgenden Parameter erforderlich:
- Name (Zeichenfolge): Name der Portgruppe oder verteilten virtuellen Portgruppe für diese Schnittstelle. Stellen Sie beim Angeben einer verteilten virtuellen Portgruppe sicher, dass der angegebene esxi_hostname oder Cluster damit verknüpft ist.
- vlan (Ganzzahl): VLAN-Nummer für diese Schnittstelle."
Hier ist mein Playbook-Eintrag für die VM-Konfiguration:
- name: Create VM from template
vmware_guest:
validate_certs: False
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_user }}"
password: "{{ vcenter_pass }}"
esxi_hostname: lab-vmsystems-01
datacenter: Lab
name: testvm_1
template: RHEL74-IMG
folder: template
datastore: autoselect_datastore
networks:
- name: "SystemsLab"
type: static
device_type: vmxnet3
ip: 10.**.**.199
netmask: 255.255.255.0
gateway: 10.**.**.1
- dns_servers:
- 10.**.**.21
- 10.**.**.22
- domain: ****.net
Hier ist der Fehler, den ich bekomme.
"changed": false,
"invocation": {
"module_args": {
"annotation": null,
"cdrom": {},
"cluster": null,
"convert": null,
"customization": {},
"customization_spec": null,
"customvalues": [],
"datacenter": "Lab",
"datastore": "autoselect_datastore",
"disk": [],
"esxi_hostname": "lab-vmsystems-01",
"folder": "template",
"force": false,
"guest_id": null,
"hardware": {
"memory_mb": "1024",
"num_cpus": 1
},
"hostname": "***-vcenter-01",
"is_template": false,
"linked_clone": false,
"name": "testvm_1",
"name_match": "first",
"networks": [
{
"device_type": "vmxnet3",
"gateway": "10.**.**.1",
"ip": "10.**.**.199",
"name": "SystemsLab",
"netmask": "255.255.255.0",
"type": "static"
},
{
"dns_servers": [
"10.**.**.21",
"10.**.**.22"
]
},
{
"domain": "****.net"
}
],
"password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
"port": 443,
"resource_pool": null,
"snapshot_src": null,
"state": "present",
"state_change_timeout": 0,
"template": "RHEL74-IMG",
"use_instance_uuid": false,
"username": "***@***.net",
"uuid": null,
"validate_certs": false,
"vapp_properties": [],
"wait_for_customization": false,
"wait_for_ip_address": true
}
},
"msg": "Please specify at least a network name or a VLAN name under VM network list."```
C:\Program Files (x86)\VMware\VMware vSphere CLI>dcli +server lvd-vcenter-01 com vmware vcenter network list +skip-server-verification
|----------|----------|------------------|
|Network |Name |Type |
|----------|----------|------------------|
|network-31|VM Network|STANDARD_PORTGROUP|
|network-32|SystemsLab|STANDARD_PORTGROUP|
|----------|----------|------------------|
Antwort1
Sie erstellen drei Netzwerkschnittstellen:
"networks": [
{
"device_type": "vmxnet3",
"gateway": "10.**.**.1",
"ip": "10.**.**.199",
"name": "SystemsLab",
"netmask": "255.255.255.0",
"type": "static"
},
{
"dns_servers": [
"10.**.**.21",
"10.**.**.22"
]
},
{
"domain": "****.net"
}
],
Entfernen Sie die Bindestriche für DNS-Server und Domäne:
- name: Create VM from template
vmware_guest:
validate_certs: False
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_user }}"
password: "{{ vcenter_pass }}"
esxi_hostname: lab-vmsystems-01
datacenter: Lab
name: testvm_1
template: RHEL74-IMG
folder: template
datastore: autoselect_datastore
networks:
- name: "SystemsLab"
type: static
device_type: vmxnet3
ip: 10.**.**.199
netmask: 255.255.255.0
gateway: 10.**.**.1
dns_servers:
- 10.**.**.21
- 10.**.**.22
domain: ****.net