Eu realmente crio as chaves públicas e privadas na máquina de onde o Ansible é executado. Eu tenho um playbook init especial que se conecta aos servidores via senha e coloca os arquivos de chave no lugar.
Eu também encontrei uma maneira de adicionar as chaves públicas entre si ao arquivo authorized_keys
.
A fonte pode ser encontrada aqui: soupdiver / ansible-cluster