Bagikan melalui


Templat pusat FinOps

Dokumen ini menyediakan ringkasan terperinci tentang apa yang disertakan dalam templat penyebaran hub FinOps. Anda dapat menggunakan ini sebagai panduan untuk menyetel penyebaran Anda atau untuk menginformasikan penyesuaian yang dapat Anda buat ke templat untuk memenuhi kebutuhan organisasi Anda. Dokumen ini menjelaskan prasyarat yang diperlukan untuk menyebarkan templat, parameter input yang dapat Anda sesuaikan, sumber daya yang akan disebarkan, dan output templat. Template output dapat digunakan untuk menyambungkan ke instans hub Anda di Power BI, Data Explorer, atau alat lainnya.

Hub FinOps mencakup banyak sumber daya untuk menawarkan platform FinOps yang aman dan dapat diskalakan. Sumber daya utama yang akan Berinteraksi dengan Anda meliputi:

  • Data Explorer (Kusto) sebagai datastore yang dapat diskalakan untuk analitik tingkat lanjut (opsional).
  • Akun penyimpanan (Data Lake Storage Gen2) sebagai area persiapan untuk penyerapan data.
  • Instans Data Factory untuk mengelola penyerapan dan pembersihan data.

Penting

Untuk menggunakan templat, Anda perlu membuat ekspor Manajemen Biaya agar data dapat diterbitkan ke kontainer msexports di akun penyimpanan yang telah disertakan. Untuk informasi selengkapnya, lihat Membuat hub baru.


Prasyarat

Pastikan prasyarat berikut terpenuhi sebelum Anda menyebarkan templat:

  • Anda harus memiliki izin berikut untuk membuat sumber daya yang disebarkan.

    Sumber daya Kontrol Akses Berbasis Peran Minimum Azure
    Menyebarkan dan mengonfigurasi Data Factory¹ Kontributor Data Factory
    Menyebarkan Key Vault (hanya hub jarak jauh)¹ Kontributor Key Vault
    Mengonfigurasi kunci rahasia Key Vault (hanya hub jarak jauh)¹ Pengelola Gudang Kunci
    Membuat identitas terkelola¹ Kontributor Identitas Terkelola
    Menyebarkan dan mengonfigurasi penyimpanan¹ Kontributor Akun Penyimpanan
    Menetapkan identitas terkelola ke sumber daya¹ Operator Identitas Dikelola
    Membuat skrip untuk penyebaran Peran kustom yang hanya berisi izin Microsoft.Resources/deploymentScripts/write dan Microsoft.ContainerInstance/containerGroups/write sebagai tindakan yang diizinkan atau, sebagai alternatif, Kontributor, yang mencakup izin ini dan semua peran di atas.
    Menetapkan izin ke identitas terkelola¹ Administrator Kontrol Akses Berbasis Peran atau, Pemilik, yang mencakup peran ini dan semua peran di atas
    Membuat langganan atau grup sumber daya ekspor biaya² Kontributor Cost Management
    Buat ekspor biaya penagihan EA² Pembaca Perusahaan, Pembaca Departemen, atau Pemilik Akun Pendaftaran (Pelajari selengkapnya)
    Membuat ekspor biaya penagihan MCA² Kontributor
    Membaca data blob di penyimpanan³ Data blob penyimpanan kontributor

    ¹ Cukup menetapkan izin penyebaran sumber daya hub pada cakupan grup sumber daya.
    ² Izin Cost Management harus ditetapkan pada cakupan di mana Anda ingin mengekspor biaya Anda.
    ³ Izin data Blob diperlukan untuk mengakses data biaya yang diekspor dari Power BI atau alat klien lainnya.

  • Anda harus memiliki izin untuk menetapkan peran berikut ke identitas terkelola sebagai bagian dari penyebaran:

    Peran Azure RBAC Catatan
    Kontributor Data Factory Ditetapkan ke identitas manajer pemicu penyebaran untuk memulai pemicu Data Factory secara otomatis.
    Pembaca Ditetapkan ke Data Factory untuk mengelola data dalam penyimpanan.
    Kontributor Akun Penyimpanan Ditetapkan ke Data Factory untuk mengelola data dalam penyimpanan.
    Data blob penyimpanan kontributor Ditetapkan ke Data Factory dan Data Explorer untuk mengelola data dalam penyimpanan.
    Kontributor Istimewa untuk Data File Penyimpanan Ditetapkan ke identitas unggahan file penyebaran yang mengunggah file ke kontainer konfigurasi.
    Pengelola Akses Pengguna Ditetapkan ke Data Factory untuk mengelola data dalam penyimpanan. Tidak diterapkan saat enableManagedExports dinonaktifkan .
  • Penyedia sumber daya Microsoft.EventGrid harus terdaftar di langganan Anda. Untuk informasi selengkapnya, lihat Mendaftarkan penyedia sumber daya.

    Penting

    Jika Anda lupa langkah ini, penyebaran akan berhasil, tetapi pemicu alur tidak akan dimulai dan data tidak akan siap. Untuk informasi selengkapnya, lihat Pemecahan masalah laporan Power BI.


