#python #ansible #esx
Вопрос:
У меня нет vCenter, только хосты esxi
и я не использую никакого ансибельного инвентаря, я предпочитаю стиль add_host, как показано ниже
- name: Set inventory from parameter
gather_facts: no
hosts: localhost
tasks:
- name: Set with add_host
add_host:
hostname: "{{ item.dest_name }}"
ansible_host: "{{ item.dest_addr }}"
ansible_user: "{{ item.dest_conn_user }}"
ansible_password: "{{ item.dest_conn_pwd }}"
ansible_dest_protocol: "{{ item.dest_protocol| default('') }}"
ansible_port: "{{ item.dest_port | default('22') }}"
ansible_host_key_checking: no
custom_dest_name: "{{ item.dest_name }}"
group: remote_org
with_items: "{{ dests }}"
- name: Module test with set parameter
gather_facts: no
hosts: remote_org
become: yes
remote_user: root
roles:
- ../roles/4.get_vm_mac
и мои задачи/основной файл ниже
---
- block:
- name: Get Target VMid
command: /bin/vim-cmd vmsvc/getallvms
delegate_to: localhost
rescue:
- name: 'When failure'
debug:
msg: "Try again"
и результаты
[Errno 2] No such file or directory
вы можете мне помочь ?? :d
Ответ №1:
Я совершил основную ошибку
- block:
- name: Get Target VMid
command: /bin/vim-cmd vmsvc/getallvms
#delegate_to: localhost <- delete this line
и теперь работает
спасибо всем вам