Tartalomjegyzék[Elrejt][Előadás]
Az Infracost fontos a DevOps, az SRE és a fejlesztők számára, akik meg akarják becsülni a felhőköltségeket olyan infrastruktúra-as-code projektekhez, mint például a Terraform. Az Infracost segítségével gyorsan megtekintheti a költségek lebontását, miközben összehasonlítja a különböző lehetőségeket, ami segít jobb betekintést nyerni egy nagy döntés előtt.
Hogyan működik az Infracost?
Az Infracost több mint 3 millió árat tud ellenőrizni a Terraform kód beolvasásával, és az erőforrások elindítása előtt egyszerű és könnyen olvasható költségbecslést készít.
Az Infracost segítségével azt is megtudhatja, hogy mely kódsoroknak van a legnagyobb költséghatással, mivel ez leképezi a költségeket a lehívási kérelmek erőforrásaira. Az Infracost CI/CD-be való integrálásával együttműködhet csapatával, és lehetővé teszi a megbeszéléseket a meglévő munkafolyamat változásainak hatásairól.
Az Infracost a Cloud Pricing API háttérszolgáltatásán keresztül működik, és a CLI eszközzel elemezhet egy Terraform tervet JSON formátumban. Az API kereszthivatkozásokat mutat az egyes használt felhő-erőforrások egyedi költségére, valamint a kapcsolódó költségparaméterekre a felhőszolgáltató alapján.
A program működéséhez nincs szükség hitelesítő adatokra, és nem végez semmilyen változtatást sem a Terraformon, sem az elemzett felhő-erőforrásokon. A Terraform erőforrástípusok számának használatával az API biztosítja az új erőforrások elszámolását.
Az Infracost két fő módja van a költségek lebontásának:
A) A költségek teljes lebontása
B) A havi költségek különbsége a jelenlegi és a tervezett állapot között
Az Infracost használatának első lépései (lépésről lépésre)
Kövesse ezt a lépésenkénti útmutatót az Infracost telepítéséhez és használatának megkezdéséhez:
1. Telepítse az Infracost
A kezdéshez az első lépés az Infracost telepítése, de előbb már rendelkeznie kell vele Terraform telepítve.
Íme egy pillantás az Infracost különböző verzióira:
macOS Homebrew:
brew install infracost
infracost – verzió # Meg kell mutatnia a v0.9.7 verziót
macOS kézikönyv:
# Letölti a CLI-t az OS/arch alapján, és elhelyezi a /usr/local/bin könyvtárba
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | SH
Linux:
# Letölti a CLI-t az OS/arch alapján, és elhelyezi a /usr/local/bin könyvtárba
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | SH
Dokkmunkás:
docker pull infracost/infracost
docker run –rm \
-e INFRACOST_API_KEY=tekintse meg a_következő_lépést_hogyan_szerezze meg ezt \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-v $PWD/:/code/ infracost/infracost lebontás –útvonal /code/
# Adjon hozzá további szükséges zászlókat/envs-eket az Infracost vagy a Terraform számára
# Például ezekre lehet szükség, ha AWS-es feltételezett szerepet használ:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Windows:
Töltse le és csomagolja ki a legutolsó kiadás. Futtassa a parancssorból vagy a Powershellből a használatával .\infracost.exe --no-color
egyéb szükséges parancsok/jelzők mellett (a színes kimenetnek van egy hibája, amelyet ki kell javítanunk Windowson). Az exe fájlt is át kell helyeznie a saját mappájában található mappába PATH
környezeti változó, például C:\Windows
.
2. Szerezzen be egy API-kulcsot
A következő lépés egy ingyenes API-kulcs regisztrációja, amelyet a CLI arra használ, hogy lekérdezze a Cloud Pricing API-t olyan feladatokhoz, mint például a példánytípusok árainak lekérése.
Minden operációs rendszer:
infraköltség nyilvántartás
A kulcs el van mentve ~/.config/infracost/credentials.yml
.
3. Futtassa az Infracost programot
Most már készen áll az Infracost futtatására, amely nem módosítja a Terraform állapotát vagy a felhő-erőforrásokat. A teszteléshez futtathatja a mellékelt Terraform projekttel.
Minden operációs rendszer:
git klón https://github.com/infracost/example-terraform.git
cd példa-terraform/minta1
# Játsszon a main.tf fájllal, és futtassa újra a költségek összehasonlításához
infraköltség lebontás –útvonal .
# Mutassa meg a havi költségek különbségét, szerkessze az yml fájlt, és futtassa újra a költségek összehasonlításához
infracost diff –path . –sync-usage-file –usage-file infracost-usage.yml
4. Hozzáadás a CI-hez/CD-hez
Most már használhatja az Infracost-ot CI/CD integrációk automatikusan hozzáadja a lekérési kérések megjegyzéseit, amelyek a költségbecslési különbségeket mutatják. Ez egy biztonsági hálót is biztosít, amely lehetővé teszi a csapatok számára, hogy munkafolyamataik részeként megvitassák a változtatások költséghatását.
Használat
A infracost
A CLI a következő fő parancsokkal rendelkezik:
breakdown
: a költségek teljes lebontásának megjelenítésediff
: mutatja a havi költségek különbségét a jelenlegi és a tervezett állapot között
Használjon Infracost konfigurációs fájlt, ha a repo több Terraform projektet vagy munkaterületet tartalmaz. Eredményeiket ugyanabban a bontásban vagy diff kimenetben egyesítik.
Haladó használat
Az Infracost számos fejlett felhasználási módszerrel is rendelkezik, amelyek a szokásos használati módok mellett használhatók. Ezek a fejlett módszerek egy Infracost konfigurációs fájlon keresztül is használhatók.
Terraform tervfájl
Az Infracost futtatható Terraform tervfájlon, ami azt jelenti, hogy már futtatta a Terraformot init.
Az Infracost csak a Terraformot futtatjashow
ebben az esetben, ami azt jelenti, hogy nem igényel felhő hitelesítő adatokat, ill --terraform-plan-flags
be kell állítani.
cd elérési út/to/kód
terraform init
terraform plan -out tfplan.binary
infraköltség lebontás – elérési út tfplan.binary
infracost diff –útvonal tfplan.binary
Terraform állam
Ha szeretné látni a jelenlegi Terraform állapot költségbontását, ismernie kell a infracost breakdown
parancsnak van egy --terraform-use-state
zászló, ami ebben az esetben hasznosnak bizonyulna. Már futnia kell a Terraformnak apply
, tehát az Infracost csak a Terraformot futtatja show
, amelyhez nincs szükség felhő hitelesítő adatokra ill --terraform-plan-flags
be kell állítani.
infracost lebontás –útvonal-példák/terraform –terraform-használati állapot
Terraform State JSON-fájl
Futtathatja a infracost breakdown
Terraform állapotú JSON-fájl ellen. Ez lenne az állapot [JSON kimeneti formátuma] a belső JSON-ábrázolás helyett. Futással kell előállítani terraform show -json
egy Terraform projekten belül, és különösen akkor hasznos, ha látni szeretné az aktuális Terraform állapot költségbontását. Ebben az esetben ez azt jelenti, hogy már futtatja a Terraformot apply
, azaz nem felhő hitelesítő adatok vagy --terraform-plan-flags
szükségesek.
Mely felhők és erőforrások támogatottak?
Az Infracost többet támogat, mint 200 Terraform erőforrások az AWS, a Google és az Azure között, míg más IaC-eszközök, mint pl Pulumi és a Felhőképződés szerepelnek az ütemtervben. Az új erőforrások támogatása folyamatosan bővül, ezért fontos, hogy ellenőrizze a kiadások repóját.
Következtetés
Az infracost hasznos eszköz a fejlesztők számára, DevOps, SRE és mások, akik gyorsan megnézik a költségek lebontását, és előre összehasonlítják a különböző lehetőségeket. Akkor is jó választás, ha integrálni szeretné a CI-vel, és/vagy támogatásra van szüksége az AWS-hez és a Google Cloudhoz. Ha jobb együttműködést szeretne kialakítani csapata között, az Infracost ebben is segíthet. Mindezek a szolgáltatások olyan eszközzé teszik, amelyet erősen meg kell fontolnia a Terraform felhőalapú költségbecsléseihez.
Hagy egy Válaszol