Sisukord[Peida][Näita]
Infracost on oluline DevOpsile, SRE-le ja arendajatele, kes soovivad hinnata infrastruktuuri kui koodi projektide, näiteks Terraformi, pilvekulusid. Infracostiga näete kiiresti kulude jaotust, samal ajal kui võrrelda erinevaid võimalusi, mis aitab enne suure otsuse tegemist parema ülevaate saada.
Kuidas Infracost töötab?
Infracost saab kontrollida üle 3 miljoni hinna, skannides teie Terraformi koodi, ning koostab enne ressursside käivitamist lihtsa ja hõlpsasti loetava kuluprognoosi.
Saate kasutada ka Infracosti, et teada saada, millistel koodiridadel on suurim mõju kuludele, kuna see kaardistab kulud teie tõmbamistaotlustes ressurssidega. Integreerides Infracosti oma CI/CD-sse, saate oma meeskonnaga koostööd teha ja võimaldada arutelusid olemasoleva töövoo muudatuste mõju üle.
Infracost töötab oma Cloud Pricing API taustateenuse kaudu ja CLI tööriista abil saate Terraformi plaani JSON-vormingus sõeluda. API ristviide viitab iga kasutatava pilveressursi individuaalsele maksumusele ja pilveteenuse pakkujal põhinevatele seotud kuluparameetritele.
Programm ei vaja töötamiseks mandaate ja see ei muuda Terraformi ega analüüsitud pilveressursse. Terraformi ressursitüüpide loendust kasutades tagab API uute ressursside arvestamise.
Infracost näitab kulude jaotust kahel peamisel viisil:
A) Täielik kulude jaotus
B) Igakuiste kulude erinevus praeguse ja kavandatud seisukorra vahel
Infracostiga alustamine (samm-sammult)
Infracosti installimiseks ja kasutamise alustamiseks järgige seda samm-sammult juhendit.
1. Installige Infracost
Esimene samm alustamiseks on Infracosti installimine, kuid kõigepealt peab see juba olema Terraform paigaldatud.
Siin on ülevaade Infracosti erinevatest versioonidest:
macOS Homebrew:
brew install infracost
infracost –versioon # Peaks näitama v0.9.7
macOS-i kasutusjuhend:
# Laadib teie OS/arch alusel alla CLI ja paneb selle kausta /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
Linux:
# Laadib teie OS/arch alusel alla CLI ja paneb selle kausta /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=vaata_järgmist_sammu_kuidas_selle_ hankida \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-v $PWD/:/kood/ infrakulu/infrakulu jaotus –tee /kood/
# Lisage Infracosti või Terraformi jaoks muud nõutavad lipud/ümbrised
# Näiteks võivad need olla vajalikud, kui kasutate AWS-i oletusrolli:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Windows:
Laadige alla ja pakkige viimane versioon. Käivitage see käsurealt või Powershelli kasutades .\infracost.exe --no-color
muude nõutavate käskude/lippude kõrval (värviväljundis on viga, mille peame Windowsis parandama). Samuti peaksite exe-faili teisaldama teie kausta PATH
keskkonnamuutuja, nt C:\Windows
.
2. Hankige API võti
Järgmine samm on registreerida tasuta API-võti, mida CLI kasutab Cloud Pricing API-lt päringu tegemiseks selliste toimingute jaoks nagu eksemplaritüüpide hindade hankimine.
Kõik operatsioonisüsteemid:
infrakulude register
Võti on salvestatud ~/.config/infracost/credentials.yml
.
3. Käivitage Infracost
Nüüd olete valmis Infracosti käitamiseks, mis ei muuda teie Terraformi olekut ega pilveressursse. Testimiseks saate seda käivitada kaasasoleva Terraformi projektiga.
Kõik operatsioonisüsteemid:
git kloon https://github.com/infracost/example-terraform.git
cd näide-terraform/näidis1
# Mängige saidiga main.tf ja käivitage kulude võrdlemiseks uuesti
infrakulude jaotus – tee .
# Kuvage igakuiste kulude erinevus, muutke yml-faili ja käivitage kulude võrdlemiseks uuesti
infrakulu diff –tee . –sünkroonimis-kasutusfail –kasutusfail infracost-usage.yml
4. Lisage CI-le/CD-le
Nüüd saate kasutada Infracosti CI/CD integratsioonid tõmbetaotluse kommentaaride automaatseks lisamiseks, mis näitavad teile kuluprognoosi erinevusi. See annab teile ka turvavõrgu, mis võimaldab meeskondadel arutada oma töövoo käigus muudatuste mõju kuludele.
Kasutus
. infracost
CLI-l on järgmised peamised käsud:
breakdown
: kuvage kulude täielik jaotusdiff
: näitab igakuiste kulude erinevust praeguse ja kavandatud oleku vahel
Kasutage Infracosti konfiguratsioonifaili, kui teie repos on mitu Terraformi projekti või tööruumi. Nende tulemused kombineeritakse samaks jaotus- või diferentsiaalväljundiks.
Täpsem kasutamine
Infracostil on ka erinevad täiustatud kasutusmeetodid, mida saab kasutada lisaks tavakasutusmeetoditele. Neid täiustatud meetodeid saab kasutada ka Infracosti konfiguratsioonifaili kaudu.
Terraformi plaani fail
Infracosti saab käivitada Terraformi plaanifaili alusel, mis tähendab, et olete Terraformi juba käivitanud init.
Infracost jookseb lihtsalt Terraformishow
antud juhul, mis tähendab, et see ei nõua pilvmandaate ega --terraform-plan-flags
seada.
cd tee/to/kood
terraform init
terraform plan -out tfplan.binary
infrakulude jaotus – tee tfplan.binary
infracost diff –tee tfplan.binary
Terraformi olek
Kui soovite näha Terraformi praeguse oleku kulude jaotust, peaksite teadma infracost breakdown
käsul on a --terraform-use-state
lipp, mis oleks sel juhul kasulik. Peate juba Terraformi käivitama apply
, nii et Infracost jookseb lihtsalt Terraformi show
, mis ei nõua pilvmandaate ega --terraform-plan-flags
seada.
infrakulude jaotus –tee näited/terraform –terraformi kasutusolek
Terraform State JSON-fail
Sa võid käivitada infracost breakdown
Terraformi oleku JSON-faili vastu. See oleks sisemise JSON-i esituse asemel oleku [JSON-i väljundvorming]. See tuleb genereerida jooksmise teel terraform show -json
Terraformi projekti sees ja see on eriti kasulik, kui soovite näha Terraformi praeguse oleku kulude jaotust. Sel juhul tähendab see, et kasutate juba Terraformi apply
, mis tähendab pilvmandaadi puudumist või --terraform-plan-flags
on vaja.
Milliseid pilvi ja ressursse toetatakse?
Infracost toetab rohkem kui 200 Terraformi ressursse AWS-is, Google'is ja Azure'is, samas kui teised IaC-tööriistad nagu Pulumi ja Pilvede moodustumine on teekaardile lisatud. Uute ressursside tuge lisatakse pidevalt, seega on oluline kontrollida väljalasete reposid.
Järeldus
Infracost on abiks tööriist arendajatele, DevOps, SRE ja teised, kes soovivad kiiresti näha kulude jaotust ja võrrelda erinevaid võimalusi eelnevalt. See on ka hea valik, kui soovite seda CI-ga integreerida ja/või vajate AWS-i ja Google Cloudi tuge. Kui soovite oma meeskonna vahel paremat koostööd luua, saab selles osas abiks olla ka Infracost. Kõik need funktsioonid muudavad selle tööriistaks, mille rakendamist peaksite tõsiselt kaaluma Terraformi pilvekulude prognooside jaoks.
Jäta vastus