Përmbajtje[Fshih][Shfaqje]
Infracost është i rëndësishëm për DevOps, SRE dhe zhvilluesit që kërkojnë të vlerësojnë kostot e cloud për projektet e infrastrukturës si kod si Terraform. Me Infracost, ju mund të shihni shpejt një ndarje të kostos ndërsa krahasoni opsione të ndryshme, gjë që ndihmon të çoni në njohuri më të mira përpara një vendimi të madh.
Si funksionon Infracost?
Infracost mund të kontrollojë mbi 3 milionë çmime duke skanuar kodin tuaj Terraform dhe prodhon një vlerësim të kostos të thjeshtë dhe të lehtë për t'u lexuar përpara se të lëshoni burimet.
Ju gjithashtu mund të përdorni Infracost për të ditur se cilat rreshta të kodit kanë ndikimin më të madh të kostos, meqënëse ai paraqet koston me burimet në kërkesat tuaja për tërheqje. Duke integruar Infracost në CI/CD tuaj, ju mund të bashkëpunoni me ekipin tuaj dhe të mundësoni diskutime mbi ndikimin e ndryshimeve në rrjedhën tuaj ekzistuese të punës.
Infracost funksionon përmes shërbimit të tij mbështetës të Cloud Pricing API, dhe me mjetin CLI, mund të analizoni një plan Terraform në formatin JSON. API-ja referon koston individuale të çdo burimi të resë kompjuterike në përdorim, si dhe parametrat e kostos së tyre përkatëse bazuar në ofruesin e resë kompjuterike.
Programi nuk kërkon asnjë kredenciale për të funksionuar dhe nuk bën asnjë ndryshim në Terraform ose në burimet e analizuara të cloud. Duke përdorur numërimin e llojeve të burimeve Terraform, API siguron që burimet e reja llogariten.
Ekzistojnë dy mënyra kryesore se si Infracost tregon ndarjen e kostove:
A) Zbërthimi i plotë i kostove
B) Diferenca e kostove mujore ndërmjet gjendjes aktuale dhe asaj të planifikuar
Fillimi me Infracost (hap pas hapi)
Ndiqni këtë udhëzues hap pas hapi për të instaluar dhe filluar përdorimin e Infracost:
1. Instaloni Infracost
Hapi i parë për të filluar është instalimi i Infracost, por fillimisht duhet ta keni tashmë Terraform instaluar.
Këtu është një vështrim në versionet e ndryshme të Infracost:
macOS Homebrew:
brew install infracost
infracost –version # Duhet të tregojë v0.9.7
Manuali i macOS:
# Shkarkon CLI bazuar në OS/harkun tuaj dhe e vendos në /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
Linux:
# Shkarkon CLI bazuar në OS/harkun tuaj dhe e vendos në /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
Doker:
docker pull infrakost/infrakost
docker run –rm \
-e INFRACOST_API_KEY=shiko_following_step_on_se_to_merre_this \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-v $PWD/:/code/ infracost/infracost avari – path /code/
# Shtoni flamuj/envs të tjerë të kërkuar për Infracost ose Terraform
# Për shembull, këto mund të kërkohen nëse jeni duke përdorur rolin e supozimit të AWS:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Windows:
Shkarkoni dhe shpalosni lirimin e fundit. Drejtojeni atë nga Command Prompt ose Powershell duke përdorur .\infracost.exe --no-color
krahas komandave/flamujve të tjerë të kërkuar (dalja me ngjyra ka një gabim që duhet të rregullojmë në Windows). Ju gjithashtu duhet të zhvendosni skedarin exe në një dosje që është në tuaj PATH
ndryshore e mjedisit, p.sh. C:\Windows
.
2. Merrni një çelës API
Hapi tjetër është të regjistroheni për një çelës falas API, të cilin CLI e përdor për të kërkuar në API-në e çmimeve në renë kompjuterike për detyra si marrja e çmimeve për llojet e shembullit.
Të gjitha sistemet operative:
regjistri i infrakostit
Çelësi ruhet në ~/.config/infracost/credentials.yml
.
3. Drejtoni Infracost
Tani jeni gati të ekzekutoni Infracost, i cili nuk bën asnjë ndryshim në gjendjen tuaj Terraform ose në burimet e resë kompjuterike. Mund ta ekzekutoni me projektin e dhënë Terraform për ta provuar.
Të gjitha sistemet operative:
klon git https://github.com/infracost/example-terraform.git
cd shembull-terraform/shembull1
# Luaj me main.tf dhe ekzekuto sërish për të krahasuar kostot
zbërthimi i infrakostit – rruga .
# Trego ndryshimin e kostove mujore, modifikoni skedarin yml dhe ri-ekzekutoni për të krahasuar kostot
infracost diff – path . –sync-usage-file –usage-file infracost-usage.yml
4. Shto në CI/CD
Tani mund të përdorni Infracost's Integrimet CI/CD për të shtuar automatikisht komentet e kërkesës për tërheqje, të cilat ju tregojnë ndryshimet e vlerësimit të kostos. Kjo do t'ju sigurojë gjithashtu një rrjet sigurie, duke u mundësuar ekipeve të diskutojnë ndikimin e kostos së ndryshimeve si pjesë e rrjedhës së tyre të punës.
Përdorim
La infracost
CLI ka komandat kryesore të mëposhtme:
breakdown
: tregoni ndarjen e plotë të kostovediff
: tregoni ndryshimin e kostove mujore midis gjendjes aktuale dhe asaj të planifikuar
Përdorni një skedar konfigurimi Infracost nëse depo juaj ka shumë projekte ose hapësira pune Terraform. Rezultatet e tyre do të kombinohen në të njëjtën ndarje ose dalje të ndryshme.
Përdorimi i avancuar
Infracost gjithashtu ka metoda të ndryshme të avancuara të përdorimit që mund të përdoren përveç metodave të zakonshme të përdorimit. Këto metoda të avancuara mund të përdoren edhe nëpërmjet një skedari konfigurimi Infracost.
Skedari i Planit Terraform
Infracost mund të ekzekutohet kundër një skedari plani Terraform, që nënkupton se tashmë keni ekzekutuar Terraform init.
Infracost sapo ekzekuton Terraformshow
në këtë rast, që do të thotë se nuk kërkon kredencialet e resë kompjuterike ose --terraform-plan-flags
të vendoset.
shtegu/tek/kodi i cd-së
terraform init
terraform plan -out tfplan.binar
zbërthimi i infracost – path tfplan.binary
infracost diff – path tfplan.binary
Shteti Terraform
Nëse dëshironi të shihni ndarjen e kostos së gjendjes aktuale Terraform, duhet ta dini infracost breakdown
komanda ka një --terraform-use-state
flamuri, i cili do të ishte i dobishëm në këtë rast. Duhet të ekzekutosh tashmë Terraform apply
, kështu që Infracost thjesht ekzekuton Terraform show
, e cila nuk kërkon kredencialet e resë kompjuterike ose --terraform-plan-flags
të vendoset.
zbërthimi infrakost – shembuj të rrugës/terraform –terraform-use-state
Skedari JSON i Shtetit Terraform
Ju mund të kandidoni infracost breakdown
kundër një skedari JSON të gjendjes Terraform. Ky do të ishte [formati i daljes JSON] i gjendjes në vend të përfaqësimit të brendshëm JSON. Duhet të krijohet duke ekzekutuar terraform show -json
brenda një projekti Terraform dhe është veçanërisht i dobishëm nëse dëshironi të shihni ndarjen e kostos së gjendjes aktuale Terraform. Në këtë rast, kjo nënkupton që ju tashmë keni ekzekutuar Terraform apply
, që do të thotë pa kredenciale reje ose --terraform-plan-flags
janë të nevojshme.
Cilat re dhe burime mbështeten?
Infracost mbështet më shumë se 200 Burimet Terraform nëpër AWS, Google dhe Azure, ndërsa mjete të tjera IaC si Pulumi Formimi i reve përfshihen në udhërrëfyes. Mbështetja për burime të reja po shtohet vazhdimisht, prandaj është e rëndësishme të kontrolloni depon për publikime.
Përfundim
Infracost është një ndihmës mjet për zhvilluesit, DevOps, SRE dhe të tjerë që kërkojnë të shohin shpejt ndarjen e kostos dhe të krahasojnë opsione të ndryshme përpara. Është gjithashtu një zgjedhje e mirë nëse po kërkoni ta integroni me CI dhe/ose keni nevojë për mbështetje për AWS dhe Google Cloud. Nëse dëshironi të krijoni një bashkëpunim më të mirë midis ekipit tuaj, Infracost gjithashtu mund të ndihmojë në këtë drejtim. Të gjitha këto veçori e bëjnë atë një mjet që duhet ta konsideroni fuqimisht zbatimin për vlerësimet e kostos së cloud për Terraform.
Lini një Përgjigju