Parameter

Berikut adalah parameter yang dapat Anda gunakan untuk menyesuaikan penyebaran:

Pengaturan Jenis Deskripsi Nilai bawaan
hubName string Opsional. Nama hub. Digunakan untuk memastikan nama sumber daya yang unik. finops-hub
Lokasi string Opsional. Lokasi Azure di mana semua sumber daya harus dibuat. Lihat https://aka.ms/azureregions. Sama seperti penyebaran
storageSku string Opsional. SKU penyimpanan yang akan digunakan. LRS = Biaya terendah, ZRS = Ketersediaan tinggi. Catatan SKU Standar tidak tersedia untuk penyimpanan Data Lake gen2. Diizinkan: Premium_LRS, Premium_ZRS. "Premium_LRS"
dataExplorerName string Opsional. Nama kluster Azure Data Explorer yang akan digunakan untuk analitik tingkat lanjut. Jika kosong, Azure Data Explorer tidak akan disebarkan. Diwajibkan untuk digunakan dengan Power BI jika Anda memantau biaya lebih dari $2-$5 juta/bulan. Default: "" (jangan gunakan).
dataExplorerSkuName string Opsional. Nama SKU di Azure Data Explorer. Default: "Dev(Tidak Ada SLA)_Standard_E2a_v4".
dataExplorerSkuTier string Opsional. Tingkat SKU untuk kluster Azure Data Explorer. Gunakan Basic untuk biaya terendah tanpa SLA (karena satu node). Gunakan Standar untuk ketersediaan tinggi dan peningkatan performa. Nilai yang diizinkan: Dasar, Standar. Default: "Dasar".
dataExplorerSkuCapacity Integer Opsional. Jumlah simpul yang digunakan dalam kluster. Nilai yang diizinkan: 1 untuk tingkat SKU Dasar dan 2-1000 untuk Standar. Bawaan: 1.
tag Objek Opsional. Tag-tag untuk diterapkan ke semua sumber daya. Kami juga akan menambahkan tag cm-resource-parent untuk meningkatkan penggabungan biaya di Manajemen Biaya.
tagsByResource Objek Opsional. Tag yang akan diterapkan ke sumber daya berdasarkan jenis sumber dayanya. Tag tertentu jenis sumber daya akan digabungkan dengan tag untuk semua sumber daya.
cakupanToMonitor Array Opsional. Daftar ID cakupan untuk memantau dan menganalisis biaya.
exportRetentionInDays Integer Opsional. Jumlah hari data untuk disimpan dalam kontainer msexports. 0
ingestionRetentionInMonths Integer Opsional. Jumlah bulan data yang akan disimpan di wadah pengepakan. 13
RetensiLogDataExplorerDalamHari Integer Opsional. Jumlah hari data yang akan disimpan dalam tabel *_log di Data Explorer. 0
dataExplorerFinalRetentionInMonths Integer Opsional. Jumlah bulan data yang akan disimpan dalam tabel Data Explorer *_final_v*. 13
remoteHubStorageUri string Opsional. Titik akhir penyimpanan Data Lake dari akun penyimpanan hub jarak jauh (utama). Digunakan untuk pengumpulan data biaya antar-penyewa di mana hub ini mengirimkan data yang telah diproses ke hub pusat. Contoh: https://primaryhub.dfs.core.windows.net/
remoteHubStorageKey string Opsional. Kunci akses akun penyimpanan untuk hub jarak jauh (utama). Digunakan bersamaan dengan remoteHubStorageUri untuk skenario antar penyewa. Harus dijaga keamanannya karena menyediakan akses penyimpanan penuh.
enableManagedExports Bool Opsional. Mengaktifkan ekspor yang dikelola di mana instans hub FinOps Anda akan membuat dan menjalankan ekspor Cost Management atas nama Anda. Tidak didukung untuk profil penagihan Perjanjian Pelanggan Microsoft (MCA). Memerlukan kemampuan untuk memberikan peran Administrator Akses Pengguna ke hub FinOps, yang dibutuhkan untuk membuat ekspor Pengelolaan Biaya. Benar
aktifkanAksesPublik Bool Opsional. Nonaktifkan akses publik ke firewall penyimpanan data lake. Benar
PrefiksAlamatJaringanVirtual string Opsional. Rentang Alamat IP untuk jaringan virtual privat yang digunakan oleh hub FinOps. Menerima ukuran subnet apa pun dari /8 hingga /26 dengan minimum /26 yang diperlukan. /26 disarankan untuk menghindari pemborosan IP kecuali Anda memerlukan lebih banyak ruang alamat untuk layanan seperti Power BI VNet Data Gateway. Secara internal, subnet berikut akan dibuat: /28 untuk titik akhir privat, subnet /28 lain untuk skrip penyebaran sementara (instans kontainer), dan /27 untuk Azure Data Explorer, jika diaktifkan. '10.20.30.0/26'

