Bagikan melalui


Manifes Beban Kerja

Gambaran Umum

File WorkloadManifest.xml dan Item.xml diperlukan untuk definisi beban kerja di Fabric. Mereka memegang pengaturan konfigurasi Workload dan Workload Items dasar untuk penyiapan dan mereka bertindak sebagai panduan untuk penyiapan dan manajemen beban kerja, membantu menentukan, berbagi, dan merekam detail beban kerja penting untuk integrasi yang lancar ke Fabric.

Di repositori .nupkg sampel kami, file dihasilkan dari file XML yang terletak di src/Packages/manifest folder selama proses build. File paket ini menyimpan semua informasi yang diperlukan tentang beban kerja Anda. workload-dev-mode.json Dalam file, ada bidang yang disebut ManifestPackageFilePath yang harus menunjuk ke file yang baru dibuat .nupkg ini.

Proses Unggah dan Pendaftaran

  1. Autentikasi Pengguna: Selama pengembangan, setelah menjalankan sampel, autentikasi Anda memulai proses pengunggahan dan pendaftaran. Ini memastikan asosiasi beban kerja yang benar dengan identitas Anda.
  2. Penguraian Manifes: Manifes yang diunggah mengalami penguraian untuk memvalidasi struktur dan kontennya. Langkah ini memastikan bahwa manifes diformat dengan benar dan siap untuk diproses lebih lanjut.
  3. Pendaftaran Beban Kerja: Jika penguraian berhasil, beban kerja terdaftar di Fabric. Detail konfigurasi penting, seperti ID beban kerja, disimpan dalam database Fabric, memungkinkan manajemen beban kerja yang efektif.

Manifes Beban Kerja - Komponen Manifes Kunci

Manifes, yang strukturnya didefinisikan oleh WorkloadDefinition.xsd, menguraikan atribut inti beban kerja, seperti nama, aplikasi, dan titik akhir.

Atribut SchemaVersion

Mewakili versi yang diterbitkan WorkloadDefinition.xsd Fabric.

Atribut WorkloadName

Pengidentifikasi unik beban kerja Anda. Perhatikan bahwa diperlukan untuk memiliki 'Org.' awalan untuk workloadName seperti nama tersebut terdiri dari dua kata dengan pemisah '.', misalnya 'Org.MyWorkload'. Awalan lain tidak valid dan akan menyebabkan kegagalan unggahan. Ini akan diberlakukan dalam skenario berikut: koneksi pengembang, unggahan uji.

Elemen Versi

Versi manifes Anda, harus sesuai dengan SemVer .

Elemen CloudServiceConfiguration

Konfigurasi layanan beban kerja Anda, saat ini hanya satu konfigurasi yang didukung.

Microsoft Entra ID [Azure Active Directory (AAD)] Konfigurasi Aplikasi

Bagian ini <AADApp> menyiapkan aplikasi Microsoft Entra ID [Azure Active Directory (AAD)] untuk proses autentikasi dan otorisasi. AppId mewakili pengidentifikasi unik untuk aplikasi Anda, RedirectUri menentukan URI tempat ID Microsoft Entra akan mengirim respons autentikasi, dan ResourceId poin ke pengidentifikasi unik untuk sumber daya yang diakses aplikasi. Untuk konteks selengkapnya tentang apa , ResourceId, AppIddan RedirectUri representasikan, Anda dapat merujuk ke dokumentasi autentikasi.

<AADApp>
    <AppId>YourApplicationId</AppId>
    <RedirectUri>YourRedirectUri</RedirectUri>
    <ResourceId>YourResourceId</ResourceId>
</AADApp>

Lihat dokumentasi autentikasi untuk pemahaman yang lebih mendalam tentang AppId, ResourceId, dan RedirectUri signifikansinya dalam konteks proses autentikasi.

Elemen ServiceEndpoint

Mewakili konfigurasi dari titik akhir logis tertentu, misalnya, titik akhir backend yang mencakup implementasi untuk item CRUD dan API tugas.

  • Konfigurasi untuk titik akhir backend beban kerja menyatakan URL backend beban kerja Anda.
<ServiceEndpoint>
    <Name>Workload</Name>
    <Url>YourWorkloadBackendUrl</Url>
    <IsEndpointResolutionService>...
    <EndpointResolutionContext>...
