Ziele
- Du hast alle Aufgaben der Card erfüllt
Inhalte
- Configuring the AWS CLI Show archive.org snapshot
- Switching roles (AWS CLI) Show archive.org snapshot
Aufgaben
Um die Aufgaben zu erfüllen, brauchst Zugriff auf einen AWS Account. Du solltest aus den vorherigen Kapiteln bereits Zugriff zu einem Account haben.
Außerdem solltest du den hier erstellten Code in einem Git Repository pflegen. Bitte erstelle für die einzelnen Aufgaben jeweils Merge Requests und weise diese deinem Mentor zu.
- Konfiguriere die AWS-CLI. Du solltest ein Profil für deinen "Elternaccount" haben und eines für einen deiner "Kindaccounts". Du solltest den "Kind" Account für alle deine Terraform Aufgaben verwenden.
- Erstelle ein eigenes Terraform Modul das folgende Kriterien erfüllt:
-
Provider
ist AWS - Als
input
kann die AWSRegion
angegeben werden - Es wird ein S3 Bucket ohne Public access erstellt
- Wende das Modul für die Region
eu-west-1
an
-
Füge zu deinem Modul das managen eines VPC hinzu. Das VPC soll jeweils 3 Public und 3 Private Subnetze (je eines für 1 AZ) aber nur 1 public NAT Gateway haben. Die 3 Private Subnetze sollen Internet Zugriff haben.
-
Erweitere dein Terraform modul um einen
input
mit typemap
und dem Namenec2_instances
, welcher folgendes Schema aufweist:{ "name1" = { instance_type = <ec2_instance_type> disk_size = <disk_size> } }
Stelle sicher, dass man bei
instance_type
nurt3
undt3a
Instanzen konfigurieren kann und dass es die Instanztypen auch wirklich gibt. Aus derec2_instances
configmap werden mehrere EC2 Instanzen erstellt und die entsprechenden Konfigurationsparameter fürinstance_type
unddisk_size
unterstützt. Verwende ein Amazon Linux 2 AMI und starte die Instanzen in einem Private Subnet des zuvor erstellten VPCs. -
Da dein Modul das Konfigurieren von unterschiedlichen Regionen erlaubt, sollte die richtige AMI ID automatisch ausgewählt werden. Du kannst dafür die aws_ami Show archive.org snapshot datasource verwenden.
-
Füge eine neue Role hinzu, die eine Policy erhält damit du den SSM Session Manager Show archive.org snapshot verwenden kannst. Außerdem erstellst du eine Policy, die
r/w
Zugriff auf das zuvor erstellte S3 Bucket erlaubt und weist sie der Role zu. Die Role soll an die von dir erstellten EC2 Instanzen zugewiesen werden.
Anschließend verbindest du dich per SSM auf deine Instanzen und testest den S3 Zugriff mit deraws-cli
. -
Deprovisioniere deine Infrastruktur mit
terraform destroy
.