Dela via


Arbetsbelastningsmanifest

Översikt

Filerna WorkloadManifest.xml och Item.xml krävs för arbetsbelastningsdefinitionen i Infrastrukturresurser. De innehåller de grundläggande konfigurationsinställningarna för arbetsbelastnings- och arbetsbelastningsobjekt för konfiguration och fungerar som en guide för konfiguration och hantering av arbetsbelastningar, vilket hjälper till att definiera, dela och registrera viktig arbetsbelastningsinformation för smidig integrering i Infrastrukturresurser.

I vår exempellagringsplats genereras en .nupkg fil från XML-filerna som finns i src/Packages/manifest mappen under byggprocessen. Den här paketerade filen innehåller all nödvändig information om din arbetsbelastning. workload-dev-mode.json I filen finns ett fält som heter ManifestPackageFilePath som ska peka på den nyligen skapade .nupkg filen.

Uppladdnings- och registreringsprocess

  1. Användarautentisering: När du har kört exemplet under utvecklingen initierar din autentisering uppladdnings- och registreringsprocessen. Detta säkerställer rätt association av arbetsbelastningen med din identitet.
  2. Manifestparsing: Det uppladdade manifestet parsas för att verifiera dess struktur och innehåll. Det här steget säkerställer att manifestet är korrekt formaterat och redo för vidare bearbetning.
  3. Arbetsbelastningsregistrering: Om parsningen lyckas registreras arbetsbelastningen i Infrastrukturresurser. Viktig konfigurationsinformation, till exempel arbetsbelastnings-ID, lagras i Fabric-databasen, vilket möjliggör effektiv arbetsbelastningshantering.

Arbetsbelastningsmanifest – viktiga manifestkomponenter

Manifestet, vars struktur definieras av WorkloadDefinition.xsd, beskriver kärnattribut för en arbetsbelastning, till exempel namn, program och slutpunkter.

SchemaVersion-attribut

Representerar fabrics WorkloadDefinition.xsd-publicerade version.

WorkloadName-attribut

Din arbetsbelastnings unika identifierare. Observera att det är nödvändigt att ha en "organisation". prefix för workloadName så att namnet består av två ord med "." avgränsare, t.ex. "Org.MyWorkload". Andra prefix är ogiltiga och orsakar ett uppladdningsfel. Detta tillämpas i följande scenarier – utvecklingsanslutning, Testuppladdning.

Versionselement

Manifestets version bör vara SemVer-kompatibel .

CloudServiceConfiguration-element

Arbetsbelastningens tjänstkonfiguration, för närvarande stöds bara en konfiguration.

Microsoft Entra ID [Azure Active Directory (AAD)] Programkonfiguration

I <AADApp> avsnittet konfigureras Microsoft Entra-ID [Azure Active Directory (AAD)] för autentiserings- och auktoriseringsprocesser. AppId Representerar den unika identifieraren för ditt program, RedirectUri anger den URI som Microsoft Entra-ID ska skicka autentiseringssvaret till och ResourceId pekar på den unika identifieraren för den resurs som programmet kommer åt. Mer kontext om vad , och representerar, finns i autentiseringsdokumentationen.RedirectUri AppIdResourceId

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

I dokumentationen för autentisering finns en djupare förståelse för AppId, ResourceIdoch RedirectUri deras betydelse i samband med autentiseringsprocesser.

ServiceEndpoint-element

Representerar konfigurationen av en specifik logisk slutpunkt, till exempel serverdelsslutpunkten som innehåller implementering för objekt-CRUD och jobb-API:er.

  • Konfigurationen för arbetsbelastningens serverdelsslutpunkt anger serverdels-URL:en för din arbetsbelastning.
<ServiceEndpoint>
    <Name>Workload</Name>
    <Url>YourWorkloadBackendUrl</Url>
    <IsEndpointResolutionService>...
    <EndpointResolutionContext>...
</ServiceEndpoint>
  • <IsEndpointResolutionService> och EndpointResolutionContext anges baserat på om slutpunkten implementerar arbetsbelastnings-API:et eller endast slutpunktsmatchningen. Se Slutpunktsmatchning för detaljerad information om lösningskontexten och svaret.

Kommentar

Slutpunktsmatchning för klientdelen stöds inte.

Objektmanifest – Komponenter för nyckelmanifest

Manifestet, vars struktur definieras av ItemDefinition.xsd, beskriver kärnattribut för en arbetsbelastnings objekt, till exempel namn- och jobbdefinitioner.

SchemaVersion-attribut

Representerar fabrics ItemDefinition.xsd-publicerade version.

TypeName-attribut

Objektets unika identifierare.

Konfiguration av jobbschemaläggare

Avsnittet <JobScheduler> innehåller olika element som definierar beteendet och inställningarna för schemaläggning, spårning och hantering av jobb.

  • <OnDemandJobDeduplicateOptions> och <ScheduledJobDeduplicateOptions>: Definiera dedupliceringsalternativ för jobb på begäran respektive schemalagda objekt. Alternativen är None (ingen deduplicering), PerItem (ett jobb körs för samma objekt och jobbtyp) och PerUser (ett jobb körs för samma användare och objekt).
  • <ItemJobTypes>: Innehåller konfigurationer för olika objektjobbtyper.
  • <ItemJobType>: Beskriver en specifik jobbtyp.
  • <Name>: Namnet på jobbtypen. Objektets namn måste användas som prefix.

Låt oss till exempel överväga vår exempelarbetsbelastning, som innehåller tre specifika jobb som definierats i <ItemJobTypes> avsnittet:

<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-jobb : Den här jobbtypen hanterar textbaserade beräkningar, tar Operand1 och Operand2, utför den valda åtgärden och sparar resultatet i lakehouse.
  • CalculateAsParquet Job : Specifikt skräddarsytt för att arbeta med Parquet-data, den här jobbtypen tar Operand1 också och Operand2, utför den valda åtgärden och lagrar resultatet i lakehouse, enligt Parquet-dataformatet. Mer information om jobb och relaterad konfiguration finns i guiden för övervakningshubben.

Sammanfattningsvis fungerar arbetsbelastnings- och objektmanifesten som grundläggande dokument för att lägga till anpassade arbetsbelastningar i Infrastrukturresurser. Autentiseringsprocessen utlöser en enkel sekvens med åtgärder: ladda upp, parsa och registrera, garantera korrekt konfiguration och effektiv arbetsbelastningshantering i Azure-ekosystemet.