Sdílet prostřednictvím


Manifest úlohy

Přehled

Soubory WorkloadManifest.xml a Item.xml jsou vyžadovány pro definici úlohy ve Fabric. Uchovávají základní nastavení konfigurace pracovního zatížení a položek pracovního zatížení pro nastavení. Fungují jako průvodce pro nastavení a správu pracovního zatížení. Pomáhají definovat, sdílet a zaznamenávat základní podrobnosti pracovního zatížení pro bezproblémovou integraci do systému Fabric.

V našem ukázkovém úložišti se vygeneruje .nupkg soubor ze souborů XML umístěných src/Packages/manifest ve složce během procesu sestavení. Tento zabalený soubor obsahuje všechny potřebné informace o vaší úloze. workload-dev-mode.json V souboru je pole s názvemManifestPackageFilePath, které by mělo odkazovat na tento nově vytvořený .nupkg soubor.

Proces nahrávání a registrace

  1. Ověřování uživatelů: Během vývoje se po spuštění ukázky zahájí proces nahrávání a registrace. Tím zajistíte správné přidružení úlohy k vaší identitě.
  2. Analýza manifestu: Nahraný manifest prochází analýzou a ověří jeho strukturu a obsah. Tento krok zajistí, že je manifest správně naformátovaný a připravený k dalšímu zpracování.
  3. Registrace zátěže: Pokud je parsování úspěšné, zátěž se zaregistruje ve Fabric. Základní podrobnosti konfigurace, jako je ID úlohy, se ukládají do databáze Prostředků infrastruktury a umožňují efektivní správu úloh.

Manifest úlohy – klíčové součásti manifestu

Manifest, jehož struktura je definována funkcí WorkloadDefinition.xsd, popisuje základní atributy úlohy, jako je název, aplikace a koncové body.

Atribut SchemaVersion

Reprezentuje publikovanou verzi schématu WorkloadDefinition.xsd pro Fabric.

Atribut WorkloadName

Jedinečný identifikátor vaší úlohy Vezměte na vědomí, že je nezbytné mít 'Org.' předpona pro workloadName tak, že název se skládá ze dvou slov s oddělovačem ".", např. "Org.MyWorkload". Jiné předpony jsou neplatné a způsobí selhání nahrávání. Toto bude vynuceno v následujících scénářích – připojení pro vývoj, nahrání testu.

Prvek verze

Verze manifestu by měla odpovídat předpisům SemVer .

Element konfigurace cloudové služby

Konfigurace služby vaší úlohy, v současnosti je podporována pouze jedna konfigurace.

Konfigurace aplikace Microsoft Entra ID [Azure Active Directory (AAD)]

Tato <AADApp> část nastaví aplikaci Microsoft Entra ID [Azure Active Directory (AAD)] pro procesy ověřování a autorizace. AppId představuje jedinečný identifikátor vaší aplikace, RedirectUri určuje URI, na který Microsoft Entra ID odesílá odpovědi na ověření, a ResourceId odkazuje na jedinečný identifikátor prostředku, ke kterému aplikace přistupuje. Další kontext k tomu, co ResourceIda AppIdRedirectUri představuje, najdete v dokumentaci k ověřování.

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

V dokumentaci k ověřování pro lepší pochopení AppId, ResourceId a RedirectUri a jejich významu v kontextu ověřovacích procesů.

Prvky ServiceEndpoint

Představuje konfiguraci konkrétního logického koncového bodu, například back-endový koncový bod, který zahrnuje implementaci rozhraní CRUD položek a rozhraní API úloh.

  • Konfigurace back-endového koncového bodu úlohy uvádí adresu URL back-endu vaší úlohy.
<ServiceEndpoint>
    <Name>Workload</Name>
    <Url>YourWorkloadBackendUrl</Url>
    <IsEndpointResolutionService>...
    <EndpointResolutionContext>...
</ServiceEndpoint>
  • <IsEndpointResolutionService> a <EndpointResolutionContext> jsou nastavené na základě toho, jestli váš koncový bod implementuje rozhraní API pro úlohu nebo pouze rezoluci koncového bodu.
  • Vyřešený koncový bod vrácený ze služby musí splňovat následující požadavky:
    • Doména vyřešeného koncového bodu se musí shodovat s doménou ID prostředku nalezeného v WorkloadManifest.xml.
    • Vyřešená adresa URL koncového bodu může mít před hlavní doménou až šest subdomén navíc.
    • Jakákoli subdoména za prvním segmentem musí patřit do seznamu ověřených domén tenanta vydavatele.

Příklad

Adresa URL ID zdroje:https://contoso.com/fe/be/Org.WorkloadSample (kde je doména contoso.com)

Ověřené domény u nájemníka:contoso.com, be.contoso.com, eastus.be.contoso.com

Platné vyřešené koncové body:

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

Neplatné vyřešené koncové body:

  • api.eastus.fe.contoso.com (neplatné, protože eastus.fe.contoso.com není ověřená doména)
  • contoso-dev.com (neplatné, protože contoso-dev.com není ověřená doména a také neodpovídá hlavní doméně ID prostředku)
  • Další informace o použití rozhraní API klienta sady funkcí pro řešení koncových bodů najdete v tématu Řešení koncových bodů.

Poznámka:

Vyřešení koncového bodu pro frontend není podporováno.

Manifest položek – Klíčové součásti manifestu

Manifest, jehož struktura je definována ItemDefinition.xsd, popisuje základní atributy položky úlohy, jako je název a definice úlohy.

Atribut SchemaVersion

Představuje publikovanou verzi Fabricova souboru ItemDefinition.xsd.

Atribut TypeName

Jedinečný identifikátor položky

Konfigurace plánovače úloh

Tato <JobScheduler> část zahrnuje různé prvky, které definují chování a nastavení plánování, sledování a správy úloh.

  • <OnDemandJobDeduplicateOptions> and <ScheduledJobDeduplicateOptions>: Definujte možnosti deduplikace pro úlohy na vyžádání a naplánované úlohy. Mezi možnosti patří None (bez odstranění duplicit), PerItem (jedna úloha se spustí pro stejnou položku a typ úlohy) a PerUser (jedna úloha se spustí pro stejného uživatele a položku).
  • <ItemJobTypes>: Obsahuje konfigurace pro různé typy úloh položek.
  • <ItemJobType>: Popisuje konkrétní typ úlohy.
  • <Name>: Název typu úlohy. Jako předponu musí být použit název položky.

Podívejme se například na naši ukázkovou úlohu, která zahrnuje tři konkrétní úlohy definované v <ItemJobTypes> této části:

<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>
  • Úloha CalculateAsText : Tento typ úlohy zpracovává textové výpočty, přebírá Operand1 a Operand2provádí vybranou operaci a ukládá výsledek v jezeře.
  • CalculateAsParquet Job : Speciálně přizpůsobená pro práci s daty Parquet, tento typ úlohy také přebírá Operand1 a Operand2, provádí vybranou operaci a ukládá výsledek do lakehouse, a to za formátem dat Parquet. Další informace o úlohách a související konfiguraci najdete v průvodci centrem monitorování .

V souhrnu slouží manifesty úloh a položek jako základní dokumenty pro přidávání vlastních úloh do Fabric. Proces ověřování aktivuje jednoduchou posloupnost akcí: nahrávání, analýzu a registraci, zaručuje správnou konfiguraci a efektivní správu úloh v ekosystému Azure.