İçindekiler[Saklamak][Göstermek]
Infracost, DevOps, SRE ve Terraform gibi kod olarak altyapı projeleri için bulut maliyetlerini tahmin etmek isteyen geliştiriciler için önemlidir. Infracost ile, farklı seçenekleri karşılaştırırken hızlı bir şekilde maliyet dağılımını görebilirsiniz, bu da büyük bir karardan önce daha iyi içgörülere yol açmanıza yardımcı olur.
Altyapı Maliyeti Nasıl Çalışır?
Infracost, Terraform kodunuzu tarayarak 3 milyondan fazla fiyatı kontrol edebilir ve kaynakları başlatmadan önce basit ve okunması kolay bir maliyet tahmini üretir.
Infracost'u, çekme isteklerinizdeki kaynaklarla maliyeti eşlediğinden, hangi kod satırlarının maliyet açısından en büyük etkiye sahip olduğunu bilmek için de kullanabilirsiniz. Infracost'u CI/CD'nize entegre ederek ekibinizle işbirliği yapabilir ve mevcut iş akışınızdaki değişikliklerin etkisi hakkında tartışmalara olanak sağlayabilirsiniz.
Infracost, Cloud Pricing API arka uç hizmeti aracılığıyla çalışır ve CLI aracıyla bir Terraform planını JSON biçiminde ayrıştırabilirsiniz. API, kullanılan her bulut kaynağının bireysel maliyetinin yanı sıra bulut sağlayıcısına dayalı olarak ilgili maliyet parametrelerine çapraz referans verir.
Programın çalışması için herhangi bir kimlik bilgisi gerektirmez ve Terraform'da veya analiz edilen bulut kaynaklarında herhangi bir değişiklik yapmaz. API, Terraform kaynak türlerinin sayısını kullanarak yeni kaynakların hesaba katılmasını sağlar.
Infracost'un maliyetlerin dökümünü göstermesinin iki ana yolu vardır:
A) Maliyetlerin Tam Dağılımı
B) Mevcut ve Planlanan Durum Arasındaki Aylık Maliyetlerin Farkı
Infracost'a Başlarken (Adım Adım)
Infracost'u yüklemek ve kullanmaya başlamak için bu adım adım kılavuzu izleyin:
1. Infracost'u yükleyin
Başlamak için ilk adım Infracost'u kurmaktır, ancak önce Terraform yüklü.
Infracost'un farklı sürümlerine bir bakış:
macOS Homebrew:
demlemek kurulum maliyeti
infracost –version # v0.9.7 göstermelidir
macOS kılavuzu:
# İşletim sisteminize/arch'nize göre CLI'yi indirir ve /usr/local/bin dizinine yerleştirir
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | ş
Linux:
# İşletim sisteminize/arch'nize göre CLI'yi indirir ve /usr/local/bin dizinine yerleştirir
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | ş
Liman işçisi:
liman işçisi çekme maliyeti/alt maliyeti
liman işçisi çalıştırma –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 dökümü –yol /kod/
# Infracost veya Terraform için diğer gerekli bayrakları/ortamları ekleyin
# Örneğin, AWS rol üstlenme kullanıyorsanız bunlar gerekli olabilir:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_BÖLGE=$AWS_BÖLGE \
Windows:
İndir ve unzip En son sürüm. Kullanarak Komut İstemi veya Powershell'den çalıştırın. .\infracost.exe --no-color
diğer gerekli komutların/bayrakların yanı sıra (renkli çıktıda Windows'ta düzeltmemiz gereken bir hata var). Ayrıca exe dosyasını dosyanızdaki bir klasöre taşımanız gerekir. PATH
Çevre değişkeni, Örneğin C:\Windows
.
2. Bir API Anahtarı Alın
Sonraki adım, bulut sunucusu türlerinin fiyatlarını alma gibi görevler için CLI'nin Bulut Fiyatlandırma API'sini sorgulamak için kullandığı ücretsiz bir API anahtarına kaydolmaktır.
Tüm İşletim Sistemleri:
alt maliyet kaydı
Anahtar şuraya kaydedilir: ~/.config/infracost/credentials.yml
.
3. Infracost'u çalıştırın
Artık Terraform durumunuzda veya bulut kaynaklarınızda herhangi bir değişiklik yapmayan Infracost'u çalıştırmaya hazırsınız. Test etmek için sağlanan Terraform projesiyle çalıştırabilirsiniz.
Tüm İşletim Sistemleri:
git klonu https://github.com/infracost/example-terraform.git
cd örnek-terraform/örnek1
# main.tf ile oynayın ve maliyetleri karşılaştırmak için yeniden çalıştırın
alt maliyet dökümü –yol .
# Aylık maliyetlerin farkını gösterin, yml dosyasını düzenleyin ve maliyetleri karşılaştırmak için yeniden çalıştırın
alt maliyet farkı -yol . –sync-usage-file –usage-file infracost-usage.yml
4. CI/CD'ye ekleyin
Artık Infracost'u kullanabilirsiniz CI/CD entegrasyonları size maliyet tahmini farklarını gösteren çekme isteği yorumlarını otomatik olarak eklemek için. Bu ayrıca, ekiplerin iş akışlarının bir parçası olarak değişikliklerin maliyet etkisini tartışmasına olanak tanıyan bir güvenlik ağı da sağlayacaktır.
kullanım
The infracost
CLI aşağıdaki ana komutlara sahiptir:
breakdown
: maliyetlerin tam dökümünü gösterdiff
: mevcut ve planlanan durum arasındaki aylık maliyetlerin farkını göster
Deponuzda birden fazla Terraform projesi veya çalışma alanı varsa bir Infracost yapılandırma dosyası kullanın. Sonuçları aynı arıza veya fark çıktısında birleştirilecektir.
Gelişmiş Kullanım
Infracost, normal kullanım yöntemlerine ek olarak kullanılabilecek çeşitli gelişmiş kullanım yöntemlerine de sahiptir. Bu gelişmiş yöntemler, bir Infracost yapılandırma dosyası aracılığıyla da kullanılabilir.
Terraform Planı Dosyası
Infracost, bir Terraform plan dosyasına karşı çalıştırılabilir; bu, Terraform'u zaten çalıştırdığınız anlamına gelir. init.
Infracost sadece Terraform'u çalıştırıyorshow
bu durumda, bulut kimlik bilgileri gerektirmediği anlamına gelir veya --terraform-plan-flags
ayarlanacak.
cd yolu/kodu/kodu
terraform başlatma
terraform planı -out tfplan.binary
alt maliyet dökümü –yol tfplan.binary
alt maliyet farkı –yol tfplan.binary
dünya devleti
Mevcut Terraform durumunun maliyet dökümünü görmek istiyorsanız, şunları bilmelisiniz: infracost breakdown
komutu var --terraform-use-state
bu durumda faydalı olacak olan bayrak. Terraform'u zaten çalıştırmalısınız apply
, bu yüzden Infracost sadece Terraform'u çalıştırıyor show
bulut kimlik bilgileri gerektirmeyen veya --terraform-plan-flags
ayarlanacak.
alt maliyet dökümü –yol örnekleri/terraform –terraform-use-state
Terraform State JSON Dosyası
Koşabilirsiniz infracost breakdown
Terraform durumu JSON dosyasına karşı. Bu, dahili JSON temsili yerine durumun [JSON çıktı formatı] olacaktır. Çalıştırılarak oluşturulmalıdır terraform show -json
bir Terraform projesi içinde ve mevcut Terraform durumunun maliyet dökümünü görmek istiyorsanız özellikle yararlıdır. Bu durumda, Terraform'u zaten çalıştırdığınız anlamına gelir. apply
, hiçbir bulut kimlik bilgisi veya --terraform-plan-flags
gereklidir.
Hangi Bulutlar ve Kaynaklar Desteklenir?
Infracost'tan daha fazlasını destekler 200 Terraform kaynağı AWS, Google ve Azure genelinde, diğer IaC araçları gibi pulumi ve Bulut oluşumu yol haritasına dahil edilmiştir. Yeni kaynaklar için destek sürekli olarak eklenmektedir, bu nedenle sürümler için depoyu kontrol etmek önemlidir.
Sonuç
Infracost yardımcı olur geliştiriciler için araç, DevOps, SRE ve maliyet dağılımını hızlı bir şekilde görmek ve farklı seçenekleri önceden karşılaştırmak isteyen diğerleri. Ayrıca, CI ile entegre etmek istiyorsanız ve/veya AWS ve Google Cloud için desteğe ihtiyacınız varsa, iyi bir seçimdir. Ekibiniz arasında daha iyi bir işbirliği oluşturmak istiyorsanız, Infracost bu konuda da yardımcı olabilir. Tüm bu özellikler, onu Terraform için bulut maliyet tahminleri için uygulamayı kesinlikle düşünmeniz gereken bir araç haline getirir.
Yorum bırak