Я новичок в Ansible. Я могу проверить его и его работу с моим тестовым требованием. Для соединения между узлом управления и узлом клиента я использую уже созданную пару ssh. Как я могу использовать другой узел с разными парами ключей SSH? Для справки я рассматриваю 3 ec2-экземпляр с разными парами ключей.Несущаясь с несколькими ключевыми парами SSH
28
A
ответ
34
Хорошая новость - в основном варианте использования, это довольно легко. Просто используйте параметр ansible_ssh_private_key_file
в вашем Ansible inventory.
Вот некоторые примеры Украденных из моего личного дела:
$ cat hosts.ini
[server1]
54.1.2.3 ansible_ssh_private_key_file=~/.ssh/server1.pem
[testservers]
ec2-54-2-3-4.compute-1.amazonaws.com ansible_ssh_private_key_file=~/.ssh/aws-testserver.pem ansible_ssh_user=ubuntu
ec2-54-2-3-5.compute-1.amazonaws.com ansible_ssh_private_key_file=~/.ssh/aws-testserver.pem ansible_ssh_user=ubuntu
[piwall]
10.0.0.88 ansible_ssh_private_key_file=~/.ssh/raspberrypi.pem ansible_ssh_user=pi
21
tedder42 является правильным, однако, есть лучший способ сделать это.
См. ansible_ssh_private_key_file
here.
у меня в хост-файлы в следующих
# SSH Keys configuration
[all_servers:vars]
ansible_ssh_private_key_file = <YOUR PRIVATE KEY LOCATION>
# Server configuration
[all_servers:children]
elastic_servers
nginx_servers
[elastic_servers]
44.22.11.22
44.55.66.77
22.11.22.33
[nginx_servers]
22.24.123.123
233.111.222.11
Если у вас есть конфигурация несколько ключей, вы можете сделать что-то вроде следующего
[nginx:vars]
ansible_ssh_private_key_file = <YOUR PRIVATE KEY LOCATION>
[app:vars]
ansible_ssh_private_key_file = <YOUR 2nd PRIVATE KEY LOCATION>
[nginx:children]
nginx_servers
[app:children]
app_servers
[nginx_servers]
1.2.3.4
[app_servers]
5.5.5.5
6.6.6.6
Это путь чище, чем tedder42 ответ. Это полезно, если у вас несколько ключей для нескольких серверов.
В противном случае вы можете включить свой ключ в файл ansible.cfg.
Смежные вопросы
- 1. Объединение таблиц MySQL с ключевыми парами значений
- 2. Словарь с несколькими ключевыми типами
- 3. Autocomplete с несколькими ключевыми словами
- 4. EC2 Создайте новых пользователей Linux с их СОБСТВЕННЫМИ ключевыми парами?
- 5. Restkit возвращающий массив объектов с 0 ключевыми парами значений
- 6. преобразования массива в массив объектов с одинаковыми ключевыми парами
- 7. Оценка и сравнение переменного с ключевыми парами Словаря
- 8. Кнопка HTML5 с несколькими парами имя/значение
- 9. Файл свойств с несколькими парами данных
- 10. Как получить строку запроса с несколькими парами
- 11. re.search с несколькими совпадающими ключевыми словами
- 12. Одиночный блок поиска с несколькими ключевыми словами
- 13. производительности тяги :: reduce_by_key с несколькими ключевыми повторениями
- 14. JQuery сращивать inArray с несколькими ключевыми объектами
- 15. Авто в комплекте с несколькими ключевыми словами
- 16. поиск MySQL с несколькими ключевыми словами касаясь
- 17. Объекты с несколькими ключевыми столбцами в realm.io
- 18. полнотекстового поиска с несколькими ключевыми словами
- 19. mac Быстрые события с несколькими ключевыми событиями
- 20. mongoDB `upsert` с несколькими ключевыми значениями
- 21. зацикливание CSS3 анимации с несколькими ключевыми кадрами
- 22. Django Как фильтровать с несколькими ключевыми словами
- 23. Laravel hasManyThrough с несколькими ключевыми полями
- 24. Создать тестовый шаблон с несколькими ключевыми словами
- 25. эффективный поиск с несколькими ключевыми картами
- 26. Работа с несколькими ключевыми событиями libgdx
- 27. WHERE LIKE с несколькими ключевыми словами
- 28. Golang regexp для сопоставления нескольких шаблонов между ключевыми парами
- 29. Vagrant ssh с несколькими аргументами
- 30. Linux SSH с несколькими командами
Спасибо, tedd, что он работает отлично для меня. Можно ли использовать один и тот же ключ для всех серверов той же группы. Я хочу сказать, если у меня есть тот же ключ для 10 тестовых серверов в соответствии с приведенным выше примером, я должен отдельно указывать ключевые данные для каждого тестового сервера. Любое решение существует, поэтому я могу передать один и тот же ключ для всего сервера той же группы. Спасибо –
@sumitkumar, насколько я знаю, вы не можете группировать переменные в hosts.ini. Однако вы можете использовать файл [ssh_config] (http://linux.die.net/man/5/ssh_config), что может помочь. – tedder42
Вы, конечно, можно: http://docs.ansible.com/intro_inventory.html#group-variables [testservers: вары] ansible_ssh_private_key_file = ~/.ssh/AWS-testserver.pem – oley