Daftar Isi[Bersembunyi][Menunjukkan]
Infracost penting untuk DevOps, SRE, dan pengembang yang ingin memperkirakan biaya cloud untuk proyek infrastruktur sebagai kode seperti Terraform. Dengan Infracost, Anda dapat dengan cepat melihat perincian biaya sambil membandingkan berbagai opsi, yang membantu menghasilkan wawasan yang lebih baik sebelum mengambil keputusan besar.
Bagaimana Cara Kerja Infracost?
Infracost dapat memeriksa lebih dari 3 juta harga dengan memindai kode Terraform Anda, dan ini menghasilkan perkiraan biaya yang sederhana dan mudah dibaca sebelum Anda meluncurkan sumber daya.
Anda juga dapat menggunakan Infracost untuk mengetahui baris kode mana yang memiliki dampak biaya terbesar karena memetakan biaya ke sumber daya dalam permintaan tarik Anda. Dengan mengintegrasikan Infracost ke dalam CI/CD Anda, Anda dapat berkolaborasi dengan tim Anda dan memungkinkan diskusi mengenai dampak perubahan dalam alur kerja Anda yang ada.
Infracost bekerja melalui layanan backend Cloud Pricing API, dan dengan alat CLI, Anda dapat mengurai paket Terraform dalam format JSON. API referensi silang biaya individual dari setiap sumber daya cloud yang digunakan, serta parameter biaya terkaitnya berdasarkan penyedia cloud.
Program tidak memerlukan kredensial apa pun untuk beroperasi, dan tidak membuat perubahan apa pun pada Terraform atau sumber daya cloud yang dianalisis. Dengan menggunakan jumlah jenis sumber daya Terraform, API memastikan bahwa sumber daya baru diperhitungkan.
Ada dua cara utama Infracost menunjukkan rincian biaya:
A) Rincian Biaya Penuh
B) Selisih Biaya Bulanan Antara Kondisi Saat Ini dan Rencana
Memulai Dengan Infracost (Langkah-demi-Langkah)
Ikuti panduan langkah demi langkah ini untuk menginstal dan mulai menggunakan Infracost:
1. Instal Infracost
Langkah pertama untuk memulai adalah menginstal Infracost, tetapi Anda harus terlebih dahulu memiliki Terraform diinstal.
Berikut adalah tampilan berbagai versi Infracost:
buatan rumah macOS:
pembuatan bir instal infracost
infracost –versi # Harus menunjukkan v0.9.7
panduan macOS:
# Mengunduh CLI berdasarkan OS/arch Anda dan meletakkannya di /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | SH
Linux:
# Mengunduh CLI berdasarkan OS/arch Anda dan meletakkannya di /usr/local/bin
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | SH
Buruh pelabuhan:
buruh pelabuhan tarik infracost/infracost
menjalankan buruh pelabuhan –rm \
-e INFRACOST_API_KEY=lihat_mengikuti_langkah_pada_cara_mendapatkan_ini \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-v $PWD/:/code/ infracost/infracost kerusakan –path /code/
# Tambahkan flag/env lain yang diperlukan untuk Infracost atau Terraform
# Misalnya, ini mungkin diperlukan jika Anda menggunakan asumsi-peran AWS:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Windows:
Unduh dan unzip file rilis terbaru. Jalankan dari Command Prompt atau Powershell menggunakan .\infracost.exe --no-color
di samping perintah/flag lain yang diperlukan (output warna memiliki bug yang perlu kami perbaiki di Windows). Anda juga harus memindahkan file exe ke folder yang ada di PATH
variabel lingkungan, misalnya C:\Windows
.
2. Dapatkan Kunci API
Langkah selanjutnya adalah mendaftar untuk mendapatkan kunci API gratis, yang digunakan CLI untuk mengkueri Cloud Pricing API untuk tugas-tugas seperti mendapatkan harga untuk jenis instans.
Semua Sistem Operasi:
register infracost
Kuncinya disimpan di ~/.config/infracost/credentials.yml
.
3. Jalankan Infracost
Sekarang Anda siap menjalankan Infracost, yang tidak membuat perubahan apa pun pada status Terraform atau sumber daya cloud Anda. Anda dapat menjalankannya dengan proyek Terraform yang disediakan untuk mengujinya.
Semua Sistem Operasi:
git clone https://github.com/infracost/example-terraform.git
cd contoh-terraform/sample1
# Mainkan main.tf dan jalankan kembali untuk membandingkan biaya
perincian infracost – jalur .
# Tampilkan perbedaan biaya bulanan, edit file yml dan jalankan kembali untuk membandingkan biaya
infracost diff –path . –sinkronisasi-file-penggunaan –file-penggunaan infracost-usage.yml
4. Tambahkan ke CI/CD
Anda sekarang dapat menggunakan Infracost Integrasi CI/CD untuk secara otomatis menambahkan komentar permintaan tarik, yang menunjukkan kepada Anda perbedaan perkiraan biaya. Ini juga akan memberi Anda jaring pengaman, yang memungkinkan tim mendiskusikan dampak biaya dari perubahan sebagai bagian dari alur kerja mereka.
penggunaan
Grafik infracost
CLI memiliki perintah utama berikut:
breakdown
: menunjukkan rincian lengkap biayadiff
: menunjukkan perbedaan biaya bulanan antara keadaan saat ini dan yang direncanakan
Gunakan file konfigurasi Infracost jika repo Anda memiliki beberapa proyek atau ruang kerja Terraform. Hasil mereka akan digabungkan ke dalam rincian yang sama atau output diff.
Penggunaan Lanjutan
Infracost juga memiliki berbagai metode penggunaan lanjutan yang dapat digunakan selain metode penggunaan reguler. Metode lanjutan ini juga dapat digunakan melalui file konfigurasi Infracost.
File Rencana Terraform
Infracost dapat dijalankan terhadap file paket Terraform, yang berarti Anda telah menjalankan Terraform init.
Infracost hanya menjalankan Terraformshow
dalam hal ini, artinya tidak memerlukan kredensial cloud atau --terraform-plan-flags
untuk diatur.
jalur cd/ke/kode
terraform init
rencana terraform -out tfplan.binary
rincian infracost –path tfplan.binary
perbedaan infracost –jalur tfplan.binary
Keadaan Terraform
Jika Anda ingin melihat rincian biaya dari kondisi Terraform saat ini, Anda harus mengetahui infracost breakdown
perintah memiliki --terraform-use-state
flag, yang akan terbukti berguna dalam kasus ini. Anda harus sudah menjalankan Terraform apply
, jadi Infracost hanya menjalankan Terraform show
, yang tidak memerlukan kredensial cloud atau --terraform-plan-flags
untuk diatur.
rincian infracost –contoh jalur/terraform –terraform-use-state
File JSON Keadaan Terraform
Anda dapat menjalankan infracost breakdown
terhadap file JSON status Terraform. Ini akan menjadi [format keluaran JSON] dari status alih-alih representasi JSON internal. Itu harus dihasilkan dengan menjalankan terraform show -json
di dalam proyek Terraform, dan ini sangat berguna jika Anda ingin melihat rincian biaya dari status Terraform saat ini. Dalam hal ini, itu berarti Anda sudah menjalankan Terraform apply
, artinya tidak ada kredensial cloud atau --terraform-plan-flags
diperlukan.
Awan dan Sumber Daya Manakah yang Didukung?
Infracost mendukung lebih dari 200 sumber daya Terraform di seluruh AWS, Google, dan Azure, sementara alat IaC lainnya seperti Pulumi dan formasi awan termasuk dalam peta jalan. Dukungan untuk sumber daya baru terus ditambahkan, jadi penting untuk memeriksa repo untuk rilis.
Kesimpulan
Infracost sangat membantu alat untuk pengembang, DevOps, SRE, dan lainnya yang ingin melihat rincian biaya dengan cepat dan membandingkan berbagai opsi di awal. Ini juga merupakan pilihan yang baik jika Anda ingin mengintegrasikannya dengan CI dan/atau membutuhkan dukungan untuk AWS dan Google Cloud. Jika Anda ingin menciptakan kolaborasi yang lebih baik antara tim Anda, Infracost juga dapat membantu dalam hal itu. Semua fitur ini menjadikannya alat yang harus Anda pertimbangkan untuk diterapkan dalam perkiraan biaya cloud untuk Terraform.
Tinggalkan Balasan