Register-ServiceFabricApplicationType

Регистрирует тип приложения Service Fabric.

Синтаксис

Register-ServiceFabricApplicationType
        [-ApplicationPathInImageStore] <String>
        [-ApplicationPackageCleanupPolicy <ApplicationPackageCleanupPolicy>]
        [-Async]
        [-TimeoutSec <Int32>]
        [<CommonParameters>]
Register-ServiceFabricApplicationType
        [-ApplicationPackageDownloadUri] <Uri>
        -ApplicationTypeName <String>
        -ApplicationTypeVersion <String>
        [-Async]
        [-TimeoutSec <Int32>]
        [<CommonParameters>]

Описание

Командлет Register-ServiceFabricApplicationType регистрирует тип приложения Service Fabric. Дополнительные сведения о развертывании приложения Service Fabric.

Пакет приложения может существовать в относительном расположении в хранилище образов или может быть файлом sfpkg , ранее отправленным во внешнее расположение.

При использовании относительного пути к хранилищу пакет приложения должен существовать в хранилище образов. Пакет можно скопировать в хранилище образов с помощью Copy-ServiceFabricApplicationPackage.

При использовании sfpkg файла из внешнего хранилища подготовка должна предоставить URI скачивания, куда sfpkg был отправлен ранее, а также сведения о типе приложения. Файл sfpkg — это ZIP-архив, содержащий изначальный пакет приложения с расширением .sfpkg. Внутри ZIP-архива пакет приложения может быть сжатым или несжатым. Сжатие пакета приложения внутри ZIP-файла выполняется при коде, пакете и пакетах данных.

Чтобы создать , sfpkgначните с папки, содержащей исходный пакет приложения. При необходимости сжать пакет с помощью Copy-ServiceFabricApplicationPackage с параметрами -CompressPackage и -SkipCopy. Затем с помощью служебной программы запакуйте папку с расширением .sfpkg. Например, используйте ZipFile.CreateFromDirectory в папке пакета приложения.

После регистрации типа приложения можно использовать командлет New-ServiceFabricApplication для создания экземпляра приложения. Используйте командлет Start-ServiceFabricApplicationUpgrade для обновления существующего приложения.

Если тип приложения с указанной версией больше не нужен, его можно отменить с помощью командлета Unregister-ServiceFabricApplicationType .

Чтобы управлять кластерами Service Fabric, запустите Windows PowerShell с помощью параметра "Запуск от имени администратора". Перед выполнением любой операции в кластере Service Fabric установите подключение к кластеру с помощью командлета Connect-ServiceFabricCluster .

Примеры

Пример 1. Регистрация типа приложения с относительным путем хранилища образов

PS C:\> Copy-ServiceFabricApplicationPackage -ApplicationPackagePath "c:\work\PersistentToDoListService" -ImageStoreConnectionString "file:C:\SfDevCluster\Data\ImageStoreShare" -ApplicationPackagePathInImageStore "PersistentToDoListService"
PS C:\> Register-ServiceFabricApplicationType -ApplicationPathInImageStore "PersistentToDoListService"

Copy-ServiceFabricApplicationPackage копирует пакет приложения, найденный в папке "c:\work\PersistentToDoListService" в хранилище образов. Пакет копируется по относительному пути PersistentToDoListService в хранилище образов.

Команда Register-ServiceFabricApplicationType регистрирует тип приложения, найденный в относительном пути PersistentToDoListService.

Пример 2. Регистрация типа приложения с использованием относительного пути к хранилищу изображений

PS C:\> Copy-ServiceFabricApplicationPackage -ApplicationPackagePath "c:\work\PersistentToDoListService" -ImageStoreConnectionString "fabric:ImageStore" -ApplicationPackagePathInImageStore "PersistentToDoListService" -CompressPackage
PS C:\> Register-ServiceFabricApplicationType -ApplicationPathInImageStore "PersistentToDoListService" -Async
PS C:\> Get-ServiceFabricApplicationType

