Orodha ya Yaliyomo[Ficha][Onyesha]
Infracost ni muhimu kwa DevOps, SRE, na wasanidi wanaotafuta kukadiria gharama za wingu kwa miradi ya miundomsingi kama vile Terraform. Ukiwa na Infracost, unaweza kuona kwa haraka uchanganuzi wa gharama huku ukilinganisha chaguo tofauti, ambayo husaidia kupata maarifa bora kabla ya uamuzi mkubwa.
Je, Infracost Inafanyaje Kazi?
Infracost inaweza kuangalia zaidi ya bei milioni 3 kwa kuchanganua msimbo wako wa Terraform, na hutoa makadirio ya gharama rahisi na rahisi kusoma kabla ya kuzindua rasilimali.
Unaweza pia kutumia Infracost kujua ni njia zipi za msimbo ambazo zina athari kubwa zaidi ya gharama kwa kuwa huonyesha gharama kwenye rasilimali katika maombi yako ya kuvuta. Kwa kujumuisha Infracost kwenye CI/CD yako, unaweza kushirikiana na timu yako na kuwezesha majadiliano kuhusu athari za mabadiliko katika mtiririko wako wa kazi uliopo.
Infracost hufanya kazi kupitia huduma yake ya nyuma ya API ya Bei ya Wingu, na kwa zana ya CLI, unaweza kuchanganua mpango wa Terraform katika umbizo la JSON. API hurejelea gharama mahususi ya kila rasilimali ya wingu inayotumika, pamoja na vigezo vyake vinavyohusiana kulingana na mtoa huduma wa mtandao.
Mpango huu hauhitaji kitambulisho chochote ili kufanya kazi, na haufanyi mabadiliko yoyote kwa Terraform au rasilimali za wingu zilizochanganuliwa. Kwa kutumia hesabu ya aina za rasilimali za Terraform, API inahakikisha kuwa rasilimali mpya zinahesabiwa.
Kuna njia kuu mbili za Infracost inaonyesha uchanganuzi wa gharama:
A) Uchanganuzi Kamili wa Gharama
B) Tofauti ya Gharama za Kila Mwezi Kati ya Nchi ya Sasa na Iliyopangwa
Kuanza na Infracost (Hatua kwa Hatua)
Fuata mwongozo huu wa hatua kwa hatua ili kusakinisha na kuanza kutumia Infracost:
1. Weka Infracost
Hatua ya kwanza ya kuanza ni kusakinisha Infracost, lakini lazima kwanza uwe nayo Terraform imewekwa.
Hapa kuna mwonekano wa matoleo tofauti ya Infracost:
MacOS Homebrew:
brew kufunga infracost
infracost -toleo # Inapaswa kuonyesha v0.9.7
Mwongozo wa macOS:
# Inapakua CLI kulingana na OS/arch yako na kuiweka ndani /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
Linux:
# Inapakua CLI kulingana na OS/arch yako na kuiweka ndani /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
Doksi:
docker kuvuta infracost/infracost
docker run -rm \
-e INFRACOST_API_KEY=angalia_following_step_on_how_to_get_hii \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-v $PWD/:/code/ infracost/infracost uchanganuzi -njia /code/
# Ongeza bendera/envs zingine zinazohitajika kwa Infracost au Terraform
# Kwa mfano, hizi zinaweza kuhitajika ikiwa unatumia jukumu la kudhani la AWS:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Windows:
Pakua na ufungue faili ya kutolewa hivi karibuni. Iendeshe kutoka kwa Amri Prompt au Powershell ukitumia .\infracost.exe --no-color
kando ya amri/bendera zingine zinazohitajika (matokeo ya rangi yana hitilafu tunayohitaji kurekebisha kwenye Windows). Unapaswa pia kuhamisha faili ya exe kwenye folda iliyo kwenye yako PATH
mazingira ya kutofautiana, kwa mfano C:\Windows
.
2. Pata Ufunguo wa API
Hatua inayofuata ni kujiandikisha kwa ufunguo wa API usiolipishwa, ambao CLI hutumia kuuliza API ya Bei ya Wingu kwa kazi kama vile kupata bei kwa aina za mifano.
Mifumo yote ya Uendeshaji:
rejista ya infracost
Ufunguo umehifadhiwa ndani ~/.config/infracost/credentials.yml
.
3. Run Infracost
Sasa uko tayari kuendesha Infracost, ambayo haifanyi mabadiliko yoyote kwenye hali yako ya Terraform au rasilimali za wingu. Unaweza kuiendesha kwa kutumia mradi uliotolewa wa Terraform ili kuujaribu.
Mifumo yote ya Uendeshaji:
git clone https://github.com/infracost/example-terraform.git
cd mfano-terraform/sampuli1
# Cheza na main.tf na ukimbie tena ili kulinganisha gharama
kuvunjika kwa infracost -njia .
# Onyesha tofauti za gharama za kila mwezi, hariri faili ya yml na uendesha tena ili kulinganisha gharama
infracost diff -njia . -sync-matumizi-faili -tumia-faili infracost-usage.yml
4. Ongeza kwenye CI/CD
Sasa unaweza kutumia Infracost's Miunganisho ya CI/CD ili kuongeza maoni ya ombi la kuvuta kiotomatiki, ambayo yanaonyesha tofauti za makadirio ya gharama. Hili pia litakupa mtandao wa usalama, kuwezesha timu kujadili athari ya gharama ya mabadiliko kama sehemu ya utendakazi wao.
Matumizi
The infracost
CLI ina amri kuu zifuatazo:
breakdown
: Onyesha mchanganuo kamili wa gharamadiff
: onyesha tofauti ya gharama za kila mwezi kati ya hali ya sasa na iliyopangwa
Tumia faili ya usanidi ya Infracost ikiwa repo yako ina miradi au nafasi za kazi nyingi za Terraform. Matokeo yao yataunganishwa kuwa mgawanyiko sawa au matokeo tofauti.
Matumizi ya hali ya juu
Infracost pia ina mbinu mbalimbali za matumizi ya hali ya juu ambazo zinaweza kutumika pamoja na mbinu za matumizi ya kawaida. Mbinu hizi za kina zinaweza kutumika kupitia faili ya usanidi ya Infracost pia.
Faili ya Mpango wa Terraform
Infracost inaweza kuendeshwa dhidi ya faili ya mpango ya Terraform, ambayo inamaanisha kuwa tayari umetumia Terraform init.
Infracost inaendesha Terraform tushow
katika kesi hii, maana yake hauhitaji sifa za wingu au --terraform-plan-flags
kuweka.
cd njia/to/code
terraform init
mpango wa terraform -out tfplan.binary
kuvunjika kwa infracost -njia tfplan.binary
infracost diff -njia tfplan.binary
Jimbo la Terraform
Ikiwa unataka kuona uchanganuzi wa gharama ya hali ya sasa ya Terraform, unapaswa kujua infracost breakdown
amri ina a --terraform-use-state
bendera, ambayo inaweza kuwa muhimu katika kesi hii. Lazima tayari uendeshe Terraform apply
, kwa hivyo Infracost inaendesha Terraform tu show
, ambayo haihitaji sifa za wingu au --terraform-plan-flags
kuweka.
uchanganuzi wa infracost -mifano ya njia/terraform -terraform-use-state
Faili ya JSON ya Jimbo la Terraform
Unaweza kukimbia infracost breakdown
dhidi ya faili ya JSON ya jimbo la Terraform. Hii inaweza kuwa [umbizo la towe la JSON] la hali badala ya uwakilishi wa ndani wa JSON. Lazima itolewe kwa kukimbia terraform show -json
ndani ya mradi wa Terraform, na ni muhimu sana ikiwa unataka kuona uchanganuzi wa gharama ya hali ya sasa ya Terraform. Katika kesi hii, inamaanisha kuwa tayari unaendesha Terraform apply
, kumaanisha hakuna sifa za wingu au --terraform-plan-flags
wanahitajika.
Ni Clouds na Rasilimali zipi Zinatumika?
Infracost inasaidia zaidi ya Rasilimali 200 za Terraform kote AWS, Google, na Azure, huku zana zingine za IaC zinapenda Pulumi na Cloudformation zimejumuishwa kwenye ramani ya barabara. Usaidizi wa rasilimali mpya unaongezwa kila wakati, kwa hivyo ni muhimu kuangalia repo kwa matoleo.
Hitimisho
Infracost ni msaada chombo kwa watengenezaji, DevOps, SRE, na wengine wanaotafuta kuona kwa haraka uchanganuzi wa gharama na kulinganisha chaguo tofauti mapema. Pia ni chaguo zuri ikiwa unatafuta kuiunganisha na CI na/au unahitaji usaidizi kwa AWS na Google Cloud. Ikiwa ungependa kuunda ushirikiano bora kati ya timu yako, Infracost pia inaweza kusaidia katika suala hilo. Vipengele hivi vyote huifanya kuwa zana ambayo unapaswa kuzingatia sana kutekeleza kwa makadirio ya gharama ya wingu kwa Terraform.
Acha Reply