Milyen Terraform-interjúkérdésekre számíthatok?
Szerző: Aaron Cao · Frissítve

Négy témakör kérdéseire számíts: az alapvető munkafolyamatra (init, plan, apply, destroy), az állapotra (távoli backendek, zárolás, érzékeny értékek), a kód felépítésére (modulok, változók, munkaterületek, szolgáltatók), valamint olyan helyzetekre, mint a konfigurációeltérés, egy félúton meghiúsult apply vagy a kézzel létrehozott erőforrások importálása. Az interjúztatók az egyes döntések mögötti érvelést értékelik.
Mely Terraform-alapokat ellenőrzik először az interjúztatók?
A legtöbb Terraform-interjú a munkafolyamattal kezdődik, majd gyorsan rátér arra, mi történik a háttérben. Készülj fel arra, hogy jegyzetek nélkül végigvezeted az életciklust: a terraform init letölti a szolgáltatókat és konfigurálja a backendet; a terraform plan összeveti a kívánt konfigurációt az állapotfájllal és a tényleges erőforrásokkal, majd megjeleníti a végrehajtandó műveleteket; a terraform apply végrehajtja ezt a tervet; a terraform destroy eltávolítja a konfiguráció által kezelt elemeket. Az első kiegészítő kérdés szinte mindig az, hogy miért külön lépés a plan és az apply; a válasz az ellenőrizhetőség és a biztonság: a terv megvizsgálható, jóváhagyható és menthető, mielőtt bármi megváltozna.
- Szolgáltatók. Olyan bővítmények, amelyek egy API-val, például az AWS, Azure, Google Cloud vagy Kubernetes API-jával kommunikálnak. Kiegészítő kérdés: miért kell rögzíteni a szolgáltatók verzióját?
- Erőforrások és adatforrások. Az erőforrásokat a Terraform hozza létre és kezeli; az adatforrások olyan meglévő elemeket olvasnak, amelyeket nem kezel.
- Változók, helyi értékek és kimenetek. Bemenetek, kiszámított értékek és exportált értékek. Kiegészítő kérdés: hogyan akadályozod meg, hogy egy titkos adat megjelenjen a terv kimenetében?
- A függőségi gráf. A Terraform az erőforrások közötti hivatkozások alapján rendezi a műveleteket; a
depends_onaz olyan függőségekhez használható, amelyeket a gráf nem képes felismerni.
A válaszodban térj ki arra, hogy az egyes parancsok mit olvasnak és mit írnak. Az a jelölt, aki elmondja, hogy a plan csak olvas, míg az apply az infrastruktúrát és az állapotot is módosítja, már megmutatta, hogy érti a modellt.
Milyen állapot- és modulkérdésekre készüljek?
Tudod, hogy az állapot fontos, és sejted, hogy az interjúztató megkeresi majd a tudásod határait. Ez jogos, ezért ez a rész azokat a kérdéseket tárgyalja, amelyek elérik ezt a határt, valamint azt, hogy mit tartalmaz egy teljes válasz.
- Hol található az állapot, és miért ne helyben legyen? Egy távoli backend, például egy objektumtároló-vödör, a Terraform Cloud vagy egy adatbázis közös hiteles forrást biztosít. A következő kérdés a zárolás: ha két ember egyszerre futtat apply műveletet, megsérülhet az állapot, ezért a zárolást támogató backendek elutasítják a második futtatást.
- Mi van az állapotfájlban? Erőforrás-attribútumok, köztük olyan értékek, amelyeket érzékenynek tekinthetsz. Mondd el, hogy az állapotot titkos adatként kell kezelni, tároláskor titkosítani kell, és hozzáférés-vezérléssel kell védeni.
- Modulok. A modul saját bemenetekkel és kimenetekkel rendelkező, újrahasználható erőforráskészlet. Az interjúztatók megkérdezik, hogyan verziózod a modulokat, hogyan kerülöd el, hogy egy modul mindent megpróbáljon elvégezni, és hogyan állít össze egy gyökérmodul gyermekmodulokat.
- Munkaterületek vagy külön konfigurációk. A munkaterületek egy konfigurációhoz több állapotfájlt biztosítanak. A csapda az, ha ezt tekinted a teljes környezetkezelési megoldásnak; az éles környezet általában saját konfigurációt, backendet és hitelesítő adatokat érdemel egy egyszerű munkaterület-váltás helyett.
- Átalakítás megsemmisítés nélkül. Egy erőforrás átnevezése miatt a Terraform meg akarja semmisíteni, majd újra létre akarja hozni azt. Tudd, hogy léteznek
movedblokkok és aterraform state mvparancs, valamint azt is, hogy melyik mire való.
Minden itteni válasznál hasznos fegyelem: nevezd meg azt a hibát, amelyet az adott gyakorlat megelőz. A zárolás megakadályozza az egyidejű módosításból eredő sérülést; a távoli állapot megelőzi a laptopokon lévő állapotok szétválását; a rögzített verziók megakadályozzák a váratlan frissítést egy rutinszerű apply során.
Hogyan zajlanak a helyzetalapú kérdések?
A tapasztaltabb pozíciók interjúin a definíciókat helyzetek váltják fel. Egy jellemző példa: egy fintech vállalat infrastruktúráért felelős pozíciójára jelentkező platformmérnöknek azt mondják, hogy valaki kézzel módosított egy biztonsági csoportot a felhőkonzolban, a következő terv váratlan eltérést mutat, és a csapat aggódik az apply futtatása miatt. Az erős válasz konfigurációeltérésként azonosítja a helyzetet, elmagyarázza, hogy a plan a tényleges állapot frissítésével már kimutatta azt, eldönti, hogy a kézi módosítást meg kell-e tartani vagy vissza kell-e vonni, majd vagy a valósághoz igazítja a konfigurációt, vagy apply futtatásával visszaállítja a deklarált állapotot. Az interjúztatót a döntés érdekli, nem egy parancs.
További visszatérő helyzetek: egy félúton meghiúsult apply és az állapot későbbi tartalma; a Terraform bevezetése előtt létrehozott erőforrások és az, hogy a terraform import miként vonja őket kezelés alá; egy több mérnökből álló csapat, valamint a tárolók, backendek és a CI olyan kialakítása, hogy a tervek pull requesteknél fussanak, az apply pedig csak egyszer; a változókban lévő titkos adatok és hogy honnan kellene inkább származniuk; az erőforrások viselkedését megváltoztató szolgáltatófrissítés. Minden esetben nevezd meg a korlátot, válaszd ki a mechanizmust, és mondd el, milyen áldozattal jár.
Ezekre könnyebb jól válaszolni, ha korábban már hangosan is megfogalmaztad a válaszaidat. A próbainterjú mód helyzetalapú kérdéseket tesz fel kiegészítő kérdésekkel, a többi szerepkörhöz és eszközhöz tartozó kérdésgyűjtemény pedig az interjúkérdések szerepkör és témakör szerint oldalon található.
Segíthet egy AI-interjúasszisztens egy Terraform-interjún?
A beszélgetéses részeknél igen, de vannak korlátok, amelyeket érdemes világosan kimondani. A SubcueAI natív macOS és Windows asztali alkalmazása rögzíti a rendszerhangot és a mikrofonodat, majd rövid javaslatokat jelenít meg egy helyi átfedő rétegen, így amikor az interjúztató megkérdezi, mi ellen véd az állapot zárolása, a magyarázat közben előtted van a mechanizmus. A böngészőbővítmény oldalsó panelje ugyanezt teszi a Chrome vagy Edge böngészőlapján zajló hívásoknál, és csak a megbeszélést tartalmazó lap hangját rögzíti. Egyetlen bot sem csatlakozik a híváshoz, és semmi sem kerül a megbeszélés oldalába; a beállítás lépései az útmutató oldalon találhatók.
Amiben nem segít: felügyelt felmérés, képernyőfelvétel, vállalat által felügyelt laptop vagy olyan élő feladat, amelyben megfigyelés alatt írsz HCL-kódot. Aaron Cao, a SubcueAI alapítója úgy írja le a tervezési célt, mint emlékeztetőt arra, amit már tudsz, nem pedig annak helyettesítőjét; ezért dolgozik az asszisztens az önéletrajzodból és a saját megfogalmazásaidból. Az egyértelmű korlátokat az észlelhetőségi témakör mutatja be.