Copy-ServiceFabricApplicationPackage копирует пакет приложения, найденный в папке "c:\work\PersistentToDoListService" в хранилище образов. Пакет приложения копируется по относительному пути PersistentToDoListService в хранилище образов. Командлет использует сжатие для уменьшения размера пакета.

Команда Register-ServiceFabricApplicationType регистрирует тип приложения, найденный в относительном пути PersistentToDoListService. Регистрация выполняется асинхронно и возвращается, как только команда принимается кластером.

Get-ServiceFabricApplicationType получает типы приложений, зарегистрированные в кластере. Каждый тип приложения включает состояние регистрации. Командлет можно использовать для определения завершения регистрации.

Пример 3. Регистрация типа приложения для большого пакета приложения с относительным путем хранилища образов

PS C:\> Copy-ServiceFabricApplicationPackage -ApplicationPackagePath "c:\work\PersistentToDoListService" -ImageStoreConnectionString "fabric:ImageStore" -ApplicationPackagePathInImageStore "PersistentToDoListService" -CompressPackage -TimeoutSec 2700
PS C:\> Register-ServiceFabricApplicationType -ApplicationPathInImageStore "PersistentToDoListService" -TimeoutSec 2700

Copy-ServiceFabricApplicationPackage копирует пакет приложения, найденный в папке c:\work\PersistentToDoListService, в хранилище образов в хранилище образов PersistentToDoListService относительное расположение. Так как исходный пакет очень велик, команда сжимает его и включает более высокое время ожидания, чтобы разрешить достаточно времени для копирования.

Команда Register-ServiceFabricApplicationType регистрирует тип приложения, найденный в относительном пути PersistentToDoListService. Команда включает более высокое время ожидания, позволяющее завершить работу, даже если пакет приложения велик.

Пример 4. Регистрация типа приложения из внешнего хранилища

PS C:\> Register-ServiceFabricApplicationType -ApplicationPackageDownloadUri "https://sftestresources.blob.core.windows.net:443/sfpkgholder/MyAppPackage.sfpkg" -ApplicationTypeName MyApp -ApplicationTypeVersion V1 -TimeoutSec 2700

Регистрирует пакет приложения, найденный по указанному URI. Пакет приложения должен быть отправлен ранее в этом расположении и должен разрешать доступ на чтение. Так как пакет может быть большим, команда указывает большое время ожидания подготовки.

Пример 5. Регистрация типа приложения из асинхронного внешнего хранилища

PS C:\> Register-ServiceFabricApplicationType -ApplicationPackageDownloadUri "https://sftestresources.blob.core.windows.net:443/sfpkgholder/MyAppPackage.sfpkg" -ApplicationTypeName MyApp -ApplicationTypeVersion V1 -Async
PS C:\> Get-ServiceFabricApplicationType -ApplicationTypeName MyApp -ApplicationTypeVersion V1

Регистрирует пакет приложения, найденный по указанному URI. Пакет приложения должен быть отправлен ранее в этом расположении и должен разрешать доступ на чтение. Так как указан параметр -Async, команда возвращается сразу после того, как кластер принимает его. Get-ServiceFabricApplicationType получает типы приложений, зарегистрированные в кластере, которые соответствуют фильтру. Каждый тип приложения включает состояние регистрации. Командлет можно использовать для выполнения регистрации и определения завершения регистрации.

Пример 6. Регистрация типа приложения с относительным путем хранилища образов и автоматической очисткой пакетов

PS C:\> Copy-ServiceFabricApplicationPackage -ApplicationPackagePath "c:\work\PersistentToDoListService"

PS C:\> Register-ServiceFabricApplicationType -ApplicationPathInImageStore "PersistentToDoListService" -ApplicationPackageCleanupPolicy Automatic

[Copy-ServiceFabricApplicationPackage](./Copy-ServiceFabricApplicationPackage.yml) copies the application package found in the "c:\work\PersistentToDoListService" folder to the image store. The package is copied at the relative path "PersistentToDoListService" in image store.