Sumber

Sumber daya berikut akan dibuat di grup sumber daya target selama proses penyebaran.

Sumber daya menggunakan konvensi penamaan berikut: <hubName>-<purpose>-<unique-suffix>. Nama disesuaikan untuk memperhitungkan pembatasan panjang dan karakter. <unique-suffix> digunakan untuk memastikan nama sumber daya unik secara global jika diperlukan.

  • <hubName>store<unique-suffix> akun penyimpanan (Data Lake Storage Gen2)
    • Kontainer blob:
      • msexports – Menyimpan sementara ekspor Cost Management.
      • ingestion – Menyimpan data yang diserap.
      • config – Menyimpan metadata hub dan pengaturan konfigurasi. File:
        • settings.json – Pengaturan hub.
        • schemas/focuscost_1.0.json – Definisi skema FOCUS 1.0 untuk konversi parquet.
        • schemas/focuscost_1.0-preview(v1).json – Definisi skema FOCUS 1.0-preview untuk konversi parquet.
        • schemas/pricesheet_2023-05-01_ea.json – Definisi skema daftar harga EA versi 2023-05-01 untuk konversi parquet.
        • schemas/pricesheet_2023-05-01_mca.json – Definisi skema lembar harga MCA versi 2023-05-01 untuk konversi parquet.
        • schemas/reservationdetails_2023-03-01.json – Definisi skema detail reservasi versi 2023-03-01 untuk konversi parquet.
        • schemas/reservationrecommendations_2023-05-01_ea.json – Rekomendasi reservasi definisi skema EA versi 2023-05-01 untuk konversi parquet.
        • schemas/reservationrecommendations_2023-05-01_mca.json – Rekomendasi reservasi versi definisi skema MCA 2023-05-01 untuk konversi parquet.
        • schemas/reservationtransactions_2023-05-01_ea.json – Transaksi reservasi skema EA definisi versi 2023-05-01 untuk konversi parquet.
        • schemas/reservationtransactions_2023-05-01_mca.json – Definisi skema MCA transaksi reservasi versi 2023-05-01 untuk konversi parquet.
  • <hubName>script<unique-suffix> akun penyimpanan (Data Lake Storage Gen2) untuk skrip penyebaran.
  • <hubName>-engine-<unique-suffix> Instans Data Factory
    • Pipa:
      • config_InitializeHub – Menginisialisasi (atau memperbarui) instans hub FinOps setelah penyebaran.
      • config_ConfigureExports – Membuat ekspor manajemen biaya untuk semua cakupan.
      • config_StartBackfillProcess – Menjalankan pekerjaan pengisian kembali untuk setiap bulan berdasarkan pengaturan retensi.
      • config_RunBackfillJob – Membuat dan memicu ekspor untuk semua cakupan yang ditentukan untuk rentang tanggal yang ditentukan.
      • config_StartExportProcess – Mendapatkan daftar semua ekspor Cost Management yang dikonfigurasi untuk hub ini berdasarkan cakupan yang ditentukan dalam settings.json, lalu menjalankan setiap ekspor menggunakan alur config_RunExportJobs.
      • config_RunExportJobs – Menjalankan ekspor Cost Management yang ditentukan.
      • msexports_ExecuteETL – Mengantrekan msexports_ETL_ingestion alur untuk memperhitungkan batas pemicu alur Data Factory.
      • msexports_ETL_ingestion – Mengonversi ekspor Cost Management menjadi parquet dan menghapus data historis yang terduplikasi dalam setiap ekspor harian.
      • ingestion_ExecuteETL – Mengantrekan ingestion_ETL_dataExplorer alur untuk memperhitungkan batas pemicu alur Data Factory.
      • ingestion_ETL_dataExplorer – Mengimpor data parquet ke dalam kluster Azure Data Explorer.
    • Pemicu
      • config_SettingsUpdated – Memicu config_ConfigureExports pipeline saat settings.json diperbarui.
      • config_DailySchedule – Memicu jalur proses config_RunExportJobs harian untuk data biaya bulan ini.
      • config_MonthlySchedule – Memicu pipeline config_RunExportJobs setiap bulan untuk data biaya bulan sebelumnya.
      • msexports_ManifestAdded – Memicu msexports_ExecuteETL alur ketika ekspor Cost Management selesai.
      • ingestion_ManifestAdded – Memicu alur ingestion_ExecuteETL saat file manifest.json ditambahkan (ditangani oleh alur msexports_ETL_ingestion).
    • Titik Akhir Privat yang Dikelola
      • <hubName>store<unique-suffix> - Titik akhir privat terkelola untuk akun penyimpanan.
      • <hubName>-vault-<unique-suffix> - Titik akhir privat terkelola untuk Azure Key Vault.
  • <hubName>-vault-<unique-suffix> Instans Key Vault (hanya disertakan jika diterapkan sebagai hub jarak jauh)
    • Rahasia:
      • Identitas terkelola dari sistem Data Factory
  • Kluster <dataExplorerName> Data Explorer
    • Hub database – Fungsi yang berhadapan dengan publik untuk memisahkan logika internal.
      • Termasuk 2 set fungsi:
        • Fungsi khusus himpunan data untuk versi FOCUS terbaru yang didukung (misalnya, Costs, Prices).
        • Fungsi khusus himpunan data untuk setiap versi FOCUS yang didukung (misalnya, Costs_v1_0 untuk FOCUS 1.0). Fungsi-fungsi ini disediakan untuk kompatibilitas ke belakang. Semua fungsi mengembalikan semua data yang selaras dengan versi FOCUS yang ditargetkan.
      • Himpunan data meliputi: Costs, Prices.
      • Versi FOCUS yang didukung meliputi: v1_0.
    • Ingestion database – Menyimpan data yang telah dimasukkan.
      • Pengaturan:
        • tabel HubSettingsLog – Menyimpan riwayat perubahan konfigurasi tingkat tinggi (misalnya, versi, cakupan).
        • Fungsi HubSettings – Mendapatkan versi terbaru dari pengaturan instance hub.
        • HubScopes fungsi – Mendapatkan cakupan yang saat ini dikonfigurasi untuk instans hub ini.
      • Data Terbuka
        • Tabel PricingUnits – file pemetaan PricingUnits dari FinOps toolkit. Digunakan untuk normalisasi dan pembersihan data.
        • tabel Regionswilayah pemetaan file dari toolkit FinOps. Digunakan untuk normalisasi dan pembersihan data.
        • tabel ResourceTypesfile pemetaan ResourceTypes dari toolkit FinOps. Digunakan untuk normalisasi dan pembersihan data.
        • tabel Services – file pemetaan layanan dari toolkit FinOps. Digunakan untuk normalisasi dan pembersihan data.
        • fungsi resource_type – Fungsi sederhana untuk memetakan ID jenis sumber daya internal untuk menampilkan nama berdasarkan file pemetaan ResourceTypes.
          • Gunakan fungsi ini untuk memetakan satu nilai dan bergabung dengan tabel ResourceTypes untuk memperbarui banyak baris atau memetakan nilai lain.
      • Dataset:
        • tabel <dataset>_raw – Data mentah langsung dari sumber penyerapan. Menggunakan skema penyatuan untuk data dari beberapa sumber.
        • <dataset>_transform_vX_Y fungsi – Menormalkan dan membersihkan data mentah untuk menyelaraskan ke versi FOCUS yang ditargetkan menggunakan tabel data terbuka sesuai kebutuhan.
        • tabel <dataset>_final_vX_Y – Versi bersih dari tabel mentah terkait yang diselaraskan dengan versi FOCUS yang ditargetkan. Diisi melalui kebijakan pembaruan yang menggunakan fungsi transformasi yang sesuai ketika data dimasukkan ke dalam tabel mentah.

