Um recurso de modelo que você poderia usar para um grande benefício para essa finalidade é sua capacidade de modelagem.
O módulo modelo permite implantar um arquivo com valores exclusivos para cada host. O nome do host atualmente sendo trabalhado é mantido nas variáveis inventory_hostname e inventory_hostname_short (sendo este último o primeiro componente pontilhado do nome do host).
Você pode manter as variáveis específicas do host em um dicionário em group_vars / all. Por exemplo:
www_sites: {
host1: "www.mysite1.com",
host2: "www.mysite2.com",
}
Em seguida, o modelo do arquivo conf nginx pode incluir algo nas seguintes linhas:
server {
listen 80;
server_name {{ www_sites[inventory_hostname_short] }};
access_log logs/{{ www_sites[inventory_hostname_short] }}.access.log main;
A documentação da linguagem de templates Jinja2 usada pela Ansible pode ser encontrada aqui .