Поделиться через


Манифест рабочей нагрузки

Обзор

Для WorkloadManifest.xml определения рабочей нагрузки в Fabric требуются файлы и Item.xml файлы. Они содержат базовые параметры конфигурации рабочих нагрузок и элементов рабочей нагрузки для настройки и управления ими, помогая определять, делиться и записывать важные сведения о рабочей нагрузке для плавной интеграции с Fabric.

В нашем примере репозитория .nupkg файл создается из XML-файлов, расположенных в папке src/Packages/manifest во время процесса сборки. Этот упакованный файл содержит все необходимые сведения о рабочей нагрузке. workload-dev-mode.json В файле есть поле, которое ManifestPackageFilePath должно указывать на созданный .nupkg файл.

Процесс отправки и регистрации

  1. Проверка подлинности пользователей: во время разработки после выполнения примера проверка подлинности инициирует процесс отправки и регистрации. Это гарантирует правильную связь рабочей нагрузки с удостоверением.
  2. Синтаксический анализ манифеста: загруженный манифест проходит синтаксический анализ для проверки его структуры и содержимого. Этот шаг гарантирует правильность форматирования манифеста и готовности к дальнейшей обработке.
  3. Регистрация рабочей нагрузки. Если синтаксический анализ выполнен успешно, рабочая нагрузка зарегистрирована в Fabric. Основные сведения о конфигурации, такие как идентификатор рабочей нагрузки, хранятся в базе данных Fabric, обеспечивая эффективное управление рабочими нагрузками.

Манифест рабочей нагрузки — ключевые компоненты манифеста

Манифест, структура которого определена в WorkloadDefinition.xsd, описывает основные атрибуты рабочей нагрузки, такие как имя, приложение и конечные точки.

Атрибут SchemaVersion

Представляет опубликованную версию WorkloadDefinition.xsd Fabric.

Атрибут WorkloadName

Уникальный идентификатор рабочей нагрузки. Обратите внимание, что необходимо иметь "Org". префикс для имени рабочей нагрузки, например имя состоит из двух слов с разделителем ., например "Org.MyWorkload". Другие префиксы недопустимы и вызывают сбой отправки. Это будет применяться в следующих сценариях: подключение разработки, отправка теста.

Version, элемент

Версия манифеста должна быть совместима с SemVer .

Элемент CloudServiceConfiguration

Конфигурация службы рабочей нагрузки в настоящее время поддерживается только одна конфигурация.

Идентификатор microsoft Entra [Azure Active Directory (AAD)] Конфигурация приложения

В <AADApp> этом разделе описано, как настроить приложение Microsoft Entra ID [Azure Active Directory (AAD)] для процессов проверки подлинности и авторизации. Представляет AppId уникальный идентификатор приложения, указывает URI, RedirectUri к которому будет отправляться идентификатор Microsoft Entra, и ResourceId указывает на уникальный идентификатор ресурса, к которому обращается приложение. Дополнительные сведения о том, чтоResourceId, AppIdи RedirectUri представить, см. в документации по проверке подлинности.

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

Ознакомьтесь с документацией по проверке подлинности для более глубокого AppIdпонимания и ResourceIdRedirectUri их важности в контексте процессов проверки подлинности.

Элементы ServiceEndpoint

Представляет конфигурацию конкретной логической конечной точки, например серверную конечную точку, включающую реализацию для API элементов CRUD и заданий.

  • Конфигурация серверной конечной точки рабочей нагрузки указывает внутренний URL-адрес рабочей нагрузки.
<ServiceEndpoint>
    <Name>Workload</Name>
    <Url>YourWorkloadBackendUrl</Url>
    <IsEndpointResolutionService>...
    <EndpointResolutionContext>...
</ServiceEndpoint>
  • <IsEndpointResolutionService> и EndpointResolutionContext задаются в зависимости от того, реализует ли конечная точка API рабочей нагрузки или только разрешение конечной точки. Дополнительные сведения о контексте разрешения и ответе см. в разделе "Разрешение конечных точек".

Примечание.

Разрешение конечных точек для frontend не поддерживается.

Манифест элемента — ключевые компоненты манифеста

Манифест, структура которого определяется itemDefinition.xsd, описывает основные атрибуты элемента рабочей нагрузки, такие как определения имен и заданий.

Атрибут SchemaVersion

Представляет опубликованную версию ItemDefinition.xsd Fabric.

Атрибут TypeName

Уникальный идентификатор элемента.

Настройка планировщика заданий

В <JobScheduler> разделе рассматриваются различные элементы, определяющие поведение и параметры планирования заданий, отслеживания и управления.

  • <OnDemandJobDeduplicateOptions> и <ScheduledJobDeduplicateOptions>: определение параметров дедупликации для заданий по запросу и запланированных элементов соответственно. Параметры включают None (без дедупликации), PerItem (одно задание выполняется для одного и того же элемента и типа задания) и PerUser (одно задание выполняется для одного пользователя и элемента).
  • <ItemJobTypes>: содержит конфигурации для разных типов заданий элементов.
  • <ItemJobType>: описывает определенный тип задания.
  • <Name>: имя типа задания. Необходимо использовать имя элемента в качестве префикса.

Например, рассмотрим пример рабочей нагрузки, которая включает три конкретных задания, определенные в <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 : этот тип задания обрабатывает текстовые вычисления, принимает Operand1 и Operand2выполняет выбранную операцию и сохраняет результат в lakehouse.
  • CalculateAsParquet Job : специально адаптировано для работы с данными Parquet, этот тип задания также принимает Operand1 и Operand2выполняет выбранную операцию и сохраняет результат в lakehouse, следуя формату данных Parquet. Дополнительные сведения о заданиях и связанной конфигурации см . в руководстве по центру мониторинга.

В итоге манифесты рабочей нагрузки и элементов служат основными документами для добавления пользовательских рабочих нагрузок в Fabric. Процесс проверки подлинности запускает простую последовательность действий: отправку, синтаксический анализ и регистрацию, гарантируя правильную настройку и эффективное управление рабочими нагрузками в экосистеме Azure.