Содржина[Крие][Прикажи]
Infracost е важен за DevOps, SRE и програмерите кои сакаат да ги проценат трошоците за облак за проектите за инфраструктура како код, како што е Terraform. Со Infracost, можете брзо да видите расчленување на трошоците додека споредувате различни опции, што помага да се доведе до подобар увид пред голема одлука.
Како работи Infracost?
Infracost може да провери над 3 милиони цени со скенирање на вашиот Terraform код и произведува едноставна и лесна за читање проценка на трошоците пред да започнете ресурси.
Можете исто така да го користите Infracost за да знаете кои линии на код имаат најголемо влијание врз трошоците бидејќи ги пресликува трошоците за ресурси во вашите барања за повлекување. Со интегрирање на Infracost во вашиот CI/CD, можете да соработувате со вашиот тим и да овозможите дискусии за влијанието на промените во вашиот постоечки работен тек.
Infracost работи преку својата заднина услуга Cloud Pricing API, а со алатката CLI, можете да анализирате план на Terraform во JSON формат. API-то ги упатува поединечните трошоци за секој ресурс на облак што се користи, како и нивните поврзани параметри на трошоците врз основа на давателот на облакот.
Програмата не бара никакви ингеренции за да работи и не прави никакви измени на Terraform или на анализираните ресурси на облак. Со користење на бројот на типови ресурси на Terraform, API-то осигурува дека се евидентирани новите ресурси.
Постојат два главни начини на кои Infracost го прикажува расчленувањето на трошоците:
А) Целосна распределба на трошоците
Б) Разлика на месечните трошоци помеѓу тековната и планираната состојба
Започнување со Infracost (чекор-по-чекор)
Следете го ова упатство чекор-по-чекор за да инсталирате и започнете со користење на Infracost:
1. Инсталирајте Infracost
Првиот чекор за да започнете е да инсталирате Infracost, но прво мора веќе да го имате Terraform инсталиран.
Еве еден поглед на различните верзии на Infracost:
macOS Homebrew:
пијалак инсталирате infracost
infracost – верзија # Треба да се прикаже v0.9.7
Прирачник за macOS:
# Презема CLI врз основа на вашиот OS/arch и го става во /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | ш
Linux:
# Презема CLI врз основа на вашиот OS/arch и го става во /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | ш
Докер:
docker pull 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 дефект – path /code/
# Додадете други потребни знамиња/записи за Infracost или Terraform
# На пример, овие може да бидат потребни ако користите AWS претпоставена улога:
# -е AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Прозорци:
Преземете и отпакувајте го најновото издание. Стартувај го од Command Prompt или Powershell користејќи .\infracost.exe --no-color
заедно со другите потребни команди/знамиња (излезот во боја има грешка што треба да ја поправиме на Windows). Исто така, треба да ја преместите датотеката exe во папка што е во вашата PATH
променлива на животната средина, на пр C:\Windows
.
2. Земете API клуч
Следниот чекор е да се регистрирате за бесплатен API клуч, кој CLI го користи за да побара од Cloud Pricing API за задачи како што се добивање цени за типови на пример.
Сите оперативни системи:
регистар на инфраст
Клучот е зачуван во ~/.config/infracost/credentials.yml
.
3. Стартувај Infracost
Сега сте подготвени да извршите Infracost, кој не прави никакви промени во вашата состојба на Terraform или ресурсите на облакот. Можете да го извршите со обезбедениот проект Terraform за да го тестирате.
Сите оперативни системи:
git клон https://github.com/infracost/example-terraform.git
cd пример-terraform/sample1
# Играјте со main.tf и повторно стартувајте за да ги споредите трошоците
Инфракост дефект – патека .
# Покажете ги разликите во месечните трошоци, уредете ја датотеката yml и повторно стартувајте за да ги споредите трошоците
infracost diff – path . –sync-usage-file –usage-file infracost-usage.yml
4. Додај во CI/CD
Сега можете да го користите Infracost's CI/CD интеграции за автоматско додавање коментари за барање за повлекување, кои ви покажуваат разлики во проценката на трошоците. Ова исто така ќе ви обезбеди безбедносна мрежа, овозможувајќи им на тимовите да разговараат за влијанието на трошоците на промените како дел од нивниот работен тек.
користење
на infracost
CLI ги има следните главни команди:
breakdown
: прикажете целосна анализа на трошоцитеdiff
: прикажување на разликата на месечните трошоци помеѓу моменталната и планираната состојба
Користете конфигурациска датотека Infracost ако вашето складиште има повеќе Terraform проекти или работни простори. Нивните резултати ќе се комбинираат во ист расчленување или различен излез.
Напредна употреба
Infracost, исто така, има различни напредни методи на користење што може да се користат како додаток на редовните методи на употреба. Овие напредни методи може да се користат и преку конфигурациска датотека Infracost.
Датотека Terraform Plan
Infracost може да се изврши против датотека со план на Terraform, што значи дека веќе сте ја извршиле Terraform init.
Infracost само работи Terraformshow
во овој случај, што значи дека не бара облак ингеренции или --terraform-plan-flags
да се постави.
cd патека/до/код
тераформен инит
terraform plan -out tfplan.binary
инфракост распаѓање – path tfplan.binary
infracost diff –path tfplan.binary
Тераформска држава
Ако сакате да го видите расчленувањето на трошоците на моменталната состојба на Terraform, треба да го знаете infracost breakdown
командата има a --terraform-use-state
знаме, што би се покажало корисно во овој случај. Веќе мора да го извршите Terraform apply
, така што Infracost само работи Terraform show
, што не бара акредитиви за облак или --terraform-plan-flags
да се постави.
распаѓање на инфракомет – примери на патека/тераформа –тераформ-употреба-состојба
Terraform држава JSON датотека
Можете да го извршите infracost breakdown
против датотека JSON со состојба на Terraform. Ова ќе биде [JSON излезен формат] на состојбата наместо внатрешната репрезентација JSON. Мора да се генерира со трчање terraform show -json
внатре во проектот Terraform, а особено е корисно ако сакате да го видите расчленувањето на трошоците на моменталната состојба на Terraform. Во овој случај, тоа значи дека веќе сте го стартувале Terraform apply
, што значи дека нема акредитиви за облак или --terraform-plan-flags
се задолжителни.
Кои облаци и ресурси се поддржани?
Infracost поддржува повеќе од 200 Terraform ресурси низ AWS, Google и Azure, додека другите IaC алатки како Пулуми Облачно формирање се вклучени во патоказот. Поддршката за нови ресурси постојано се додава, па затоа е важно да го проверите репото за изданија.
Заклучок
Infracost е од помош алатка за програмери, DevOps, SRE и други кои бараат брзо да го видат расчленувањето на трошоците и однапред да ги споредат различните опции. Исто така е добар избор ако сакате да го интегрирате со CI и/или ви треба поддршка за AWS и Google Cloud. Ако сакате да создадете подобра соработка помеѓу вашиот тим, Infracost исто така може да помогне во тој поглед. Сите овие карактеристики го прават алатка што треба силно да размислите да ја имплементирате за проценките на трошоците за облак за Terraform.
Оставете Одговор