Share via


New-ServiceFabricServiceFromTemplate

如果應用程式資訊清單已定義服務範本區段,則此命令可用來建立新的服務,其中包含從範本填入的服務描述參數。

Syntax

New-ServiceFabricServiceFromTemplate
   [-ApplicationName] <Uri>
   [-ServiceName] <Uri>
   [-ServiceTypeName] <String>
   [-Force]
   [-ServicePackageActivationMode <ServicePackageActivationMode>]
   [-ServiceDnsName <String>]
   [-TimeoutSec <Int32>]
   [<CommonParameters>]

Description

New-ServiceFabricService 有數個必要參數,可描述正在建立的服務。 應用程式資訊清單中的服務範本可用來指定每個服務類型的服務描述參數。 服務範本區段中的服務描述架構與 預設服務的服務描述架構相同。 這可讓您建立特定服務類型的新服務,而不需要指定 New-ServiceFabricService的必要參數。

使用服務範本建立的服務的行為與使用 New-ServiceFabricService建立的服務相同。 您可以使用相同的工作流程來升級、更新和移除它們。

在 Service Fabric 叢集上執行任何作業之前,請先使用 Connect-ServiceFabricCluster Cmdlet 建立叢集的連線。

範例

範例 1:從服務範本建立服務

假設有下列應用程式和服務資訊清單:

<?xml version="1.0" encoding="utf-8" ?>
<ApplicationManifest
      ApplicationTypeName="MyApplicationType"
      ApplicationTypeVersion="AppManifestVersion1"
      xmlns="http://schemas.microsoft.com/2011/01/fabric"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Description>An example application manifest</Description>
  <ServiceManifestImport>
    <ServiceManifestRef ServiceManifestName="MyServiceManifest" ServiceManifestVersion="SvcManifestVersion1"/>
  </ServiceManifestImport>
  <ServiceTemplates>
     <StatelessService ServiceTypeName="MyServiceType" InstanceCount="-1">
         <SingletonPartition/>
     </StatelessService>
  </ServiceTemplates>
</ApplicationManifest>

<?xml version="1.0" encoding="utf-8" ?>
<ServiceManifest Name="MyServiceManifest" Version="SvcManifestVersion1" xmlns="http://schemas.microsoft.com/2011/01/fabric" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Description>An example service manifest</Description>
  <ServiceTypes>
    <StatelessServiceType ServiceTypeName="MyServiceType" />
  </ServiceTypes>
  <CodePackage Name="MyCode" Version="CodeVersion1">
    <EntryPoint>
      <ExeHost>
        <Program>MyServiceHost.exe</Program>
      </ExeHost>
    </EntryPoint>
  </CodePackage>
</ServiceManifest>

下列命令會使用應用程式資訊清單中定義的服務類型 MyServiceType 服務範本來建立 Service Fabric 服務:

PS C: > New-ServiceFabricServiceFromTemplate -ApplicationName fabric:/myapp -ServiceName fabric:/myapp/myservice1 -ServiceTypeName MyServiceType

您可以使用相同的服務範本來建立多個服務實例。 另外執行下列命令之後, MyServiceType類型有兩個單一無狀態服務:

PS C: > New-ServiceFabricServiceFromTemplate -ApplicationName fabric:/myapp -ServiceName fabric:/myapp/myservice2 -ServiceTypeName MyServiceType

參數

-ApplicationName

指定要在 Service Fabric 應用程式中建立服務的統一資源識別項 (URI) 。

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

-Force

強制執行命令而不要求使用者確認。

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

-ServiceDnsName

{{Fill ServiceDnsName Description}}

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

-ServiceName

指定 Service Fabric 服務的 URI。

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

-ServicePackageActivationMode

控制要用於服務的 [主控模型][1]。 有效值為 SharedProcessExclusiveProcess。 預設值為 SharedProcess

使用 SharedProcess 啟用模式時,指定 ServiceType 不同服務) 複本 (或實例會共用相同的 ServiceHost。 使用 ExclusiveProcess 啟用模式時,服務的每個複本或實例都會有自己的專用 ServiceHost。 如需詳細資訊,請參閱 [Service Fabric 裝載模型][1]。

Type:ServicePackageActivationMode
Accepted values:SharedProcess, ExclusiveProcess
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ServiceTypeName

指定在應用程式資訊清單中定義服務範本的 Service Fabric 服務類型名稱。

Type:String
Position:2
Default value:None
Required:True
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