Selain informasi sebelumnya, sumber daya berikut dibuat untuk mengotomatiskan proses penyebaran. Skrip penyebaran harus dihapus secara otomatis. Namun, jangan hapus identitas terkelola karena dapat menyebabkan kesalahan saat meningkatkan ke rilis berikutnya.

  • Identitas terkelola:
  • Skrip penyebaran (dihapus secara otomatis setelah penyebaran berhasil):
    • <datafactory>_deleteOldResources – Menghapus sumber daya yang tidak digunakan dari penyebaran hub FinOps sebelumnya.
    • <datafactory>_stopTriggers – Menghentikan semua pemicu di hub menggunakan identitas triggerManager.
    • <datafactory>_startTriggers – Memulai semua pemicu di hub menggunakan identitas *triggerManager*.
    • <storage>_uploadSettings – Mengunggah file settings.json menggunakan identitas blobManager.

Output

Berikut adalah output yang dihasilkan oleh penerapan:

Keluaran Jenis Deskripsi Nilai
nama string Nama grup sumber daya.
Lokasi string Sumber daya lokasi sumber daya Azure disebarkan.
dataFactoryName string Nama Pabrik Data.
storageAccountId string ID sumber daya dari akun penyimpanan yang telah diterapkan.
namaAkunPenyimpanan string Nama akun penyimpanan yang dibuat untuk instans hub. Ini harus digunakan saat menyambungkan laporan Power BI toolkit FinOps ke data Anda.
urlPenyimpananUntukPowerBI string URL yang akan digunakan saat menyambungkan laporan Power BI kustom ke data Anda.
clusterId string ID sumber daya kluster Data Explorer.
clusterUri string URI dari kluster Data Explorer.
ingestionDbName string Nama database Data Explorer yang digunakan untuk menyerap data.
hubDbName string Nama database Data Explorer yang digunakan untuk mengkueri data.
managedIdentityId string ID objek identitas terkelola Data Factory. Ini akan diperlukan saat mengonfigurasi ekspor terkelola.
managedIdentityTenantId string ID penyewa Azure AD. Ini akan diperlukan saat mengonfigurasi ekspor terkelola.

Berikan umpan balik

Beri tahu kami bagaimana kinerja kami melalui ulasan singkat. Kami menggunakan ulasan ini untuk meningkatkan dan memperluas alat dan sumber daya FinOps.

Jika Anda mencari sesuatu yang spesifik, pilih yang sudah ada atau buat ide baru. Bagikan ide dengan orang lain untuk mendapatkan lebih banyak suara. Kami fokus pada ide-ide dengan suara terbanyak.


Pelajari lebih lanjut