Suponha que você tenha um script que retira um determinado nó de uma rotação do balanceador de carga que leva o nome de um host para executar essa alteração do balanceador de carga. Como isso pode funcionar?
---
- hosts: all
serial: 5
tasks:
- name: take the machine out of rotation
action: command echo taking out of rotation $inventory_hostname
delegate_to: 127.0.0.1
# here's an alternate notation if you are delegating to 127.0.0.1, you can use 'local_action'
# instead of 'action' and leave off the 'delegate_to' part.
#
# - local_action: command echo taking out of rotation $inventory_hostname
- name: do several things on the actual host
action: command echo hi mom $inventory_hostname
- name: put machine back into rotation
action: command echo inserting into rotation $inventory_hostname
delegate_to: 127.0.0.1
Basta substituir o “comando echo” por uma chamada para o script fornecido.
Claro, você também pode escrever seu próprio módulo Ansible para falar com qualquer tipo específico de dispositivo de balanceamento de carga (em vez de usar um script), e você começará a ver mais deles no núcleo do ansible no futuro.