Ich habe gerade den Terraform Associate (004) bestanden — was ich gerne gewusst hätte
Ehrliche Notizen vom Tag danach: welche Fragen aufkamen, wohin die Zeit verschwindet, was ich paukte, das sich als unwichtig herausstellte, und was ich unterbewertete.
Ich habe gestern den Terraform Associate 004 abgelegt und beim ersten Versuch bestanden. Dies ist kein Beitrag nach dem Motto „was man lernen sollte“ – davon gibt es genügend, einschließlich unseres eigenen. Dies ist der Beitrag, den ich gerne in der Nacht zuvor gelesen hätte, während alles noch frisch ist.
Zum Kontext: Ich schreibe seit etwa drei Jahren Terraform auf AWS, hauptsächlich für Anwendungsinfrastrukturen – VPCs, ECS, RDS, ALBs, das Übliche – manchmal mit HCP Terraform, aber öfter mit S3 + DynamoDB. Ich habe 003 vor langer Zeit eher halbherzig abgelegt und dachte, 004 wäre eine schnelle Auffrischung. Das war es größtenteils auch, aber mit Anmerkungen.
Was ich paukte, das ich nicht brauchte
In den zwei Tagen vor der Prüfung habe ich mich intensiv mit einigen Themen beschäftigt, die sich als nahezu irrelevant für den Test herausstellten:
- Sentinel- und OPA-Syntax. Ich hatte mich überzeugt, dass ich eine Sentinel-Regel auf den ersten Blick erkennen müsste. Es gab genau eine Frage, die Policy-as-Code betraf, und sie war konzeptionell – „welche Funktion setzt organisationsweite Richtlinien durch?“ – beantwortbar allein durch das Wissen, dass das Wort „Sentinel“ existiert.
- Provider-Plugin-Protokollversionen. Keine Relevanz.
- Jeden
terraform state-Unterbefehl auswendig lernen. Die Prüfung fragt nachstate list,state mvundstate rmin Szenarien. Wenn Sie verstehen, was jeder einzelne auf einfache Weise tut, brauchen Sie die Flags nicht zu pauken. - HCP Terraform Preisstufen. Nicht in der Prüfung. Die Prüfung behandelt HCP konzeptionell.
Hätte ich die Vorbereitungszeit zurück, hätte ich sie in mehr for_each vs. count-Übungen investiert.
Was mich überraschte
Einige Dinge, die ich nicht erwartet hatte:
Die neuen 004-Inhalte werden präzise abgefragt. Ich hatte flauschige Fragen wie „was macht der moved-Block?“ erwartet; stattdessen bekam ich spezifische Szenarien wie „Sie haben eine Ressource umbenannt und möchten ihren Zustand ohne Unterbrechung beibehalten – was ist die minimal gültige Änderung?“, mit Antwortmöglichkeiten, die sowohl einen state mv-Aufruf als auch einen moved-Block enthielten. Man muss das Idiom wählen, das zum Workflow passt, nicht nur erkennen, dass beides existiert.
Mehrere Fragen zu import-Blöcken vs. terraform import. Ich hatte nachlässig angenommen, sie wären äquivalent. Die Prüfung erinnerte mich daran, dass sie es nicht sind – der Block ist deklarativ und integriert sich in plan; der CLI-Befehl ist imperativ und wirkt sich sofort auf den Zustand aus. Zwei Fragen testeten spezifisch, ob ich wusste, welcher in einen überprüfbaren CI/CD-Workflow passt.
Die HCL-Fragen sind dichter, als die Probetests vermuten lassen. Viele Probetests geben Ihnen ein ordentliches viereinhalb Zeilen langes Snippet. Die echte Prüfung gab mir mindestens einmal einen fünfzehnzeiligen Block mit einem dynamic, verschachtelt in einer resource, deren eigenes for_each die äußere Zählung antrieb, und fragte mich, die Anzahl der erstellten Ressourcen vorherzusagen. Ich musste es zweimal lesen. Unterschätzen Sie nicht die kognitive Belastung, HCL unter einem Zeitdruck von 60 Sekunden pro Frage sorgfältig zu lesen.
Zwei Fragen zu terraform test. Ich hätte diesen Abschnitt fast übersprungen, weil die Probetests ihn kaum erwähnten. Die Fragen waren konzeptionell – dass .tftest.hcl existiert, dass run-Blöcke Zusicherungen enthalten, dass man Provider für Unit-Tests mocken kann. Überfliegen Sie die Doku-Seite; das reicht.
Zeitmanagement hätte mich fast erwischt
57 Fragen in 60 Minuten sind etwas mehr als eine Minute pro Frage. Ich bin bei technischen Inhalten ein langsamer Prüfling, weil ich Code sorgfältig lese. Meinen ersten Durchgang beendete ich in Minute 52 mit fünf zur Überprüfung markierten Fragen. Bei zwei dieser markierten Fragen hatte ich die Formulierung überdacht; beim erneuten, frischen Lesen änderte ich beide Antworten – eine stellte sich als richtig heraus, die andere habe ich, glaube ich, zu einer falschen Antwort geändert (im Nachhinein gibt es keine Möglichkeit, dies zu wissen).
Was funktionierte: Bei jeder Frage, bei der ich mich dabei ertappte, den Stamm mehr als zweimal zu lesen, wählte ich meine beste Vermutung, markierte sie und ging weiter. Verweilen Sie nicht vier Minuten bei einer einzelnen Frage. Wenn Sie sie nach einer Minute nicht wissen, werden Sie sie wahrscheinlich auch nach drei weiteren nicht wissen.
Die langsamen Fragen
Eine spezifische Kategorie, die Zeit kostete: „Was wird terraform plan bei dieser State-Datei-Ausgabe zeigen?“ Diese sind langsam, weil man mental einen State-Diff durchgeht. Bei zweien gab ich es auf, zu simulieren, schaute mir die Antwortoptionen an und wählte das wahrscheinlichst defekte Ding (ein fehlender Tag in einem Fall, ein geändertes Attribut im anderen). Beide erwiesen sich als richtig. Mustererkennung über tiefer Simulation, wenn die Zeit knapp ist.
Was ich tatsächlich empfehlen würde, wenn ich meine Vorbereitung wiederholen würde
Angesichts dessen, was ich jetzt weiß, hier ist das neu ausbalancierte Budget:
- 40% Übungsfragen. Nehmen Sie sie tatsächlich unter Zeitdruck in Angriff, setzen Sie sich tatsächlich mit falschen Antworten auseinander.
- 25% HCL-Beispiele langsam lesen. Schreiben Sie auch welche, aber die Geläufigkeit, die Sie am Prüfungstag brauchen, ist Lesegeläufigkeit, nicht Schreibgeläufigkeit.
- 15% State-Semantik. Was in der State-Datei steht, warum Locking wichtig ist, was
moved- /removed- /import-Blöcke jeweils lösen. - 10% die neuen 004-Funktionen isoliert — Variablenvalidierung, Vorbedingungen, ephemere Werte, schreibgeschützte Argumente, HCP-Projekte,
terraform test. - 10% alles andere — IaC-Konzepte, der Zweck von Terraform, HCP-Übersicht.
Ein bewusst ungleich verteiltes Budget. Der „alles andere“-Eimer enthält größtenteils Dinge, die Sie bereits wissen, wenn Sie Terraform länger als ein paar Monate verwendet haben.
Dinge, von denen ich nicht erwartet hätte, dass sie wichtig sind, es aber waren
- Wissen, dass
terraform fmtexistiert und was es tut. Kam zweimal vor. Eine der falschen Antworten war, dassfmtden Zustand modifiziert. - Syntax von Provider-Versionsbeschränkungen. Der Unterschied zwischen
~> 1.2und~> 1.2.0(die zweite ist pessimistisch auf Patch-Ebene – restriktiver). Ich hatte diese richtig, aber ich hatte mich überzeugt, dass sie nicht getestet werden würde. - Was
terraform init -upgradeim Vergleich zuterraform init -reconfiguretut. Ich wurde gefragt, welches man nach dem Ändern eines Backend-Blocks verwenden soll. Die Antwort ist-reconfigure. terraform outputmit-json. Ein Skriptszenario fragte, welcher Befehl maschinenlesbare Ausgabewerte erzeugt. Trivial, wenn man es benutzt hat; leicht zu übersehen, wenn nicht.
Nach der Prüfung
PSI zeigt am Ende einen Bestanden/Nicht bestanden-Bildschirm (ich bekam den grünen Haken; Erleichterung). Die vollständige Punkteaufschlüsselung nach Domäne kommt ein paar Tage später per E-Mail. Das Badge erscheint in Ihrem Credly-Konto, sobald Sie es akzeptieren. HashiCorp-Zertifizierungen sind zwei Jahre lang gültig, also legen Sie eine Kalendererinnerung an.
Was ich an einer Anbieterprüfung unterschätzt habe, ist, wie anstrengend 60 Minuten intensiver Konzentration sind. Planen Sie danach kein Meeting. Ich kam nach Hause und starrte eine Stunde lang an eine Wand.
Wenn Ihr Prüfungstermin näher rückt, machen Sie einen kalten Block aus der CertLabPro 004-Sammlung. Optimieren Sie nicht für eine hohe Punktzahl in der Übung – optimieren Sie darauf, die Kategorien zu erkennen, in denen Sie schwach sind, solange noch Zeit ist, diese zu beheben.