</ServiceEndpoint>
  • <IsEndpointResolutionService> dan <EndpointResolutionContext> ditetapkan berdasarkan apakah titik akhir Anda mengimplementasikan API beban kerja atau hanya resolusi titik akhir.
  • Titik akhir yang telah ditentukan yang dikembalikan dari layanan harus memenuhi persyaratan berikut:
    • Domain titik akhir yang diselesaikan harus cocok dengan domain ID sumber daya yang ditemukan di WorkloadManifest.xml.
    • URL titik akhir yang diselesaikan mungkin memiliki hingga enam subdomain tambahan sebelum domain utama.
    • Subdomain apa pun setelah segmen pertama harus termasuk dalam daftar domain terverifikasi penyewa penerbit.

Contoh

URL ID Sumber Daya:https://contoso.com/fe/be/Org.WorkloadSample (di mana domainnya contoso.com)

Domain terverifikasi di penyewa:contoso.com, be.contoso.com, eastus.be.contoso.com

Titik akhir terselesaikan yang valid:

  • api.eastus.be.contoso.com
  • be.contoso.com
  • api.be.contoso.com

Titik akhir yang diselesaikan tidak valid:

  • api.eastus.fe.contoso.com (tidak valid karena eastus.fe.contoso.com bukan domain terverifikasi)
  • contoso-dev.com (tidak valid karena contoso-dev.com bukan domain terverifikasi, dan juga tidak cocok dengan domain utama ID sumber daya)
  • Untuk informasi selengkapnya tentang menggunakan API klien beban kerja untuk resolusi titik akhir, lihat Resolusi Titik Akhir.

Catatan

Resolusi titik akhir untuk Frontend tidak didukung.

Manifes Item - Komponen Manifes Kunci

Manifes, yang strukturnya didefinisikan oleh ItemDefinition.xsd, menguraikan atribut inti item beban kerja, seperti nama dan definisi pekerjaan.

Atribut SchemaVersion

Mewakili versi yang diterbitkan ItemDefinition.xsd Fabric.

Atribut TypeName

Pengidentifikasi unik item Anda.

Konfigurasi Penjadwal Pekerjaan

Bagian ini <JobScheduler> mencakup berbagai elemen yang menentukan perilaku dan pengaturan penjadwalan, pelacakan, dan manajemen pekerjaan.

  • <OnDemandJobDeduplicateOptions> dan <ScheduledJobDeduplicateOptions>: Tentukan opsi deduplikasi untuk pekerjaan item sesuai permintaan dan terjadwal, masing-masing. Opsi termasuk None (tidak ada deduplikasi), PerItem (satu pekerjaan berjalan untuk item dan jenis pekerjaan yang sama), dan PerUser (satu pekerjaan berjalan untuk pengguna dan item yang sama).
  • <ItemJobTypes>: Berisi konfigurasi untuk jenis pekerjaan item yang berbeda.
  • <ItemJobType>: Menjelaskan jenis pekerjaan tertentu.
  • <Name>: Nama jenis pekerjaan. Harus menggunakan nama Item sebagai awalan.

Misalnya, mari kita pertimbangkan beban kerja sampel kita, yang mencakup tiga pekerjaan tertentu yang ditentukan dalam bagian <ItemJobTypes> :

<JobScheduler>
    <OnDemandJobDeduplicateOptions>PerItem</OnDemandJobDeduplicateOptions>
    <ScheduledJobDeduplicateOptions>PerItem</ScheduledJobDeduplicateOptions>
    <ItemJobTypes>
    <ItemJobType Name="Org.WorkloadSample.SampleWorkloadItem.ScheduledJob" />
    <ItemJobType Name="Org.WorkloadSample.SampleWorkloadItem.CalculateAsText" />
    <ItemJobType Name="Org.WorkloadSample.SampleWorkloadItem.CalculateAsParquet" />
    </ItemJobTypes>
</JobScheduler>
  • CalculateAsText Job : Jenis pekerjaan ini menangani perhitungan berbasis teks, mengambil Operand1 dan Operand2, melakukan operasi yang dipilih, dan menyimpan hasilnya di lakehouse.
  • CalculateAsParquet Job : Khusus disesuaikan untuk bekerja dengan data Parquet, jenis pekerjaan ini juga mengambil Operand1 dan Operand2, melakukan operasi yang dipilih, dan menyimpan hasilnya di lakehouse, mengikuti format data Parquet. Lihat panduan hub pemantauan untuk informasi selengkapnya tentang pekerjaan dan konfigurasi terkait.

Singkatnya, Beban Kerja dan Manifes Item berfungsi sebagai dokumen dasar untuk menambahkan beban kerja kustom ke Fabric. Proses autentikasi memicu urutan tindakan yang mudah: mengunggah, mengurai, dan mendaftar, menjamin konfigurasi yang tepat dan manajemen beban kerja yang efisien dalam ekosistem Azure.