W przeciwieństwie do xeraagood answer uruchamiamy jak najwięcej z wnętrza AWS.
rzeczywistych korzyści możemy uzyskać z tego jest to, że pozwala nam korzystać scentralizowane Jenkins serwerów uruchamianych Ansible (i Terraform w naszym przypadku do rzeczywistej rezerw AWS z ansibl tylko używane do konfigurowania instancji EC2 i uruchomić playbooks ad-hoc zadania administracyjne).
Możemy wtedy kontrolować dostęp do serwerów Jenkins za pośrednictwem poświadczeń i/lub grup bezpieczeństwa/NACL.
Robiąc to w ten sposób, możemy kontrolować liczbę osób, które mają jakąś formę referencji, która pozwoliłaby im zbudować wszystko, co im się podoba i/lub zniszczyć wszystko, co im się podoba.
Najlepiej byłoby, gdybyśmy podawali tylko dane uwierzytelniające serwerom Jenkins za pośrednictwem instancji IAM EC2, ale jeszcze nie jesteśmy na miejscu.
Jedną z pozytywnych rzeczy jest to, że nasi fani z pierwszej linii/drugiej linii, którzy używają systemu Windows prawie wyłącznie, mogą uzyskać dostęp do ładnego interfejsu GUI do zarządzania obiektami w środku nocy i wykonywania zadań Jenkins, do których mają dostęp. do uruchomienia, które spowoduje takie rzeczy jak restart serwera/usługi lub nawet przebudowanie części VPC.
Mamy oddzielne konto "deweloperów", do którego programiści mają dostęp z własnych maszyn. Właśnie tutaj budujemy naszą bazę kodu, zanim opracujemy bazę kodu Ansible (i Terraform), zanim baza kodu zostanie użyta w naszym teście i środowiska produkcyjne.
. Jest pewien średni poziom, który chciałbym dodać. Nadal możesz uruchomić wszystko od scentralizowanego Jenkinsa, wykorzystując w ten sposób zalety, które opisałeś, ale zamiast jenkinsów z uruchomionymi pilotami, możesz uruchamiać polecenia SSH na komputerach docelowych, które uruchamiają lokalne playbooks (możliwe, że używasz ansibli-pull, dzięki czemu otrzymujesz świeżą kopię za każdym razem). W ten sposób uzyskasz to, co najlepsze z obu światów. –