Edukien aurkibidea[Ezkutatu][Erakutsi]
Infracost garrantzitsua da DevOps, SRE eta Terraform bezalako azpiegitura gisa kodeko proiektuetarako hodeiko kostuak kalkulatu nahi dituzten garatzaileentzat. Infracost-ekin, kostuen banaketa azkar ikus dezakezu aukera desberdinak alderatzen dituzun bitartean, eta horrek erabaki handi baten aurretik informazio hobeak lortzen laguntzen du.
Nola funtzionatzen du Infracostek?
Infracost-ek 3 milioi prezio baino gehiago egiazta ditzake zure Terraform kodea eskaneatuz, eta kostuen kalkulu sinple eta irakurterraza egiten du baliabideak abiarazi aurretik.
Infracost ere erabil dezakezu kode-lerroek kostu eragin handiena duten jakiteko, zure tira-eskaeretan baliabideen kostua mapatzen baitu. Infracost zure CI/CDan integratuz, zure taldearekin lankidetzan jar zaitezke eta zure lan-fluxuan aldaketen eraginari buruzko eztabaidak gaitu.
Infracost-ek bere Cloud Pricing API backend zerbitzuaren bidez funtzionatzen du eta CLI tresnarekin Terraform plan bat JSON formatuan analizatu dezakezu. APIak erabiltzen den hodei-baliabide bakoitzaren kostu indibiduala gurutzatu egiten du, baita hodei-hornitzailearen arabera lotutako kostu-parametroak ere.
Programak ez du inolako kredentzialrik behar funtzionatzeko, eta ez du aldaketarik egiten Terraform-en edo aztertutako hodeiko baliabideetan. Terraform baliabide moten zenbaketa erabiliz, APIak baliabide berriak kontabilizatzen direla ziurtatzen du.
Infracost-ek kostuen banaketa erakusten duen bi modu nagusi daude:
A) Kostuen Banaketa osoa
B) Hileroko kostuen aldea egungo eta aurreikusitako egoeraren artean
Infracost-ekin hastea (urratsez urrats)
Jarraitu urratsez urrats gida hau Infracost instalatzeko eta erabiltzen hasteko:
1. Instalatu Infracost
Hasteko lehen urratsa Infracost instalatzea da, baina lehendik eduki behar duzu Terraform instalatu.
Hona hemen Infracost-en bertsio desberdinak:
macOS Homebrew:
brew instalatu infracost
infracost –version # v0.9.7 erakutsi beharko luke
macOS eskuliburua:
# Zure OS/arch-ean oinarritutako CLI deskargatzen du eta /usr/local/bin-en jartzen du
kizkur -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
Linux:
# Zure OS/arch-ean oinarritutako CLI deskargatzen du eta /usr/local/bin-en jartzen du
kizkur -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
Docker:
docker tira infracost/infracost
docker run –rm \
-e INFRACOST_API_KEY=ikusi_hau_lortu_ondoren_urratsak\
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-v $PWD/:/code/ infracost/infracost matxura –path /code/
# Gehitu beharrezko beste bandera/envs Infracost edo Terraform-erako
# Esate baterako, hauek beharrezkoak izan daitezke AWS assume-role erabiltzen ari bazara:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Windows:
Deskargatu eta deskonprimitu azken oharra. Exekutatu Komando Prompt-etik edo Powershell-etik erabiliz .\infracost.exe --no-color
beharrezko beste komando/bandera batzuekin batera (kolorearen irteera Windows-en konpondu behar dugun akats bat du). Era berean, exe fitxategia zure barruan dagoen karpeta batera eraman beharko zenuke PATH
inguruneko aldagaiaadibidez C:\Windows
.
2. Lortu API gako bat
Hurrengo urratsa doako API gako batean erregistratzea da, eta CLI-k Cloud Pricing APIa kontsultatzeko erabiltzen du instantzia motentzako prezioak lortzea bezalako zereginetarako.
Sistema eragile guztiak:
azpikostuen erregistroa
Gakoa bertan gordetzen da ~/.config/infracost/credentials.yml
.
3. Exekutatu Infracost
Orain prest zaude Infracost exekutatzeko, eta horrek ez du inolako aldaketarik egiten Terraform egoeran edo hodeiko baliabideetan. Emandako Terraform proiektuarekin exekutatu dezakezu probatzeko.
Sistema eragile guztiak:
git clone https://github.com/infracost/example-terraform.git
cd adibidea-terraforma/lagina1
# Jolastu main.tf-rekin eta exekutatu berriro kostuak alderatzeko
infracost breakdown –bidea .
# Erakutsi hileroko kostuen desberdintasuna, editatu yml fitxategia eta exekutatu berriro kostuak alderatzeko
infracost diff –path . –sync-usage-file –usage-fitxategia infracost-usage.yml
4. Gehitu CI/CDra
Orain Infracost-en erabil dezakezu CI/CD integrazioak pull-eskaeraren iruzkinak automatikoki gehitzeko, kostu-kalkuluen desberdintasunak erakusten dizkizutenak. Horrek segurtasun-sare bat ere emango dizu, taldeek beren lan-fluxuaren parte gisa aldaketen kostuen eraginaz eztabaidatu ahal izateko.
Erabilera
The infracost
CLI-k komando nagusi hauek ditu:
breakdown
: kostuen banaketa osoa erakutsidiff
: erakutsi hileko kostuen desberdintasuna egungo eta aurreikusitako egoeraren artean
Erabili Infracost konfigurazio-fitxategi bat zure biltegiak Terraform proiektu edo lan-eremu anitz baditu. Haien emaitzak matxura edo diferentzia-irteera berean konbinatuko dira.
Erabilera Aurreratua
Infracost-ek ohiko erabilera metodoez gain erabil daitezkeen hainbat erabilera aurreratu ditu. Metodo aurreratu hauek Infracost konfigurazio fitxategi baten bidez ere erabil daitezke.
Terraform Planaren Fitxategia
Infracost Terraform planaren fitxategi baten aurka exekutatu daiteke, eta horrek esan nahi du dagoeneko Terraform exekutatu duzula init.
Infracost-ek Terraform exekutatzen dushow
kasu honetan, hau da, ez du hodeiko kredentzialak behar edo --terraform-plan-flags
ezartzeko.
cd bide/kode/kode
terraform init
terraform plan -out tfplan.binary
infracost matxura –path tfplan.binary
infracost diff –path tfplan.binary
Terraforma egoera
Egungo Terraform egoeraren kostuen banaketa ikusi nahi baduzu, jakin beharko zenuke infracost breakdown
komandoak bat du --terraform-use-state
bandera, kasu honetan baliagarria izango litzatekeena. Dagoeneko Terraform exekutatu behar duzu apply
, beraz, Infracost-ek Terraform besterik ez du exekutatzen show
, hodeiko kredentzialak behar ez dituena edo --terraform-plan-flags
ezartzeko.
infracost breakdown –bide adibideak/terraform –terraform-use-state
Terraform egoera JSON fitxategia
Ezin duzu exekutatu infracost breakdown
Terraform egoera JSON fitxategi baten aurka. Hau egoeraren [JSON irteera formatua] izango litzateke barneko JSON irudikapenaren ordez. Exekutatuta sortu behar da terraform show -json
Terraform proiektu baten barruan, eta bereziki erabilgarria da egungo Terraform egoeraren kostuen banaketa ikusi nahi baduzu. Kasu honetan, Terraform dagoeneko exekutatzen duzula esan nahi du apply
, hots, hodeiko kredentzialik ez edo --terraform-plan-flags
beharrezkoak dira.
Zein hodei eta baliabide onartzen dira?
Infracostek baino gehiago onartzen du 200 Terraform baliabideak AWS, Google eta Azure-n zehar, beste IaC tresnak bezala Pulumi Hodeien eraketa bide-orrian sartzen dira. Baliabide berrientzako euskarria etengabe gehitzen ari da, beraz, garrantzitsua da errepo-a bertsioak ikusteko.
Ondorioa
Infracost lagungarria da garatzaileentzako tresna, DevOps, SRE eta beste batzuk kostuen banaketa azkar ikusi eta aukera desberdinak aldez aurretik alderatu nahi dituzte. Aukera ona da CI-rekin integratu nahi baduzu eta/edo AWS eta Google Cloud-en laguntza behar baduzu. Zure taldearen arteko lankidetza hobea sortu nahi baduzu, Infracost-ek ere lagundu dezake zentzu horretan. Ezaugarri hauek guztiak Terraform-en hodeiko kostuen estimazioetarako inplementazioa oso kontuan hartu beharko zenukeen tresna bihurtzen dute.
Utzi erantzun bat