ສາລະບານ[ເຊື່ອງ][ສະແດງ]
Infracost ແມ່ນສໍາຄັນສໍາລັບ DevOps, SRE, ແລະນັກພັດທະນາທີ່ຊອກຫາການຄາດຄະເນຄ່າໃຊ້ຈ່າຍໃນຄລາວສໍາລັບໂຄງການໂຄງສ້າງພື້ນຖານເຊັ່ນ Terraform. ດ້ວຍ Infracost, ທ່ານສາມາດເບິ່ງການແບ່ງຄ່າໃຊ້ຈ່າຍຢ່າງໄວວາໃນຂະນະທີ່ປຽບທຽບທາງເລືອກທີ່ແຕກຕ່າງກັນ, ເຊິ່ງຊ່ວຍນໍາໄປສູ່ຄວາມເຂົ້າໃຈທີ່ດີກວ່າກ່ອນການຕັດສິນໃຈອັນໃຫຍ່ຫຼວງ.
Infracost ເຮັດວຽກແນວໃດ?
Infracost ສາມາດກວດສອບລາຄາຫຼາຍກວ່າ 3 ລ້ານໂດຍການສະແກນລະຫັດ Terraform ຂອງເຈົ້າ, ແລະມັນຜະລິດການປະເມີນລາຄາທີ່ງ່າຍດາຍແລະງ່າຍຕໍ່ການອ່ານກ່ອນທີ່ທ່ານຈະເປີດຕົວຊັບພະຍາກອນ.
ທ່ານຍັງສາມາດໃຊ້ Infracost ເພື່ອຮູ້ວ່າສາຍຂອງລະຫັດໃດມີຜົນກະທົບຄ່າໃຊ້ຈ່າຍທີ່ໃຫຍ່ທີ່ສຸດນັບຕັ້ງແຕ່ມັນສ້າງແຜນທີ່ຄ່າໃຊ້ຈ່າຍຕໍ່ຊັບພະຍາກອນໃນຄໍາຮ້ອງຂໍການດຶງຂອງທ່ານ. ໂດຍການລວມ Infracost ເຂົ້າໄປໃນ CI / CD ຂອງທ່ານ, ທ່ານສາມາດຮ່ວມມືກັບທີມງານຂອງທ່ານແລະເປີດການສົນທະນາກ່ຽວກັບຜົນກະທົບຂອງການປ່ຽນແປງໃນຂະບວນການເຮັດວຽກທີ່ມີຢູ່ຂອງທ່ານ.
Infracost ເຮັດວຽກຜ່ານບໍລິການ backend API Cloud Pricing API ຂອງມັນ, ແລະດ້ວຍເຄື່ອງມື CLI, ທ່ານສາມາດວິເຄາະແຜນ Terraform ໃນຮູບແບບ JSON. API cross-references the individual cost of each cloud resource in use , as well as their related parameters cost based on the cloud provider .
ໂປຣແກຣມບໍ່ຈຳເປັນຕ້ອງມີຂໍ້ມູນປະຈຳຕົວເພື່ອດຳເນີນການ, ແລະມັນບໍ່ໄດ້ເຮັດການປ່ຽນແປງໃດໆຕໍ່ Terraform ຫຼືຊັບພະຍາກອນຄລາວທີ່ວິເຄາະແລ້ວ. ໂດຍການນໍາໃຊ້ການນັບຂອງປະເພດຊັບພະຍາກອນ Terraform, API ຮັບປະກັນວ່າຊັບພະຍາກອນໃຫມ່ຖືກຄິດໄລ່.
ມີສອງວິທີຕົ້ນຕໍທີ່ Infracost ສະແດງໃຫ້ເຫັນການແບ່ງຄ່າໃຊ້ຈ່າຍ:
A) ການແບ່ງຄ່າໃຊ້ຈ່າຍຢ່າງເຕັມທີ່
B) ຄວາມແຕກຕ່າງຂອງຄ່າໃຊ້ຈ່າຍປະຈໍາເດືອນລະຫວ່າງລັດປະຈຸບັນແລະແຜນການ
ການເລີ່ມຕົ້ນດ້ວຍ Infracost (ຂັ້ນຕອນໂດຍຂັ້ນຕອນ)
ປະຕິບັດຕາມຄໍາແນະນໍາຂັ້ນຕອນໂດຍຂັ້ນຕອນນີ້ເພື່ອຕິດຕັ້ງແລະເລີ່ມຕົ້ນການນໍາໃຊ້ Infracost:
1. ຕິດຕັ້ງ Infracost
ຂັ້ນຕອນທໍາອິດທີ່ຈະເລີ່ມຕົ້ນແມ່ນການຕິດຕັ້ງ Infracost, ແຕ່ທໍາອິດທ່ານຕ້ອງມີຢູ່ແລ້ວ Terraform ຕິດຕັ້ງ.
ນີ້ແມ່ນເບິ່ງສະບັບທີ່ແຕກຕ່າງກັນຂອງ Infracost:
macOS Homebrew:
brew ຕິດຕັ້ງ infracost
infracost –version # ຄວນສະແດງ v0.9.7
ຄູ່ມື macOS:
# ດາວໂຫລດ CLI ໂດຍອີງໃສ່ OS / arch ຂອງທ່ານແລະໃສ່ໃນ /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
linux:
# ດາວໂຫລດ CLI ໂດຍອີງໃສ່ OS / arch ຂອງທ່ານແລະໃສ່ໃນ /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
ທ່າເຮືອ:
docker ດຶງ infracost/infracost
docker run –rm \
-e INFRACOST_API_KEY=see_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/
# ເພີ່ມທຸງ / envs ທີ່ຕ້ອງການອື່ນໆສໍາລັບ Infracost ຫຼື Terraform
# ຕົວຢ່າງ, ສິ່ງເຫຼົ່ານີ້ອາດຈະຕ້ອງການຖ້າທ່ານໃຊ້ AWS assume-role:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Windows:
ດາວນ໌ໂຫລດແລະ unzip ໄດ້ ການປ່ອຍຕົວລ້າສຸດ. ແລ່ນມັນຈາກ Command Prompt ຫຼື Powershell ໂດຍໃຊ້ .\infracost.exe --no-color
ຄຽງຄູ່ກັບຄໍາສັ່ງ / ທຸງທີ່ຕ້ອງການອື່ນໆ (ຜົນຜະລິດສີມີຂໍ້ບົກພ່ອງທີ່ພວກເຮົາຕ້ອງການແກ້ໄຂໃນ Windows). ເຈົ້າຄວນຍ້າຍໄຟລ໌ exe ໄປທີ່ໂຟນເດີທີ່ຢູ່ໃນຂອງເຈົ້າ PATH
ຕົວແປສິ່ງແວດລ້ອມ, ຕົວຢ່າງ C:\Windows
.
2. ເອົາ API Key
ຂັ້ນຕອນຕໍ່ໄປແມ່ນການລົງທະບຽນສໍາລັບລະຫັດ API ຟຣີ, ເຊິ່ງ CLI ໃຊ້ເພື່ອສອບຖາມ Cloud Pricing API ສໍາລັບວຽກງານເຊັ່ນການໄດ້ຮັບລາຄາສໍາລັບປະເພດຕົວຢ່າງ.
ລະບົບປະຕິບັດການທັງໝົດ:
ລົງທະບຽນ infracost
ຄີໄດ້ຖືກບັນທຶກໄວ້ໃນ ~/.config/infracost/credentials.yml
.
3. ດໍາເນີນການ Infracost
ຕອນນີ້ທ່ານພ້ອມທີ່ຈະດໍາເນີນການ Infracost, ເຊິ່ງບໍ່ມີການປ່ຽນແປງໃດໆຕໍ່ກັບສະຖານະ Terraform ຫຼືຊັບພະຍາກອນຄລາວ. ທ່ານສາມາດດໍາເນີນການກັບໂຄງການ Terraform ທີ່ສະຫນອງໃຫ້ເພື່ອທົດສອບມັນອອກ.
ລະບົບປະຕິບັດການທັງໝົດ:
git clone https://github.com/infracost/example-terraform.git
cd example-terraform/sample1
# ຫຼິ້ນກັບ main.tf ແລະແລ່ນຄືນເພື່ອປຽບທຽບຄ່າໃຊ້ຈ່າຍ
ການລະອຽດຂອງພື້ນຖານໂຄງລ່າງ - ເສັ້ນທາງ.
# ສະແດງຄວາມແຕກຕ່າງຂອງຄ່າໃຊ້ຈ່າຍປະຈໍາເດືອນ, ແກ້ໄຂໄຟລ໌ yml ແລະດໍາເນີນການໃຫມ່ເພື່ອປຽບທຽບຄ່າໃຊ້ຈ່າຍ
infracost diff –path. –sync-usage-file –usage-file infracost-usage.yml
4. ເພີ່ມໃສ່ CI/CD
ໃນປັດຈຸບັນທ່ານສາມາດນໍາໃຊ້ Infracost ການເຊື່ອມໂຍງ CI/CD ເພື່ອເພີ່ມອັດຕະໂນມັດດຶງຄໍາຮ້ອງຂໍ, ເຊິ່ງສະແດງໃຫ້ທ່ານເຫັນຄວາມແຕກຕ່າງຂອງຄ່າໃຊ້ຈ່າຍ. ອັນນີ້ຍັງຈະສະໜອງລະບົບນິລະໄພໃຫ້ທ່ານໄດ້, ເຊິ່ງເຮັດໃຫ້ທີມງານສາມາດປຶກສາຫາລືກ່ຽວກັບຜົນກະທົບຂອງການປ່ຽນແປງທີ່ເປັນສ່ວນໜຶ່ງຂອງຂະບວນການເຮັດວຽກຂອງເຂົາເຈົ້າ.
ການນໍາໃຊ້
ໄດ້ infracost
CLI ມີຄໍາສັ່ງຕົ້ນຕໍດັ່ງຕໍ່ໄປນີ້:
breakdown
: ສະແດງໃຫ້ເຫັນການແບ່ງຂັ້ນເຕັມຂອງຄ່າໃຊ້ຈ່າຍdiff
: ສະແດງຄວາມແຕກຕ່າງຂອງຄ່າໃຊ້ຈ່າຍລາຍເດືອນລະຫວ່າງລັດປັດຈຸບັນ ແລະແຜນການ
ໃຊ້ໄຟລ໌ config Infracost ຖ້າ repo ຂອງທ່ານມີຫຼາຍໂຄງການ Terraform ຫຼືພື້ນທີ່ເຮັດວຽກ. ຜົນໄດ້ຮັບຂອງເຂົາເຈົ້າຈະໄດ້ຮັບການລວມເຂົ້າໃນການແບ່ງປັນດຽວກັນຫຼືຜົນຜະລິດທີ່ແຕກຕ່າງກັນ.
ການນໍາໃຊ້ຂັ້ນສູງ
Infracost ຍັງມີວິທີການນໍາໃຊ້ແບບພິເສດທີ່ສາມາດນໍາໃຊ້ໄດ້ນອກເຫນືອຈາກວິທີການນໍາໃຊ້ປົກກະຕິ. ວິທີການຂັ້ນສູງເຫຼົ່ານີ້ສາມາດຖືກນໍາໃຊ້ໂດຍຜ່ານໄຟລ໌ config Infracost ເຊັ່ນດຽວກັນ.
ໄຟລ໌ແຜນ Terraform
Infracost ສາມາດດໍາເນີນການຕໍ່ກັບໄຟລ໌ແຜນ Terraform, ເຊິ່ງຫມາຍຄວາມວ່າທ່ານໄດ້ດໍາເນີນການ Terraform ແລ້ວ init.
Infracost ພຽງແຕ່ດໍາເນີນການ Terraformshow
ໃນກໍລະນີນີ້, ຊຶ່ງຫມາຍຄວາມວ່າມັນບໍ່ໄດ້ຮຽກຮ້ອງໃຫ້ມີການຢັ້ງຢືນຟັງຫຼື --terraform-plan-flags
ທີ່ຈະໄດ້ຮັບການກໍານົດ.
cd path/to/code
terraform init
ແຜນການ terraform -out tfplan.binary
ການແບ່ງຂັ້ນພື້ນຖານ -path tfplan.binary
infracost diff –path tfplan.binary
ລັດ Terraform
ຖ້າຫາກວ່າທ່ານຕ້ອງການທີ່ຈະເບິ່ງການແບ່ງປັນຄ່າໃຊ້ຈ່າຍຂອງລັດ Terraform ໃນປະຈຸບັນ, ທ່ານຄວນຈະຮູ້ວ່າ infracost breakdown
ຄໍາສັ່ງມີ a --terraform-use-state
ທຸງ, ຊຶ່ງຈະພິສູດທີ່ເປັນປະໂຫຍດໃນກໍລະນີນີ້. ທ່ານຕ້ອງແລ່ນ Terraform ແລ້ວ apply
, ດັ່ງນັ້ນ Infracost ພຽງແຕ່ດໍາເນີນການ Terraform show
, ເຊິ່ງບໍ່ຕ້ອງການຂໍ້ມູນປະຈໍາຕົວຂອງຄລາວຫຼື --terraform-plan-flags
ທີ່ຈະໄດ້ຮັບການກໍານົດ.
ການແບ່ງຂັ້ນພື້ນຖານ - ຕົວຢ່າງເສັ້ນທາງ / terraform -terraform-use-state
ໄຟລ໌ JSON State Terraform
ທ່ານສາມາດດໍາເນີນການໄດ້ infracost breakdown
ຕໍ່ກັບໄຟລ໌ JSON ຂອງລັດ Terraform. ອັນນີ້ຈະເປັນ [ຮູບແບບຜົນຜະລິດ JSON] ຂອງສະຖານະແທນທີ່ຈະເປັນຕົວແທນ JSON ພາຍໃນ. ມັນຕ້ອງໄດ້ຮັບການສ້າງຂຶ້ນໂດຍການແລ່ນ terraform show -json
ພາຍໃນໂຄງການ Terraform, ແລະມັນເປັນປະໂຫຍດໂດຍສະເພາະຖ້າທ່ານຕ້ອງການເບິ່ງການແບ່ງສ່ວນຄ່າໃຊ້ຈ່າຍຂອງສະຖານະ Terraform ໃນປັດຈຸບັນ. ໃນກໍລະນີນີ້, ມັນຫມາຍຄວາມວ່າທ່ານໃຊ້ Terraform ແລ້ວ apply
, ຫມາຍຄວາມວ່າບໍ່ມີຂໍ້ມູນປະຈໍາຕົວຂອງຟັງຫຼື --terraform-plan-flags
ແມ່ນຕ້ອງການ.
Clouds ແລະຊັບພະຍາກອນໃດໄດ້ຮັບການສະຫນັບສະຫນູນ?
Infracost ສະຫນັບສະຫນູນຫຼາຍກ່ວາ 200 ຊັບພະຍາກອນ Terraform ໃນທົ່ວ AWS, Google, ແລະ Azure, ໃນຂະນະທີ່ເຄື່ອງມື IaC ອື່ນໆເຊັ່ນ ປູລູມີ ແລະ Cloudformation ແມ່ນລວມຢູ່ໃນແຜນທີ່ເສັ້ນທາງ. ການສະຫນັບສະຫນູນຊັບພະຍາກອນໃຫມ່ແມ່ນໄດ້ຖືກເພີ່ມຢ່າງຕໍ່ເນື່ອງ, ສະນັ້ນມັນເປັນສິ່ງສໍາຄັນທີ່ຈະກວດເບິ່ງ repo ສໍາລັບການປ່ອຍ.
ສະຫຼຸບ
Infracost ແມ່ນເປັນປະໂຫຍດ ເຄື່ອງມືສໍາລັບການພັດທະນາ, DevOps, SRE, ແລະອື່ນໆທີ່ຊອກຫາຢ່າງໄວວາເບິ່ງການແບ່ງສ່ວນຄ່າໃຊ້ຈ່າຍແລະປຽບທຽບທາງເລືອກທີ່ແຕກຕ່າງກັນລ່ວງຫນ້າ. ມັນຍັງເປັນທາງເລືອກທີ່ດີຖ້າທ່ານກໍາລັງຊອກຫາການເຊື່ອມໂຍງມັນກັບ CI ແລະ / ຫຼືຕ້ອງການການສະຫນັບສະຫນູນສໍາລັບ AWS ແລະ Google Cloud. ຖ້າທ່ານຕ້ອງການສ້າງການຮ່ວມມືທີ່ດີຂຶ້ນລະຫວ່າງທີມງານຂອງທ່ານ, Infracost ກໍ່ສາມາດຊ່ວຍໃນເລື່ອງນັ້ນໄດ້. ລັກສະນະເຫຼົ່ານີ້ທັງຫມົດເຮັດໃຫ້ມັນເປັນເຄື່ອງມືທີ່ທ່ານຄວນພິຈາລະນາຢ່າງແຂງແຮງໃນການປະຕິບັດສໍາລັບການຄາດຄະເນຄ່າໃຊ້ຈ່າຍໃນເມຄສໍາລັບ Terraform.
ອອກຈາກ Reply ເປັນ