Ich spiele ein wenig mit Terraform herum und frage mich, ob das möglich ist. Es empfiehlt sich, jeder Ressource, die Sie in AWS erstellen, Tags zuzuordnen (z. B.). Was Sie also zuerst tun, ist eine Tagging-Strategie (zB welche Geschäftseinheit, ein Name der App, ein dafür verantwortliches Team, ...).Tags im zentralen Bereich in TerraForm definieren
In Terraform bedeutet dies jedoch, dass Sie jeden Tag-Block für jede Ressource wiederholen müssen. Dies ist nicht sehr praktisch. Wenn Sie einen der Tag-Namen aktualisieren möchten, müssen Sie jede von Ihnen erstellte Ressource aktualisieren.
Zum Beispiel:
resource "aws_vpc" "vpc" {
cidr_block = "${var.cidr}"
tags {
Name = "${var.name}"
Project = "${var.projectname}"
Environment = "${var.environment}"
}
}
Wenn ich ein Subnetz und EC2 in dieser VPC mit den gleichen Tags erstellen will, muß ich, dass die Tags-Block zu wiederholen. Wenn ich später einen der Tag-Namen aktualisieren möchte, muss ich jede Ressource einzeln aktualisieren, was sehr zeitaufwendig und mühsam ist.
Gibt es eine Möglichkeit, einen Block von Tags an einem zentralen Ort zu erstellen und darauf Bezug zu nehmen? Ich habe an Module gedacht, aber das passt nicht zur Definition eines Moduls.
Obwohl es nicht vollständig ist, was ich will, ist es ein Anfang. Ich habe mir das Github-Repository mit den Terraform-Community-Modulen angeschaut und einen wesentlich saubereren Weg gefunden: https://github.com/terraform-community-modules/tf_aws_vpc/. – Bjorn121
Warum also nicht Ihre eigene Frage beantworten? – BMW