Развертывание с Ansible в конвейере Jenkins - PullRequest
1 голос
/ 13 марта 2019

У меня есть книга игр Ansible для развертывания Java-приложения (jar) на AWS EC2.Я хотел бы использовать его внутри конвейера Jenkins как шаг «Развертывание».Для развертывания в EC2 мне нужен загруженный закрытый ключ ssh при создании экземпляра.

У меня есть 2 варианта:

  1. Установить ansible на машине, на которой установлен Jenkins, вставить закрытый ключ SSH в Jenkins и использовать плагин ansible-playbook для развертывания моего приложения
  2. Возьмите базовый образ докера с установленным ansible, расширите его, вставив мой личный ключ SSH, и используйте этот образ докера для развертывания моего приложения

С точки зрения безопасности, что лучше?

1 Ответ

1 голос
/ 18 марта 2019

Для варианта 1 рекомендуется создать новую учетную запись пользователя, например, jenkins в экземпляре EC2 без привилегии sudo или, по крайней мере, с паролем, защищенным sudo И это хороший сценарий, когда использование Ansible для управления учетными записями этих пользователей ограничивает использование супер ключа, созданного AWS

.

В то время как для варианта 2 Docker является хорошим сценарием неизменяемого развертывания, что означает, что конфигурация должна быть определена еще до того, как образ будет готов, так что Ansible не совсем полезен в этом сценарии. Разное conf означает создание разных изображений Возможно, вы по-прежнему используете Ansible для управления этими DockerFiles, а не для запуска Ansible и взаимодействия с самим приложением

2 варианта выглядят совершенно не похожими друг на друга с точки зрения того, как вы проектируете свою систему больше, чем проблема безопасности

Дайте мне знать, что вам нужно больше разъяснений

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...