[Register-ServiceFabricApplicationType](./Register-ServiceFabricApplicationType.yml) command registers the application type found in the relative path "PersistentToDoListService" and deletes the application package "PersistentToDoListService" in the image store after successfully registering the application type. Deleting the application package from the image store after [Register-ServiceFabricApplicationType](./Register-ServiceFabricApplicationType.yml) command is recommended because it removes the temporary package as soon as it's not needed, which ensures that disk space is not consumed unnecessarily.

Параметры

-ApplicationPackageCleanupPolicy

Определяет политику очистки пакета приложения, используемого для регистрации типа приложения. Если они не очищены, пакеты приложений потребляют место на диске и могут привести к сбоям. Этот параметр указывает, как управлять пакетом приложения после успешной регистрации типа приложения (успешной подготовки).

Если задано значение Automatic, среда выполнения Service Fabric определяет время очистки пакета приложения. Текущая реализация среды выполнения удаляет пакет приложения после успешной регистрации типа приложения. Если регистрация завершается сбоем, пакет приложения не удаляется из хранилища образов.

Если задано значение Manual, пакет приложения не удаляется из хранилища образов, и пользователям необходимо явно вызвать командлет Remove-ServiceFabricApplicationPackage , чтобы удалить его из хранилища образов.

Кластер Service Fabric настроен с помощью политики очистки. Чтобы использовать политику кластера, укажите Default параметр. Конфигурация кластера CleanupApplicationPackageOnProvisionSuccess в Management разделе определяет, как должна выполняться очистка. Если задано значение true, пакеты приложений автоматически удаляются средой выполнения Service Fabric после успешной подготовки. Если задано значение false, пакет приложения не удаляется из хранилища образов. Значение по умолчанию для этой конфигурации кластера имеет значение false до версии 6.4, но для будущих выпусков планируется задать значение true.

Type:ApplicationPackageCleanupPolicy
Accepted values:Invalid, Default, Automatic, Manual
Position:Named
Default value:Default
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationPackageDownloadUri

Представляет путь к пакету sfpkg приложения, из которого пакет приложения можно скачать с помощью протоколов HTTP или HTTPS. Пакет необходимо заранее отправить в это внешнее расположение. Для скачивания файла с помощью Service Fabric необходимо, чтобы URI предоставлял доступ на чтение. Файл sfpkg представляет собой ZIP-файл, содержащий исходный пакет приложения. Внутри ZIP-архива пакет приложения может быть сжатым или несжатым. Сжатие пакета приложения внутри ZIP-файла выполняется при коде, пакете и пакетах данных. Это сжатие можно достичь с помощью Copy-ServiceFabricApplicationPackage с параметром -CompressPackage. Файл sfpkg должен иметь расширение SFPKG.

Type:Uri
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationPathInImageStore

Указывает относительный путь к пакету типа приложения в хранилище образов. Этот путь был указан командлетом Copy-ServiceFabricApplicationPackage при копировании пакета приложения в хранилище образов.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationTypeName

Указывает имя типа приложения, как оно определено в манифесте приложения. Имя типа приложения и версия типа приложения однозначно определяют тип приложения. Это необходимо при подготовке sfpkg из внешнего хранилища.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationTypeVersion

Указывает версию типа приложения, так как она была определена в манифесте приложения. Имя типа приложения и версия типа приложения однозначно определяют тип приложения. Это необходимо при подготовке sfpkg файла пакета приложения из внешнего хранилища.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Async

Команда возвращается, как только запрос на регистрацию принимается кластером. Используйте команду Get-ServiceFabricApplicationType для запроса состояния запроса на регистрацию. Использование этого параметра позволяет избежать необходимости предоставлять большие значения -TimeoutSec при регистрации больших пакетов приложений.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TimeoutSec

Указывает период времени ожидания (в секундах) для операции.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

None

Выходные данные

System.Object