Mündəricat[Gizlət][Göstər]
İnfrakost DevOps, SRE və Terraform kimi kod kimi infrastruktur layihələri üçün bulud xərclərini hesablamaq istəyən tərtibatçılar üçün vacibdir. Infracost ilə siz müxtəlif variantları müqayisə edərkən tez bir zamanda xərclərin bölgüsünə baxa bilərsiniz ki, bu da böyük bir qərardan əvvəl daha yaxşı məlumat əldə etməyə kömək edir.
Infracost necə işləyir?
Infracost, Terraform kodunuzu skan etməklə 3 milyondan çox qiymətləri yoxlaya bilər və siz resursları işə salmazdan əvvəl sadə və oxunması asan xərc smetasını hazırlayır.
Siz həmçinin hansı kod sətirlərinin ən böyük xərc təsirinə malik olduğunu bilmək üçün Infracost-dan istifadə edə bilərsiniz, çünki o, çəkmə sorğularınızdakı resurslara xərcləri göstərir. Infracost-u CI/CD-yə inteqrasiya etməklə siz komandanızla əməkdaşlıq edə və mövcud iş prosesinizdə dəyişikliklərin təsiri ilə bağlı müzakirələri aktivləşdirə bilərsiniz.
Infracost Cloud Pricing API backend xidməti vasitəsilə işləyir və CLI aləti ilə siz Terraform planını JSON formatında təhlil edə bilərsiniz. API istifadədə olan hər bir bulud resursunun fərdi dəyərinə, həmçinin bulud provayderinə əsaslanan müvafiq xərc parametrlərinə çarpaz istinad edir.
Proqram işləmək üçün heç bir etimadnamə tələb etmir və Terraform və ya təhlil edilən bulud resurslarında heç bir dəyişiklik etmir. Terraform resurs növlərinin sayından istifadə etməklə, API yeni resursların uçota alınmasını təmin edir.
Infracost-un xərclərin bölünməsini göstərən iki əsas yol var:
A) Xərclərin tam bölgüsü
B) Cari və Planlaşdırılan Dövlət Arasındakı Aylıq Xərclərin Fərqi
Infracost ilə işə başlamaq (Addım-addım)
Infracost-u quraşdırmaq və istifadə etməyə başlamaq üçün bu addım-addım təlimatı izləyin:
1. Infracost quraşdırın
Başlamaq üçün ilk addım Infracost-u quraşdırmaqdır, lakin əvvəlcə sizdə olmalıdır Terraform quraşdırılıb.
Infracost-un müxtəlif versiyalarına nəzər salaq:
macOS Homebrew:
brew install infracost
infracost –versiya # v0.9.7 göstərməlidir
macOS təlimatı:
# ƏS/arch əsasında CLI-ni yükləyir və onu /usr/local/bin-ə qoyur
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | ş
Linux:
# ƏS/arch əsasında CLI-ni yükləyir və onu /usr/local/bin-ə qoyur
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | ş
Docker:
docker pull infracost/infracost
docker run –rm \
-e INFRACOST_API_KEY=bunu əldə etmək üçün_nəcə_addım_baxın \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-v $PWD/:/code/ infracost/infracost parçalanması -path /code/
# Infracost və ya Terraform üçün digər tələb olunan bayraqları/envləri əlavə edin
# Məsələn, əgər siz AWS assume-rol istifadə edirsinizsə, bunlar tələb oluna bilər:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Windows:
Yükləyin və açın son buraxılış. Əmr əmrindən və ya Powershell-dən istifadə edərək işə salın .\infracost.exe --no-color
digər tələb olunan əmrlər/bayraqlarla yanaşı (rəng çıxışında Windows-da düzəltməli olduğumuz bir səhv var). Siz həmçinin exe faylını özünüzdə olan qovluğa köçürməlisiniz PATH
mühit dəyişkənliyi, məsələn C:\Windows
.
2. API Açarı əldə edin
Növbəti addım pulsuz API açarı üçün qeydiyyatdan keçməkdir ki, bu da CLI-nin nümunə növləri üçün qiymətləri əldə etmək kimi tapşırıqlar üçün Bulud Qiymətləndirmə API-ni sorğulamaq üçün istifadə edir.
Bütün Əməliyyat Sistemləri:
infrakost reyestri
Açar saxlanılır ~/.config/infracost/credentials.yml
.
3. Infracost-u işə salın
İndi siz Terraform vəziyyətinizə və ya bulud resurslarınıza heç bir dəyişiklik etməyən Infracost-u işə salmağa hazırsınız. Onu sınaqdan keçirmək üçün təqdim edilmiş Terraform layihəsi ilə işlədə bilərsiniz.
Bütün Əməliyyat Sistemləri:
git clone https://github.com/infracost/example-terraform.git
CD nümunəsi-terraform/nümunə1
# Main.tf ilə oynayın və xərcləri müqayisə etmək üçün yenidən işə salın
infrastrukturun dağılması – yol.
# Aylıq xərclərin fərqini göstərin, yml faylını redaktə edin və xərcləri müqayisə etmək üçün yenidən işə salın
infrakost fərqi - yol . –sync-usage-file –usage-fayl infracost-usage.yml
4. CI/CD-yə əlavə edin
İndi Infracost-dan istifadə edə bilərsiniz CI/CD inteqrasiyaları Sizə xərc təxmini fərqlərini göstərən çəkmə sorğusu şərhlərini avtomatik əlavə etmək. Bu, həmçinin komandalara iş axınının bir hissəsi kimi dəyişikliklərin xərc təsirini müzakirə etməyə imkan verən təhlükəsizlik şəbəkəsi ilə təmin edəcək.
Istifadə
The infracost
CLI aşağıdakı əsas əmrlərə malikdir:
breakdown
: xərclərin tam bölgüsünü göstərindiff
: cari və planlaşdırılan vəziyyət arasında aylıq xərclərin fərqini göstərin
Reponuzda çoxsaylı Terraform layihələri və ya iş yerləri varsa, Infracost konfiqurasiya faylından istifadə edin. Onların nəticələri eyni parçalanma və ya fərq çıxışında birləşdiriləcək.
Qabaqcıl istifadə
Infracost həmçinin müntəzəm istifadə üsullarına əlavə olaraq istifadə edilə bilən müxtəlif qabaqcıl istifadə üsullarına malikdir. Bu qabaqcıl üsullar Infracost konfiqurasiya faylı vasitəsilə də istifadə edilə bilər.
Terraform plan faylı
Infracost Terraform plan faylına qarşı işlədilə bilər, bu da artıq Terraform-u işlətdiyinizi göstərir init.
Infracost sadəcə Terraform-u idarə edirshow
bu halda, o deməkdir ki, o, bulud etimadnaməsini tələb etmir və ya --terraform-plan-flags
qurulmaq.
cd yolu/kod
terraform başlanğıc
terraform planı -out tfplan.binary
infrastrukturun dağılması – yol tfplan.binary
infracost diff – yol tfplan.binary
Terraform vəziyyəti
Cari Terraform vəziyyətinin xərc bölgüsünə baxmaq istəyirsinizsə, bunu bilməlisiniz infracost breakdown
əmri var --terraform-use-state
bayraq, bu halda faydalı ola bilər. Siz artıq Terraform-u işə salmalısınız apply
, belə ki, Infracost sadəcə Terraform-u idarə edir show
, bulud etimadnaməsini tələb etməyən və ya --terraform-plan-flags
qurulmaq.
infrastrukturun dağılması – yol nümunələri/terraform –terraform-istifadə vəziyyəti
Terraform Dövlət JSON Faylı
Siz çalıştırabilirsiniz infracost breakdown
Terraform dövlət JSON faylına qarşı. Bu daxili JSON təmsili əvəzinə dövlətin [JSON çıxış formatı] olardı. Çalışmaqla yaradılmalıdır terraform show -json
Terraform layihəsinin daxilində və mövcud Terraform vəziyyətinin xərc bölgüsünə baxmaq istəyirsinizsə, xüsusilə faydalıdır. Bu halda, artıq Terraform-u işlətdiyinizi bildirir apply
, yəni heç bir bulud etimadnaməsi yoxdur və ya --terraform-plan-flags
tələb olunur.
Hansı Buludlar və Resurslar Dəstəklənir?
Infracost daha çox dəstəkləyir 200 Terraform resursu AWS, Google və Azure arasında, digər IaC alətləri kimi Pulumi və Bulud formalaşması yol xəritəsinə daxildir. Yeni resurslara dəstək daim əlavə olunur, ona görə də repo-nu relizlər üçün yoxlamaq vacibdir.
Nəticə
Infracost faydalıdır tərtibatçılar üçün alət, DevOps, SRE və digərləri xərclərin bölgüsünə tez baxmaq və müxtəlif variantları əvvəlcədən müqayisə etmək istəyirlər. Onu CI ilə inteqrasiya etmək istəyirsinizsə və/və ya AWS və Google Cloud üçün dəstəyə ehtiyacınız varsa, bu da yaxşı seçimdir. Komandanız arasında daha yaxşı əməkdaşlıq yaratmaq istəyirsinizsə, Infracost da bu mövzuda kömək edə bilər. Bütün bu xüsusiyyətlər onu Terraform üçün bulud xərcləri təxminləri üçün həyata keçirməyi ciddi düşünməli olduğunuz bir vasitə halına gətirir.
Cavab yaz