
OS: Oracle Linux 8.7 vCenter: 7.0.3 빌드 20051473 하이퍼바이저: VMware ESXi, 7.0.3, 19193900 ansible-playbook [core 2.13.5] python 버전 = 3.8.10(기본값, 2022년 11월 14일, 12:59:47) [GCC 9.4.0] jinja 버전 = 3.1.2 libyaml = True
다음 Ansible 작업을 사용하여 템플릿에서 VM을 배포합니다.
- 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
VM을 배포한 후 Ansible 플레이북은 다음 작업을 계속할 수 없습니다.
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}
VM에 액세스했는데 네트워크에 연결할 수 없는 것으로 나타났습니다. nmtui를 통해 주소 필드에서 MAC 주소를 제거하는 문제를 해결했습니다.
그러나 VM을 배포할 때 VM 템플릿에서 이 작업을 수행하면 동일한 문제가 발생합니다. 심지어 mac 주소도 맞습니다.
나는 또한 다음을 시도했습니다.
- /etc/sysconfig/network-scripts/ifcfg-ens192에서 HWADDR 매개변수 제거
- /etc/udev/rules.d/70.pertant-ipoib.rules 제거
- 원본 VM을 VM 템플릿으로 변환하기 전에 네트워크 어댑터 제거
이러한 모든 수정 사항으로 인해 VM 템플릿에서 생성된 VM은 여전히 인터페이스를 사용할 수 없습니다.
Mac 주소도 HWADDR 매개변수에 잘 설정되어 있고 nmtui 명령으로 표시되는 인터페이스(위에 표시된 대로)에서는 nmtui 구성에서 mac 주소를 제거할 때까지 네트워크 인터페이스가 작동하지 않는다는 점을 강조하고 싶습니다.
nmtui에 mac 주소가 자동으로 기록되는 것을 방지하는 방법이 있습니까?
다른 솔루션이나 구성도 유효합니다. 유일한 요구 사항은 배포된 VM에 추가 상호 작용 없이 작동하는 인터페이스가 있어야 한다는 것입니다.