你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Register-ServiceFabricApplicationType

注册 Service Fabric 应用程序类型。

语法

UseStoreRelativePath (默认值)

Register-ServiceFabricApplicationType
    [-ApplicationPathInImageStore] <String>
    [-ApplicationPackageCleanupPolicy <ApplicationPackageCleanupPolicy>]
    [-Async]
    [-TimeoutSec <Int32>]
    [<CommonParameters>]

UseExternalSfpkg

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

说明

Register-ServiceFabricApplicationType cmdlet 注册 Service Fabric 应用程序类型。 详细了解 Service Fabric 应用程序部署

应用程序包可以存在于映像存储中的相对位置,也可以是以前上传到外部位置的 sfpkg 文件。

使用存储相对路径时,应用程序包必须存在于映像存储中。 可以使用 Copy-ServiceFabricApplicationPackage将包复制到映像存储。

使用外部存储中的 sfpkg 文件时,预配必须提供以前上传 sfpkg 的下载 URI 以及应用程序类型信息。 sfpkg 文件是包含初始应用程序包且扩展名为“.sfpkg”的 zip 文件。 在 zip 中,可以压缩或解压缩应用程序包。 压缩 zip 中的应用程序包在代码、包和数据包中完成。

若要创建 sfpkg,请从包含原始应用程序包的文件夹开始。 如果需要,请使用 Copy-ServiceFabricApplicationPackage 压缩包, 开关 -CompressPackage 和 -SkipCopy。 然后,使用实用工具压缩扩展名为“.sfpkg”的文件夹。 例如,在应用程序包文件夹中使用 ZipFile.CreateFromDirectory

注册应用程序类型后,可以使用 New-ServiceFabricApplication cmdlet 来创建应用程序实例。 使用 Start-ServiceFabricApplicationUpgrade cmdlet 升级现有应用程序。

不再需要具有指定版本的应用程序类型时,可以使用 Unregister-ServiceFabricApplicationType cmdlet 注销它。

若要管理 Service Fabric 群集,请使用“以管理员身份运行”选项启动 Windows PowerShell。 在 Service Fabric 群集上执行任何操作之前,请使用 Connect-ServiceFabricCluster cmdlet 建立与群集的连接。

示例

示例 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”处复制。 该 cmdlet 使用压缩来减小包大小。

Register-ServiceFabricApplicationType 命令注册在相对路径“PersistentToDoListService”中找到的应用程序类型。 注册已完成异步,并在群集接受命令后立即返回。

Get-ServiceFabricApplicationType 获取群集中注册的应用程序类型。 每个应用程序类型都包含注册状态。 该 cmdlet 可用于确定注册完成的时间。

示例 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 中找到的应用程序包。 应用程序包必须以前在该位置上传,并且必须允许 READ 访问。 由于包可能很大,因此该命令指定大型预配超时。

示例 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 中找到的应用程序包。 应用程序包必须以前在该位置上传,并且必须允许 READ 访问。 由于指定了 -Async,因此该命令在群集接受它后立即返回。 Get-ServiceFabricApplicationType 获取与筛选器匹配的群集中注册的应用程序类型。 每个应用程序类型都包含注册状态。 该 cmdlet 可用于跟踪注册进度,并确定注册完成时间。

示例 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 cmdlet 以将其从映像存储中删除。

Service Fabric 群集配置了清理策略。 若要使用群集的策略,请指定 Default 选项。 群集配置 CleanupApplicationPackageOnProvisionSuccessManagement 部分确定应如何进行清理。 如果设置为 true,则成功预配后 Service Fabric 运行时会自动删除应用程序包。 如果设置为 false,则不会从映像存储中删除应用程序包。 此群集配置的默认值已设置为 false(最大为 v6.4),但计划将其设置为 true 以供将来的版本使用。

参数属性

类型:ApplicationPackageCleanupPolicy
默认值:Default
接受的值:Invalid, Default, Automatic, Manual
支持通配符:False
不显示:False

参数集

UseStoreRelativePath
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ApplicationPackageDownloadUri

表示使用 HTTP 或 HTTPS 协议从中下载应用程序包 sfpkg 应用程序包的路径。 包以前必须上传到此外部位置。 URI 必须允许读取访问,以便 Service Fabric 可以下载该文件。 sfpkg 文件是包含初始应用程序包的 zip 文件。 在 zip 中,可以压缩或解压缩应用程序包。 压缩 zip 中的应用程序包在代码、包和数据包中完成。 可以使用 Copy-ServiceFabricApplicationPackage 与 switch -CompressPackage 来实现此压缩。 sfpkg 文件必须具有扩展名“.sfpkg”。

参数属性

类型:Uri
默认值:None
支持通配符:False
不显示:False

参数集

UseExternalSfpkg
Position:0
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ApplicationPathInImageStore

指定映像存储区中应用程序类型包的相对路径。 当应用程序包复制到映像存储时,Copy-ServiceFabricApplicationPackage cmdlet 指定了此路径。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

UseStoreRelativePath
Position:0
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ApplicationTypeName

指定应用程序类型名称,因为它在应用程序清单中定义。 应用程序类型名称和应用程序类型版本唯一标识应用程序类型。 从外部存储预配 sfpkg 时,需要这样做。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

UseExternalSfpkg
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ApplicationTypeVersion

指定应用程序类型版本,因为它是在应用程序清单中定义的。 应用程序类型名称和应用程序类型版本唯一标识应用程序类型。 从外部存储预配 sfpkg 应用程序包文件时,需要这样做。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

UseExternalSfpkg
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Async

该命令在群集接受注册请求后立即返回。 使用 Get-ServiceFabricApplicationType 命令查询注册请求的状态。 使用此开关可以避免在注册大型应用程序包时提供大型 -TimeoutSec 值。

参数属性

类型:SwitchParameter
默认值:False
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-TimeoutSec

指定操作的超时期限(以秒为单位)。

参数属性

类型:Int32
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters

输入

None

输出

System.Object