Table di cuntinutu[Piattà][Mostra]
Infracost hè impurtante per DevOps, SRE è sviluppatori chì cercanu di stimà i costi di nuvola per i prughjetti di infrastruttura cum'è codice cum'è Terraform. Cù Infracost, pudete vede rapidamente una ripartizione di i costi mentre paragunendu diverse opzioni, chì aiuta à guidà à megliu insights prima di una grande decisione.
Cumu Funziona Infracost?
Infracost pò verificà più di 3 milioni di prezzi scannendu u vostru codice Terraform, è pruduce una stima di costu simplice è faciule da leghje prima di lancià risorse.
Pudete ancu aduprà Infracost per sapè quale linee di codice anu u più grande impattu di u costu, postu chì mappa u costu à e risorse in e vostre richieste di pull. Integrà Infracost in u vostru CI / CD, pudete cullaburà cù a vostra squadra è attivà discussioni annantu à l'impattu di i cambiamenti in u vostru flussu di travagliu esistente.
Infracost travaglia cù u so serviziu di backend API di Cloud Pricing, è cù l'uttellu CLI, pudete analizà un pianu Terraform in formatu JSON. L'API incruciate u costu individuale di ogni risorsa di nuvola in usu, è ancu i so paràmetri di costu cunnessi basatu annantu à u fornitore di nuvola.
U prugramma ùn hà micca bisognu di credenziali per operare, è ùn face micca alterazioni à Terraform o à e risorse di nuvola analizate. Utilizendu u cuntu di i tipi di risorse Terraform, l'API assicura chì i novi risorse sò contabilizzati.
Ci hè dui modi principali chì Infracost mostra a ripartizione di i costi:
A) Ripartizione completa di i costi
B) Differenza di i costi mensili trà u Statu attuale è u statu pianificatu
Cumincià cù Infracost (passu per passu)
Segui sta guida passo-passu per installà è cumincià à aduprà Infracost:
1. Installa Infracost
U primu passu per avè principiatu hè di installà Infracost, ma duvete prima avè digià Terraform stallatu.
Eccu un ochju à e diverse versioni di Infracost:
macOS Homebrew:
brew install infracost
infracost -versione # Deve mustrà v0.9.7
Manuale di macOS:
# Scaricate u CLI basatu annantu à u vostru OS / arch è u mette in /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
Linux:
# Scaricate u CLI basatu annantu à u vostru OS / arch è u mette in /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
Docker:
docker pull infracost / infracost
docker run -rm \
-e INFRACOST_API_KEY=vede_following_step_on_how_to_get_this \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-v $PWD/:/code/ infracost/infracost breakdown –path /code/
# Aggiungi altre bandiere / envs richiesti per Infracost o Terraform
# Per esempiu, questi puderanu esse richiesti se aduprate AWS assume-role:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Simon Boccanegra:
Scaricate è scumpressate u ultimu libru. Eseguite da u Command Prompt o Powershell usendu .\infracost.exe --no-color
à fiancu à l'altri cumandamenti / bandiere richiesti (l'output di culore hà un bug chì avemu bisognu di risolve in Windows). Tu avissi dinù spustà u schedariu exe à un cartulare chì hè in u vostru PATH
variabile di ambiente, eg C:\Windows
.
2. Get una Chjave API
U prossimu passu hè di registrà per una chjave API gratuita, chì a CLI usa per interrogà l'API di Prezzi Nuvola per i travaglii cum'è ottene prezzi per i tipi di esempiu.
Tutti i Sistemi Operativi:
registru infracostu
A chjave hè salvata in ~/.config/infracost/credentials.yml
.
3. Run Infracost
Avà site prontu à eseguisce Infracost, chì ùn face micca cambiamenti à u vostru statu Terraform o risorse di nuvola. Pudete eseguisce cù u prughjettu Terraform furnitu per pruvà.
Tutti i Sistemi Operativi:
git clone https://github.com/infracost/example-terraform.git
cd esempiu-terraform/sample1
# Ghjucate cù main.tf è ripete per paragunà i costi
infracost breakdown -path .
# Mostra a diffarenza di i costi mensili, edità u schedariu yml è ripigliate per paragunà i costi
infracost diff -path . –sync-usage-file –usage-file infracost-usage.yml
4. Aghjunghjite à CI / CD
Pudete avà aduprà Infracost Integrazioni CI/CD per aghjustà automaticamente i cumenti di dumanda di pull, chì vi mostranu differenze di stima di u costu. Questu vi furnisce ancu una rete di sicurezza, chì permette à e squadre di discutiri l'impattu di i costi di i cambiamenti cum'è parte di u so flussu di travagliu.
Lingua latina
lu infracost
CLI hà i seguenti cumandamenti principali:
breakdown
: mostra a ripartizione completa di i costidiff
: mostra a diffarenza di i costi mensili trà u statu attuale è u statu pianificatu
Aduprate un schedariu di cunfigurazione Infracost se u vostru repo hà parechji prughjetti Terraform o spazii di travagliu. I so risultati seranu cumminati in a listessa ripartizione o output diff.
Usu Avanzatu
Infracost hà ancu parechji metudi d'utilizazione avanzati chì ponu esse aduprati in più di i metudi di usu regulare. Sti metudi avanzati ponu esse usatu via un schedariu di cunfigurazione Infracost oltri.
File di Pianu Terraform
Infracost pò esse eseguitu contr'à un schedariu di u pianu Terraform, chì implica chì avete digià eseguitu Terraform init.
Infracost solu esegue Terraformshow
in stu casu, significatu ùn hà micca bisognu di credenziali cloud o --terraform-plan-flags
esse stabilitu.
cd path/to/code
terraform init
terraform plan -out tfplan.binary
infracost breakdown –path tfplan.binary
infracost diff -path tfplan.binary
Terraform State
Sè vo vulete vede u spartimentu costu di u statu Terraform currenti, tu avissi a sapiri lu infracost breakdown
cumanda hà a --terraform-use-state
bandiera, chì saria utile in stu casu. Duvete digià eseguisce Terraform apply
, cusì Infracost corre solu Terraform show
, chì ùn hà micca bisognu di credenziali cloud o --terraform-plan-flags
esse stabilitu.
infracost breakdown -path examples/terraform -terraform-use-state
Terraform State JSON File
Pudete fà coperà u infracost breakdown
contr'à un schedariu JSON di u statu Terraform. Questu seria u [formatu di output JSON] di u statu invece di a rapprisentazione interna JSON. Deve esse generatu da a corsa terraform show -json
Dentru un prughjettu Terraform, è hè soprattuttu utile s'è vo vulete vede a ripartizione di i costi di u statu Terraform attuale. In questu casu, implica chì avete digià eseguitu Terraform apply
, chì significa senza credenziali nuvola o --terraform-plan-flags
sò dumandati.
Quali Nuvole è Risorse sò Supportati?
Infracost sustene più di 200 risorse Terraform attraversu AWS, Google è Azure, mentri àutri strumenti IaC cum'è Pulumi e Formazione di nuvola sò inclusi in a roadmap. U supportu per e novi risorse hè constantemente aghjuntu, cusì hè impurtante di verificà u repo per i versioni.
cunchiusioni
Infracost hè utile strumentu per i sviluppatori, DevOps, SRE, è altri chì cercanu di vede rapidamente a ripartizione di i costi è paragunate diverse opzioni in anticipu. Hè ancu una bona scelta sè vo circate di integrà cù CI è / o bisognu di supportu per AWS è Google Cloud. Se vulete creà una cullaburazione megliu trà a vostra squadra, Infracost pò ancu aiutà in questu sensu. Tutte queste caratteristiche facenu un strumentu chì duvete cunsiderà fermamente l'implementazione per l'estimazioni di i costi di nuvola per Terraform.
Lascia un Audiolibro