Terraform szolgáltatók

Terraform Szolgaltatok



Az egyik népszerű és nyílt forráskódú Infrastructure as a Code eszköz a Terraform. Lehetővé teszi a fejlesztők számára, hogy deklaratív módon határozzák meg és kezeljék az infrastruktúrát. Lehetővé teszi számukra az infrastruktúra-erőforrások létrehozását, kezelését és módosítását egyszerű és következetes szintaxis használatával, függetlenül az alapul szolgáló felhőplatformtól vagy szolgáltatótól.

Ez a cikk azt tárgyalja, hogyan használhatja és konfigurálja a különböző szolgáltatókat a különféle felhőplatformokkal és -szolgáltatásokkal való interakcióhoz.

Bevezetés a Terraform szolgáltatókba

A Terraform szolgáltatók olyan beépülő modulok, amelyek lehetővé teszik számunkra, hogy különböző felhőplatformokkal és -szolgáltatásokkal kommunikáljunk a Terraform használatával. Ezek a szolgáltatók felelősek a Terraform konfiguráció API-hívásokká történő lefordításáért, amely szükséges az erőforrások kezeléséhez egy adott felhőplatformon vagy szolgáltatáson.







A szolgáltatók típusai a Terraformban

Ban,-ben Terraform nyilvántartás , háromféle szolgáltatót láthatunk:



Hivatalos szolgáltatók

A hivatalos szolgáltatókat a Terraformot birtokló HashiCorp cég tartja karban. Ezek a szolgáltatók a legjobb megoldás, ha a jól dokumentált és naprakész szolgáltatókra van szükségünk.



Az AWS, a Microsoft Azure és a Google Cloud Platform szolgáltatói példák lehetnek a Terraform hivatalos szolgáltatóira.





Partnerszolgáltatók

Harmadik fél szervezetek tartják fenn ezeket a szolgáltatókat, és partneri viszonyt kötöttek a HashiCorp-pal, hogy hivatalos támogatást nyújtsanak szolgáltatásaikhoz.

A GitLab, a MongoDB és a CloudFlare szolgáltatók olyan partnerszolgáltatók, amelyek elérhetők a felhasználók számára.



Közösségi szolgáltatók

A közösségi szolgáltatókat jellemzően a Terraform közösség magánszemélyei vagy szervezetei hozzák létre, akik az erőforrásokat olyan felhőplatformon vagy szolgáltatáson szeretnék kezelni, amelyet hivatalos vagy partnerszolgáltató nem támogat.

Néhány példa közösségi szolgáltatókra a következő képen látható:

A Terraform Provider használata

A Terraform szolgáltató használatához be kell foglalnunk egy szolgáltatói blokkot a konfigurációs fájlunkba, amely meghatározza a használni kívánt szolgáltatót és a szükséges konfigurációs paramétereket, például a hitelesítő adatokat vagy a régiót.

A szolgáltató konfigurálása után a szolgáltató által a Terraform konfigurációban biztosított erőforrásokat és adatforrásokat használhatjuk a felhőplatformon vagy -szolgáltatáson lévő erőforrások kezelésére.

Hozzon létre egy egyszerű Terraform konfigurációs fájlt, amely létrehoz egy EC2 példányt az AWS felhőplatformon.

szolgáltató 'jaj' {

verzió = '~> 3,0'

régió = 'us-kelet-2'

}

forrás 'aws_instance' 'myEC2' {

  ami = 'ami-0a561b65214a47cac'

példány_típus = 't3. kicsi'

tags = {

Név = 'új példány'

}

}

Először meghatározzuk a szolgáltatói blokkot, megadva az AWS-szolgáltatót és az erőforrások létrehozásának régióját. Ezután az erőforrásblokkot úgy határozzuk meg, hogy erőforrástípusként aws_instance, erőforrásnévként „myEC2”, attribútumként pedig „ami”, „instance_type” és „tags” áll. Az erőforrás típusa két részre osztható: Szolgáltató és Erőforrás. Ebben az esetben az „aws” a szolgáltató, a „példány” pedig az erőforrás. Továbbá, ha valakinek tíz EC2-példányt kell létrehoznia, a „count” attribútum használható tíz értékkel.

Most végre tudjuk hajtani a Terraform folyamatot, amely magában foglalja a terraform init, terraform plan és terraform application parancsok végrehajtását az általunk meghatározott erőforrás létrehozásához.

A Terraform AWS szolgáltató segítségével az AWS felügyeleti konzol használata nélkül is elérhetjük az AWS felhőplatformot, és hatékonyan kommunikálhatunk szolgáltatásaival.

