Manifesto da carga de trabalho
Descrição geral
Os WorkloadManifest.xml
arquivos e Item.xml
são necessários para a definição da carga de trabalho no Fabric. Eles mantêm as definições básicas de configuração de Workload e Workload Items para configuração e atuam como um guia para configuração e gerenciamento de carga de trabalho, ajudando a definir, compartilhar e registrar detalhes essenciais da carga de trabalho para uma integração suave no Fabric.
Em nosso repositório de exemplo, um .nupkg
arquivo é gerado a partir dos arquivos XML localizados na pasta durante o src/Packages/manifest
processo de compilação. Este arquivo empacotado contém todas as informações necessárias sobre sua carga de trabalho. workload-dev-mode.json
No arquivo, há um campo chamado ManifestPackageFilePath
que deve apontar para esse arquivo recém-criado.nupkg
.
Processo de Upload e Registo
- Autenticação do usuário: Durante o desenvolvimento, uma vez executado o exemplo, sua autenticação inicia o processo de upload e registro. Isso garante a associação correta da carga de trabalho com sua identidade.
- Análise de manifesto: O manifesto carregado passa por análise para validar sua estrutura e conteúdo. Esta etapa garante que o manifesto esteja formatado corretamente e pronto para processamento posterior.
- Registro de carga de trabalho: se a análise for bem-sucedida, a carga de trabalho será registrada no Fabric. Detalhes essenciais de configuração, como o ID da carga de trabalho, são armazenados no banco de dados Fabric, permitindo um gerenciamento eficaz da carga de trabalho.
Manifesto da carga de trabalho - Principais componentes do manifesto
O manifesto, cuja estrutura é definida por WorkloadDefinition.xsd, descreve os principais atributos de uma carga de trabalho, como nome, aplicativo e pontos de extremidade.
Atributo SchemaVersion
Representa a versão publicada do Fabric WorkloadDefinition.xsd.
Atributo WorkloadName
O identificador exclusivo da sua carga de trabalho. Note que é necessário ter uma 'Org'. prefixo para workloadName tal que o nome consiste em duas palavras com separador '.' , por exemplo, 'Org.MyWorkload'. Outros prefixos são inválidos e causarão uma falha de carregamento. Isso será aplicado nos seguintes cenários - conexão de desenvolvimento, upload de teste.
Elemento Version
A versão do seu manifesto deve ser compatível com o SemVer .
Elemento CloudServiceConfiguration
A configuração de serviço da sua carga de trabalho, atualmente apenas uma configuração é suportada.
Configuração do aplicativo Microsoft Entra ID [Azure Ative Directory (AAD)]
A <AADApp>
seção configura o aplicativo Microsoft Entra ID [Azure Ative Directory (AAD)] para processos de autenticação e autorização. O AppId
representa o identificador exclusivo do seu aplicativo, especifica RedirectUri
o URI para o qual o ID do Microsoft Entra enviará a resposta de autenticação e aponta ResourceId
para o identificador exclusivo do recurso que o aplicativo está acessando. Para obter mais contexto sobre o que ResourceId
, AppId
e RedirectUri
representam, você pode consultar a documentação de autenticação.
<AADApp>
<AppId>YourApplicationId</AppId>
<RedirectUri>YourRedirectUri</RedirectUri>
<ResourceId>YourResourceId</ResourceId>
</AADApp>
Consulte a documentação de autenticação para obter uma compreensão mais profunda de AppId
, ResourceId
e RedirectUri
sua importância no contexto dos processos de autenticação.
Elementos ServiceEndpoint
Representar a configuração de um ponto de extremidade lógico específico, por exemplo, o ponto de extremidade de back-end que inclui implementação para CRUD de item e APIs de trabalho.
- A configuração do ponto de extremidade de back-end da carga de trabalho indica a URL de back-end da sua carga de trabalho.
<ServiceEndpoint>
<Name>Workload</Name>
<Url>YourWorkloadBackendUrl</Url>
<IsEndpointResolutionService>...
<EndpointResolutionContext>...
</ServiceEndpoint>
<IsEndpointResolutionService>
eEndpointResolutionContext
são definidos com base no fato de seu endpoint implementar a API de carga de trabalho ou apenas a resolução do ponto de extremidade. Consulte Resolução de pontos finais para obter informações detalhadas sobre o contexto e a resposta da resolução.
Nota
Não há suporte para resolução de ponto final para Frontend.
Manifesto do Item - Principais Componentes do Manifesto
O manifesto, cuja estrutura é definida por ItemDefinition.xsd, descreve os principais atributos do item de uma carga de trabalho, como definições de nome e tarefa.
Atributo SchemaVersion
Representa a versão publicada ItemDefinition.xsd do Fabric.
Atributo TypeName
O identificador exclusivo do seu item.
Configuração do Agendador de Tarefas
A <JobScheduler>
seção engloba vários elementos que definem o comportamento e as configurações de agendamento, acompanhamento e gerenciamento de tarefas.
<OnDemandJobDeduplicateOptions>
e<ScheduledJobDeduplicateOptions>
: Definir opções de desduplicação para trabalhos de item sob demanda e agendados, respectivamente. As opções incluemNone
(sem desduplicação),PerItem
(uma execução de trabalho para o mesmo item e tipo de trabalho) ePerUser
(uma execução de trabalho para o mesmo usuário e item).<ItemJobTypes>
: Contém configurações para diferentes tipos de trabalho de item.<ItemJobType>
: Descreve um tipo de trabalho específico.<Name>
: O nome do tipo de trabalho. Deve usar o nome do item como um prefixo.
Por exemplo, vamos considerar nossa carga de trabalho de exemplo, que inclui três trabalhos específicos definidos na <ItemJobTypes>
seção:
<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>
- Trabalho CalculateAsText : Este tipo de trabalho lida com cálculos baseados em texto, tomando
Operand1
eOperand2
executando a operação selecionada e salvando o resultado na casa do lago. - CalculateAsParquet Job : Especificamente adaptado para trabalhar com dados do Parquet, este tipo de trabalho também leva
Operand1
eOperand2
, executa a operação selecionada, e armazena o resultado na casa do lago, seguindo o formato de dados Parquet. Consulte o guia do hub de monitoramento para obter mais informações sobre trabalhos e configuração relacionada.
Em resumo, os Manifestos de Carga de Trabalho e de Item servem como documentos fundamentais para adicionar cargas de trabalho personalizadas ao Fabric. O processo de autenticação dispara uma sequência direta de ações: upload, análise e registro, garantindo a configuração adequada e o gerenciamento eficiente da carga de trabalho dentro do ecossistema do Azure.