Spec-Zone.ru › Ansible 2.11

Отладка Ansible для VMware

  • Отладка Ansible для VMware
  • Известные проблемы с Ansible для VMware

    • Настройка сети с vmware_guest в Ubuntu 18.04

      • Возможные решения

В этом разделе перечислены возможные проблемы и способы их решения.

Отладка Ansible для VMware

При отладке или создании новой проблемы вам потребуется информация о вашей инфраструктуре VMware. Вы можете получить эту информацию, используя govc. Например:

$ export GOVC_USERNAME=ESXI_OR_VCENTER_USERNAME
$ export GOVC_PASSWORD=ESXI_OR_VCENTER_PASSWORD
$ export GOVC_URL=https://ESXI_OR_VCENTER_HOSTNAME:443
$ govc find /

Известные проблемы с Ansible для VMware

Настройка сети с vmware_guest в Ubuntu 18.04

Настройка сети с помощью vmware_guest в Ubuntu 18.04 известна как неисправная из-за отсутствия поддержки netplan в open-vm-tools. Эта проблема отслеживается по следующим ссылкам:

  • https://github.com/vmware/open-vm-tools/issues/240
  • https://github.com/ansible/ansible/issues/41133

Возможные решения

Существует несколько решений этой проблемы.

  1. Измените образы Ubuntu 18.04 и установите ifupdown в них через sudo apt install ifupdown. В этом случае необходимо удалить netplan через sudo apt remove netplan.io и остановить systemd-networkd через sudo systemctl disable systemctl-networkd.
  2. Сгенерируйте файлы systemd-networkd с задачей в вашем роле Ansible для VMware:
- name: make sure cache directory exists
  file: path="{{ inventory_dir }}/cache" state=directory
  delegate_to: localhost

- name: generate network templates
  template: src=network.j2 dest="{{ inventory_dir }}/cache/{{ inventory_hostname }}.network"
  delegate_to: localhost

- name: copy generated files to vm
  vmware_guest_file_operation:
    hostname: "{{ vmware_general.hostname }}"
    username: "{{ vmware_username }}"
    password: "{{ vmware_password }}"
    datacenter: "{{ vmware_general.datacenter }}"
    validate_certs: "{{ vmware_general.validate_certs }}"
    vm_id: "{{ inventory_hostname }}"
    vm_username: root
    vm_password: "{{ template_password }}"
    copy:
        src: "{{ inventory_dir }}/cache/{{ inventory_hostname }}.network"
        dest: "/etc/systemd/network/ens160.network"
        overwrite: False
  delegate_to: localhost

- name: restart systemd-networkd
  vmware_vm_shell:
    hostname: "{{ vmware_general.hostname }}"
    username: "{{ vmware_username }}"
    password: "{{ vmware_password }}"
    datacenter: "{{ vmware_general.datacenter }}"
    folder: /vm
    vm_id: "{{ inventory_hostname}}"
    vm_username: root
    vm_password: "{{ template_password }}"
    vm_shell: /bin/systemctl
    vm_shell_args: " restart systemd-networkd"
  delegate_to: localhost

- name: restart systemd-resolved
  vmware_vm_shell:
    hostname: "{{ vmware_general.hostname }}"
    username: "{{ vmware_username }}"
    password: "{{ vmware_password }}"
    datacenter: "{{ vmware_general.datacenter }}"
    folder: /vm
    vm_id: "{{ inventory_hostname}}"
    vm_username: root
    vm_password: "{{ template_password }}"
    vm_shell: /bin/systemctl
    vm_shell_args: " restart systemd-resolved"
  delegate_to: localhost
  1. Дождитесь поддержки netplan в open-vm-tools

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/scenario_guides/vmware_scenarios/vmware_troubleshooting.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API