2016-05-30 8 views
1

Я сценарий на заказ «хозяев этой продукции (ее часть)анзибль Playbook принимает неправильный «ansible_ssh_private_key_file» от хостов

"production-public-web": { 
    "hosts": [ 
     "52.x.y.z" 
    ], 
    "vars": { 
     "ansible_ssh_private_key_file": "/home/ec2-user/.ssh/prod1-frankfurt.pem" 
    } 
}, 
"production-internal": { 
    "hosts": [ 
     "172.x.y.z" 
    ], 
    "vars": { 
     "ansible_ssh_private_key_file": "/home/ec2-user/.ssh/prod1-useast.pem" 
    } 
}, 

Выход хозяев выглядит нормально и у меня есть сборник пьес, который работает на каждой группы серверов. Но, кажется, путают личные ключи. Некоторые серверы получают правильный ключ, некоторые - нет. Например (-vvvv):

Как вы можете видеть, этот сервер взял неправильный секретный ключ (нас-восток вместо франкфурта)

Я использовал различные секретные ключи в прошлом без каких-либо проблем , Некоторый сервер DO получает правильный закрытый ключ. Регулярный SSH (с правой клавишей) работает.

$ ansible-playbook --version 
ansible-playbook 2.0.1.0 

Бег на AWS EC2 (CentOS)

Любой ключ?


Ответ: Как Konstantin Suvorov прокомментировал - мой выход Хосты сценарий повторяется одни и те же узлы в более чем одной группе. После того, как я устранил дублирование - все получилось хорошо. Даже без обходного пути .ssh/config.

Спасибо!

+1

Я нашел обходное решение, которое делает эту работу, - добавлены пути частных ключей к ~/.ssh/config следующим образом: «IdentityFile»/.ssh/prod1-frankfurt.pem IdentityFile ~/.ssh/prod1-useast .pem "(с новыми строками ofc). Но в незаменимом журнале все еще есть те же ошибки, что и раньше. –

+0

Что произойдет, если вы сбросите «SSH» из переменной? Например, 'ansible_private_key_file'? – ydaetskcoR

+1

Пожалуйста, просмотрите выходные данные вашего хоста для одного хоста, находящегося в нескольких группах. Если 52.x.y.z в вашем примере определен в какой-либо другой группе, чем production-eu-public-web позже в списке хостов, он будет использовать переменные. –

ответ

1

Параметры mixup в хостах являются результатом дублирования вывода сценария хоста. Каждый сервер должен находиться в одной группе.

Смежные вопросы