Több szolgáltató használata Terraformban

Ahelyett, hogy egyetlen szolgáltatót használnánk, a Terraform lehetővé teszi, hogy több szolgáltatót használjunk ugyanazon Terraform konfigurációs fájlon belül, hogy különféle típusú szolgáltatásokkal és felhőplatformokkal kommunikáljunk.

A megértés kedvéért nézzünk meg egy példát, ahol számítási motort helyezünk üzembe a Google Cloud Platformban, egy adattárat a GitHubban és egy S3 tárolót az AWS felhőplatformon.

szolgáltató 'Google' {

projekt = 'első projekt'

régió = 'us-west1'

}

szolgáltató 'github' {

token = 'YOUR_GITHUB_TOKEN'

}

szolgáltató 'jaj' {

verzió = '~> 3,0'

régió = 'us-nyugat-2'

}

forrás 'google_compute_példány' 'gcpInstance' {

név = 'új példány'

gép_típusa = 'n1-standard-1'

zóna = 'us-west1-a'

boot_disk {

inicializálás_paraméterek {

kép = 'debian-cloud/debian-10'

}

}

}

forrás 'github_repository' 'gitRepo' {

név = 'új repo'

leírás = 'Ez az új tárhelyem'

}

forrás 'aws_s3_bucket' 'awsBucket' {

vödör = 'új vödör'

acl = 'magán'

}

Első lépésként meghatározzuk szolgáltatói blokkjainkat a szolgáltatók (Google, GitHub és AWS) és a szükséges információk, például régió, projektnév stb. megadásához. Ezután három erőforrásblokk segítségével deklaráljuk erőforrásainkat: „gcpInstance”, „ gitRepo” és „awsBucket”.

Először is létrehozunk egy számítási motort a Google Cloud Platformban, amelynek neve az „új példány”, géptípusa „n1-standard-1”, elérhetőségi zóna pedig „us-west1-a”. A Debiant használja gazdagép operációs rendszerként. Ezután létrehozunk egy „new-repo” nevű GitHub-tárolót és egy megfelelő leírást. Végül egy S3 gyűjtőhely készül, amelynek neve a „new-bucket”, ACL (Hozzáférési vezérlőlista) értéke pedig „private”.

Ezzel a három Terraform szolgáltatóval könnyen kommunikálhatunk felhőplatformokkal és szolgáltatásaikkal.

A Terraform szolgáltatókkal való munka legjobb gyakorlatai

Szolgáltatói verziószámítás

Meg kell adnunk a szolgáltató verzióját, mert ez segíti a konzisztenciát, és elkerüli a váratlan viselkedést az újabb verziók törési változásai miatt.

Szolgáltató hitelesítése

Használhatjuk a biztonságos hitelesítési mechanizmusokat, például az API-kulcsokat és a hozzáférési jogkivonatokat a Terraform hitelesítésére és engedélyezésére, hogy interakcióba lépjen a megfelelő felhőplatformmal vagy szolgáltatással.

Szolgáltatói dokumentáció

A szolgáltatók gyakran meghatározott konfigurációs opciókkal, szolgáltatásokkal és korlátozásokkal rendelkeznek. Ennek az oktatóanyagnak a megértése segít a szolgáltató hatékony használatában és a gyakori buktatók elkerülésében.

Szolgáltatói frissítések

A szolgáltatók hibajavításokat, teljesítményjavításokat és új funkciókat adhatnak ki. A naprakészen tartás lehetővé teszi számunkra, hogy kihasználjuk a legújabb fejlesztéseket, és fenntartsuk a kompatibilitást a szolgáltató ökoszisztémájával.

Közösségi támogatás

Az online fórumok, vitalapok, közösségi csatornák segítségével megoldhatjuk a szolgáltatók igénybevétele során felmerülő mindennapi kihívásokat.

Hibakezelés és hibaelhárítás

Jó gyakorlat, ha megismerkedünk a szolgáltató hibaüzeneteivel, naplóival és hibakeresési technikáival, így ez segít a problémák hatékonyabb diagnosztizálásában és megoldásában.

Következtetés

Röviden bemutattuk a Terraform szolgáltatókat. Könnyen érthető példákon keresztül megvitattuk, hogyan használhatók és konfigurálhatók a különféle felhőplatformokkal és -szolgáltatásokkal való interakcióhoz, és hogyan lehet több szolgáltatót használni az erőforrások kezeléséhez a különböző felhőplatformokon és -szolgáltatásokon keresztül.