2015-02-17 16 views
10

Ho un file di configurazione SSH personalizzato che io di solito uso come segueAnsible Utilizzando personalizzato ssh config file

ssh -F ~/.ssh/client_1_config amazon-server-01 

E 'possibile assegnare Ansible utilizzare questa configurazione per alcuni gruppi? Ha già le chiavi e le porte e gli utenti tutti impostati. Ho questo tipo di configurazione per più client e vorrei mantenere la configurazione separata, se possibile.

risposta

10

Non completamente possibile. È possibile impostare gli argomenti ssh nel ansible.cfg:

[ssh_connection] 
ssh_args = -F ~/.ssh/client_1_config amazon-server-01 

Purtroppo non è possibile definire questo per gruppo, l'inventario o qualsiasi altra cosa specifica.

+0

È possibile passare questo come argomento della riga di comando? –

+0

@SakisVtdk AFAIK No – udondan

+0

@SakisVtdk È possibile definire la variabile di ambiente ANSIBLE_CONFIG in modo che faccia riferimento a un file di configurazione Ansible. – simon

5

Con Ansible 2, è possibile impostare un ProxyCommand nella variabile ansible_ssh_common_args inventario. Qualsiasi argomento specificato in questa variabile viene aggiunto alla riga di comando sftp/scp/ssh quando ci si connette agli host rilevanti. Si consideri il seguente gruppo di inventario:

[gatewayed] 
foo ansible_host=192.0.2.1 
bar ansible_host=192.0.2.2 

È possibile creare group_vars/gatewayed.yml con il seguente contenuto:

ansible_ssh_common_args: '-o ProxyCommand="ssh -W %h:%p -q [email protected]"' 

e fare il trucco ...

Potete trovare ulteriori informazioni in: http://docs.ansible.com/ansible/faq.html