Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
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, AppIde 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, ResourceIde 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 objeto e APIs de tarefas.
- 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>e<EndpointResolutionContext>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. - O ponto de extremidade resolvido que é retornado do serviço deve cumprir os seguintes requisitos:
- O domínio do ponto de extremidade resolvido deve corresponder ao domínio do ID do recurso encontrado no WorkloadManifest.xml.
- A URL do ponto de extremidade resolvido pode ter até seis subdomínios extras antes do domínio principal.
- Qualquer subdomínio após o primeiro segmento deve pertencer à lista de domínios verificados do tenant do editor.
Exemplo
URL de ID do recurso:https://contoso.com/fe/be/Org.WorkloadSample (onde o domínio é contoso.com)
Domínios verificados no tenant:contoso.com, be.contoso.com, eastus.be.contoso.com
Pontos de extremidade válidos resolvidos:
api.eastus.be.contoso.combe.contoso.comapi.be.contoso.com
Pontos finais resolvidos inválidos:
-
api.eastus.fe.contoso.com(inválido porqueeastus.fe.contoso.comnão é um domínio verificado) -
contoso-dev.com(inválido porquecontoso-dev.comnão é um domínio verificado e também não corresponde ao domínio principal do ID do recurso)
- Para obter mais informações sobre como usar a API do cliente de carga de trabalho para resolução de ponto de extremidade, consulte Resolução de ponto de extremidade.
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
Operand1eOperand2executando 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
Operand1eOperand2, 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.