什么时候用到?
例如:你在192.168.5.10 上安装好k8s master,然后在客户端检查k8s master的状态,这时可以使用delegate_to 。
tasks:
# 在k8s master (192.168.0.10) 机器上执行
- name: k8s master install
shell: install k8s master ....
# 在客户端(192.168.0.9) 机器上执行
- name: get status
command: get k8s status
delegate_to: "192.168.0.9"
如果需要委托loaclhost执行任务,这里提供一个快捷的方式,只要使用local_action作为task的key便行.我们尝试使用这种方式来配置上面的例子,会更加简洁.
# 在客户端执行
- name: get status
local_action : command 'get k8s status'
其他参考:
https://docs.ansible.com/ansible/latest/user_guide/playbooks_delegation.html#delegation
https://www.ibm.com/developerworks/cn/linux/1608_lih_ansible/index.html