ansible vmware工具手册
我正在尝试创建一个剧本,看看ansible vmware工具手册,ansible,vmware-tools,Ansible,Vmware Tools,我正在尝试创建一个剧本,看看“/etc/vmware tools/services.sh”是否正在运行,如果没有运行,则启动 我已经尝试了command和shell,但我无法理解条件的语法 --- # VMWARE_TOOLS_NOT_RUNNING - hosts: redhat-vm-guest user: ansible-user become: true become_user: root connection: ssh gather_facts: false
“/etc/vmware tools/services.sh”
是否正在运行,如果没有运行,则启动
我已经尝试了command和shell,但我无法理解条件的语法
--- # VMWARE_TOOLS_NOT_RUNNING
- hosts: redhat-vm-guest
user: ansible-user
become: true
become_user: root
connection: ssh
gather_facts: false
tasks:
- name: check vmware tools is running
command: /etc/vmware-tools/services.sh status
register: status
- name: print status
debug:
msg: "{{ status.stdout }}
使用以下命令:
- name: check vmware tools is running
command: /etc/vmware-tools/services.sh status
register: _status
ignore_errors: True
- name: Start VMWare Tools
command: /etc/vmware-tools/services.sh start
when: _status.stdout.find("running") == -1
如果可能的话,我建议使用服务模块。我终于找到了一些有效的方法
--- # VMWARE_TOOLS_NOT_RUNNING
- hosts: vmwaretools
user: ansibleuser
become: true
become_user: root
connection: ssh
gather_facts: false
tasks:
- name: vmware tools status
command: /etc/vmware-tools/services.sh status
ignore_errors: yes
register: _status
- debug: msg="{{ _status.stdout }}"
- name: start vmware tools
command: "/etc/vmware-tools/services.sh start"
ignore_errors: yes
when: _status == _status
- debug: msg="{{ _status.stdout }}"
将ignore\u errors=True
添加到您的第一次检查中,但我建议再次使用服务
模块。您是否可以调试\u状态并发送结果?对于服务,如果它在Linux中不存在,您必须创建一个。但这是另一个故事