Tafole ea likateng[Pata][Bontša]
Infracost e bohlokoa bakeng sa DevOps, SRE, le bahlahisi ba batlang ho hakanya litšenyehelo tsa maru bakeng sa merero ea litšebeletso tsa motheo tse kang Terraform. Ka Infracost, o ka bona ka potlako ho senyeha ha litšenyehelo ha o ntse o bapisa likhetho tse fapaneng, tse thusang ho lebisa kutloisisong e ntle pele ho qeto e kholo.
Infracost e sebetsa joang?
Infracost e ka sheba litheko tse fetang limilione tse 3 ka ho skena khoutu ea hau ea Terraform, 'me e hlahisa khakanyo ea litšenyehelo e bonolo le e balehang habonolo pele o qala lisebelisoa.
U ka boela ua sebelisa Infracost ho tseba hore na ke mela efe ea likhoutu e nang le litlamorao tse kholo ka ho fetesisa kaha e bonts'a litšenyehelo ho lisebelisoa ho likopo tsa hau tsa ho hula. Ka ho kenyelletsa Infracost ho CI/CD ea hau, o ka sebelisana 'moho le sehlopha sa hau mme oa nolofalletsa lipuisano mabapi le phello ea liphetoho tšebetsong ea hau e teng.
Infracost e sebetsa ka ts'ebeletso ea eona ea morao-rao ea Litefiso tsa Cloud API, 'me ka sesebelisoa sa CLI, u ka khona ho hlalosa moralo oa Terraform ka sebopeho sa JSON. Litšupiso tsa API li bonts'a litšenyehelo tsa motho ka mong tsa mohloli o mong le o mong oa leru o sebelisoang, hammoho le litekanyetso tse amanang le tsona tse ipapisitseng le mofani oa maru.
Lenaneo ha le hloke mangolo a bopaki ho sebetsa, 'me ha le etse liphetoho ho Terraform kapa mehloling ea maru e hlahlobiloeng. Ka ho sebelisa palo ea mefuta ea lisebelisoa tsa Terraform, API e netefatsa hore lisebelisoa tse ncha lia tlalehoa.
Ho na le mekhoa e 'meli ea mantlha ea Infracost e bonts'ang karohano ea litšenyehelo:
A) Karohano e Feletseng ea Litšenyehelo
B) Phapang ea Litšenyehelo tsa Khoeli Pakeng Tsa Naha ea Hona Joale le e Reriloeng
Ho qala ka Infracost (Mohato ka Mohato)
Latela tataiso ena ea mohato ka mohato ho kenya le ho qala ho sebelisa Infracost:
1. Kenya Infracost
Mohato oa pele oa ho qala ke ho kenya Infracost, empa u tlameha ho qala ho ba le eona Terraform kenya.
Mona ke ho sheba mefuta e fapaneng ea Infracost:
MacOS Homebrew:
brew kenya infracost
infracost -version # E lokela ho bonts'a v0.9.7
buka ea macOS:
# Khoasolla CLI e ipapisitse le OS/arch ea hau ebe e e kenya ho /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
Linux:
# Khoasolla CLI e ipapisitse le OS/arch ea hau ebe e e kenya ho /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
Docker:
docker hula infracost/infracost
docker run -rm \
-e INFRACOST_API_KEY=bona_ho latela_mohato_ho_hoka_ho fumana_sena \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-v $PWD/:/code/ ho senyeha ha infracost/infracost –tsela/khoutu/
# Kenya lifolakha / li-env tse ling tse hlokahalang bakeng sa Infracost kapa Terraform
# Mohlala, tsena li ka hlokoa haeba u sebelisa AWS e nkang karolo:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Windows:
Khoasolla le ho notlolla file ea tlhahiso ea morao tjena. E matha ho tloha ho Command Prompt kapa Powershell u sebelisa .\infracost.exe --no-color
haufi le litaelo / lifolakha tse ling tse hlokahalang (sephetho sa mebala se na le kokoana eo re hlokang ho e lokisa ho Windows). U lokela hape ho tsamaisa faele ea exe foldareng e ka har'a hau PATH
Phetoho ea tikoloho, mohlala C:\Windows
.
2. Fumana Senotlolo sa API
Mohato o latelang ke ho ingolisa bakeng sa senotlolo sa API sa mahala, seo CLI e se sebelisang ho botsa Cloud Pricing API bakeng sa mesebetsi e kang ho fumana litheko tsa mohlala mefuta.
Litsamaiso tsohle tsa ts'ebetso:
rekoto ea infracost
Senotlolo se bolokoa ho ~/.config/infracost/credentials.yml
.
3. Matha Infracost
Joale u se u itokiselitse ho tsamaisa Infracost, e sa etse liphetoho leha e le life sebakeng sa hau sa Terraform kapa mehloli ea maru. U ka e tsamaisa ka projeke e fanoeng ea Terraform ho e leka.
Litsamaiso tsohle tsa ts'ebetso:
git clone https://github.com/infracost/example-terraform.git
cd mohlala-terraform/sample1
# Bapala ka main.tf 'me u mathe hape ho bapisa litšenyehelo
ho senyeha ha infracost - tsela .
# Bontša phapang ea litšenyehelo tsa khoeli le khoeli, hlophisa faele ea yml 'me u mathe hape ho bapisa litšenyehelo
infracost diff –path . -sync-usage-file -usage-file infracost-usage.yml
4. Eketsa ho CI / CD
Hona joale o ka sebelisa Infracost's Likopano tsa CI / CD ho kenya litlatsetso tsa kopo ka bo eona, tse u bonts'ang likhakanyo tsa likhakanyo tse fapaneng. Sena se tla boela se u fe sebaka sa polokeho, se nolofalletsang lihlopha ho buisana ka phello ea litšenyehelo tsa liphetoho e le karolo ea mosebetsi oa bona.
tšebeliso
The infracost
CLI e na le litaelo tse ka sehloohong tse latelang:
breakdown
: bonts'a karohano e felletseng ea litšenyehelodiff
: bontša phapang ea litšenyehelo tsa khoeli le khoeli lipakeng tsa naha ea hajoale le e reriloeng
Sebelisa faele ea infracost config haeba repo ea hau e na le merero e mengata ea Terraform kapa libaka tsa mosebetsi. Liphetho tsa bona li tla kopanngoa hore e be sephetho se tšoanang kapa se fapaneng.
Ts'ebeliso e tsoetseng pele
Infracost e boetse e na le mekhoa e fapaneng ea ts'ebeliso e tsoetseng pele e ka sebelisoang ho kenyelletsa mekhoa e tloaelehileng ea ts'ebeliso. Mekhoa ena e tsoetseng pele e ka sebelisoa ka faele ea Infracost config hape.
Faele ea Moralo oa Terraform
Infracost e ka tsamaisoa khahlano le faele ea moralo oa Terraform, e bolelang hore o se o ntse o tsamaisa Terraform init.
Infracost e sebetsa feela Terraformshow
tabeng ena, ho bolelang hore ha e hloke mangolo a maru kapa --terraform-plan-flags
ho behoa.
cd tsela/to/code
terraform init
moralo oa terraform -tsoa tfplan.binary
ho senyeha ha infracost - tsela tfplan.binary
infracost diff -tsela tfplan.binary
Naha ea Terraform
Haeba u batla ho bona ho senyeha ha litšenyehelo tsa boemo ba hona joale ba Terraform, u lokela ho tseba infracost breakdown
taelo e na le --terraform-use-state
folakha, e neng e tla ipaka e le molemo tabeng ena. O tlameha hore o se o ntse o tsamaisa Terraform apply
, kahoo Infracost e sebetsa feela Terraform show
, e sa hlokeng mangolo a maru kapa --terraform-plan-flags
ho behoa.
ho senyeha ha infracost -path mehlala/terraform -terraform-use-state
Faele ea JSON ea Terraform State
O ka e matha infracost breakdown
khahlano le faele ea JSON ea Terraform state. Ena e tla ba [sebopeho sa JSON output] sa naha ho fapana le semelo sa kahare sa JSON. E tlameha ho hlahisoa ka ho matha terraform show -json
ka hare ho projeke ea Terraform, 'me e bohlokoa haholo haeba u batla ho bona ho putlama ha litšenyehelo tsa boemo ba hajoale ba Terraform. Tabeng ena, ho bolela hore o se o ntse o tsamaisa Terraform apply
, ho bolelang hore ha ho mangolo a maru kapa --terraform-plan-flags
ho hlokahala.
Ke Maru le Mehloli afe a Tšehetsoeng?
Infracost e tšehetsa ho feta Lisebelisoa tsa 200 tsa Terraform ho pholletsa le AWS, Google, le Azure, ha lisebelisoa tse ling tsa IaC li rata Pulumi 'me Cloudformation li kenyelelitsoe 'mapeng oa litsela. Tšehetso ea lisebelisoa tse ncha e lula e eketsoa, ka hona ho bohlokoa ho hlahloba repo bakeng sa litokollo.
fihlela qeto e
Infracost e na le thuso sesebelisoa bakeng sa bahlahisi, DevOps, SRE, le ba bang ba batla ho bona ka potlako ho senyeha ha litšenyehelo le ho bapisa likhetho tse fapaneng ka pele. Hape ke khetho e ntle haeba u batla ho e kopanya le CI le/kapa u hloka tšehetso bakeng sa AWS le Google Cloud. Haeba u batla ho theha tšebelisano e ntle lipakeng tsa sehlopha sa hau, Infracost le eona e ka thusa ntlheng eo. Likarolo tsena kaofela li e etsa sesebelisoa seo u lokelang ho nahana ka matla ho se sebelisa bakeng sa likhakanyo tsa litšenyehelo tsa maru bakeng sa Terraform.
Leave a Reply