Start-ServiceFabricApplicationUpgrade

Aggiorna un'applicazione di Service Fabric a ApplicationTypeVersion specificato.

Sintassi

Start-ServiceFabricApplicationUpgrade
     [-ApplicationName] <Uri>
     [-ApplicationTypeVersion] <String>
     [[-ApplicationParameter] <Hashtable>]
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-UnmonitoredAuto]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricApplicationUpgrade
     [-ApplicationName] <Uri>
     [-ApplicationTypeVersion] <String>
     [[-ApplicationParameter] <Hashtable>]
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-UnmonitoredManual]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricApplicationUpgrade
     [-ApplicationName] <Uri>
     [-ApplicationTypeVersion] <String>
     [[-ApplicationParameter] <Hashtable>]
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-Monitored]
     -FailureAction <UpgradeFailureAction>
     [-HealthCheckRetryTimeoutSec <UInt32>]
     [-HealthCheckWaitDurationSec <UInt32>]
     [-HealthCheckStableDurationSec <UInt32>]
     [-UpgradeDomainTimeoutSec <UInt32>]
     [-UpgradeTimeoutSec <UInt32>]
     [-ConsiderWarningAsError <Boolean>]
     [-DefaultServiceTypeHealthPolicy <String>]
     [-MaxPercentUnhealthyDeployedApplications <Byte>]
     [-ServiceTypeHealthPolicyMap <Hashtable>]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Descrizione

Il cmdlet Start-ServiceFabricApplicationUpgrade aggiorna un'applicazione di Service Fabric. Prima di usare questo cmdlet, è necessario copiare il pacchetto dell'applicazione aggiornato nell'archivio immagini e registrare il tipo di applicazione aggiornato. Usare il Copy-ServiceFabricApplicationPackage per copiare il pacchetto dell'applicazione nell'archivio immagini. Usare il cmdlet Register-ServiceFabricApplicationType per registrare il tipo di applicazione aggiornato.

Questo cmdlet avvia l'aggiornamento nel cluster.

ApplicationParameters non vengono mantenuti in un aggiornamento dell'applicazione. Per mantenere i parametri dell'applicazione correnti, l'utente deve prima ottenere i parametri e passarli alla chiamata all'API di aggiornamento, come illustrato in esempio 1 seguente.

Per altre informazioni sugli aggiornamenti delle applicazioni di Service Fabric, vedere la documentazione concettuale .

Prima di eseguire qualsiasi operazione in un cluster di Service Fabric, stabilire una connessione al cluster usando il cmdlet Connect-ServiceFabricCluster.

Esempio

Esempio 1: Ottenere i parametri dell'applicazione da passare alla chiamata di aggiornamento

$myApplication = Get-ServiceFabricApplication -ApplicationName fabric:/myApplication
$appParamCollection = $myApplication.ApplicationParameters
$applicationParameterMap = @{}

foreach ($pair in $appParamCollection)
{ $applicationParameterMap.Add($pair.Name, $pair.Value); }

Start-ServiceFabricApplicationUpgrade -ApplicationName fabric:/myApplication -ApplicationTypeVersion 2.0.0 -ApplicationParameter $applicationParameterMap -Monitored -FailureAction Rollback

Esempio 2: Aggiornare un'applicazione

PS C:\> Copy-ServiceFabricApplicationPackage -ApplicationPackagePath "C:\PersistentToDoListServiceV2" -ImageStoreConnectionString "file:C:\ProgramData\ServiceFabric\ImageStore"
PS C:\> Register-ServiceFabricApplicationType -ApplicationPathInImageStore "PersistentToDoListServiceV2"
PS C:\> Start-ServiceFabricApplicationUpgrade -ApplicationName fabric:/myapp/persistenttodolist -ApplicationTypeVersion "2.0" -ForceRestart -UnMonitoredManual

Il primo comando usa il cmdlet Copy-ServiceFabricApplicationPackage per copiare il pacchetto dell'applicazione aggiornato nell'archivio immagini.

Il secondo comando usa il cmdlet Register-ServiceFabricApplicationType per registrare il tipo di applicazione aggiornato.

Il terzo comando aggiorna l'applicazione. Il comando esegue un aggiornamento manuale non monitorato, che include un riavvio del server che ospita l'applicazione.

Parametri

-ApplicationName

Specifica l'URI (Uniform Resource Identifier) di un'applicazione di Service Fabric. Il cmdlet aggiorna l'applicazione con l'URI specificato.

Tipo:Uri
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ApplicationParameter

Specifica le sostituzioni per i parametri dell'applicazione come coppie nome/valore.

Tipo:Hashtable
Posizione:2
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ApplicationTypeVersion

Specifica la versione di un tipo di applicazione di Service Fabric. Il cmdlet aggiorna l'applicazione alla versione specificata.

Tipo:String
Posizione:1
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Tipo:SwitchParameter
Alias:cf
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ConsiderWarningAsError

Indica se considerare un evento di integrità di avviso come evento di errore durante la valutazione dell'integrità.

Tipo:Boolean
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DefaultServiceTypeHealthPolicy

Specifica i criteri di integrità per il tipo di servizio predefinito da utilizzare per l'aggiornamento monitorato nel formato MaxPercentUnhealthyPartitionsPerService, MaxPercentUnhealthyReplicasPerPartition, MaxPercentUnhealthyServices. Ad esempio, 5.10.15 indica i valori seguenti:

  • MaxPercentUnhealthyPartitionsPerService = 5
  • MaxPercentUnhealthyReplicasPerPartition = 10
  • MaxPercentUnhealthyServices = 15
Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-FailureAction

Specifica l'azione da eseguire se l'aggiornamento monitorato non riesce. I valori accettabili per questo parametro sono:

  • Replica
  • Manuale
Tipo:UpgradeFailureAction
Valori accettati:Invalid, Rollback, Manual
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Force

Indica che questo cmdlet ignora il messaggio di avviso e forza l'aggiornamento.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ForceRestart

Indica che l'host del servizio viene riavviato anche se l'aggiornamento è una modifica di sola configurazione.

Tipo:SwitchParameter
Posizione:3
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-HealthCheckRetryTimeoutSec

Specifica la durata, espressa in secondi, dopo la quale Service Fabric ritenta il controllo integrità se il controllo integrità precedente ha esito negativo.

Tipo:UInt32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-HealthCheckStableDurationSec

Specifica la durata, in secondi, di attesa di Service Fabric per verificare che l'applicazione sia stabile prima di passare al dominio di aggiornamento successivo o completare l'aggiornamento. Questa durata di attesa impedisce modifiche non rilevate dell'integrità subito dopo l'esecuzione del controllo integrità.

Tipo:UInt32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-HealthCheckWaitDurationSec

Specifica la durata, in secondi, che Service Fabric attende prima di eseguire il controllo di integrità iniziale al termine dell'aggiornamento nel dominio di aggiornamento.

Tipo:UInt32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-InstanceCloseDelayDurationSec

Specifica la durata in secondi, per attendere prima che un'istanza senza stato interessata dall'aggiornamento dell'applicazione venga chiusa, per consentire alle richieste attive di svuotarsi normalmente. Questa durata di attesa è valida solo per le istanze di tali servizi senza stato con un valore diverso da zero configurato per InstanceCloseDelayDuration ed eseguirà l'override del valore preconfigurato. Per informazioni dettagliate, vedere InstanceCloseDelayDuration (in New-ServiceFabricService).

Tipo:UInt32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-MaxPercentUnhealthyDeployedApplications

Specifica la percentuale massima delle istanze dell'applicazione distribuite nei nodi del cluster con uno stato di integrità di errore prima che lo stato di integrità dell'applicazione per il cluster sia errore.

Tipo:Byte
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Monitored

Indica che la modalità di aggiornamento è monitorata. Al termine dell'aggiornamento del cmdlet per un dominio di aggiornamento, se l'integrità del dominio di aggiornamento e il cluster soddisfano i criteri di integrità definiti, Service Fabric aggiorna il dominio di aggiornamento successivo. Se il dominio o il cluster di aggiornamento non soddisfa i criteri di integrità, l'aggiornamento non riesce e Service Fabric esegue il rollback dell'aggiornamento per il dominio di aggiornamento o ripristina la modalità manuale in base ai criteri specificati. Questa è la modalità consigliata per gli aggiornamenti delle applicazioni in un ambiente di produzione.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ReplicaQuorumTimeoutSec

Specifica il periodo di timeout, espresso in secondi, per verificare se il set di repliche dispone del quorum. Dopo il periodo di timeout, l'aggiornamento procede.

Questo parametro è stato deprecato. Specificare invece il parametro UpgradeReplicaSetCheckTimeoutSec.

Tipo:UInt32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-RestartProcess

Indica che l'host del servizio viene riavviato durante l'aggiornamento.

Questo parametro è stato deprecato. Specificare invece il parametro ForceRestart.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ServiceTypeHealthPolicyMap

Specifica la mappa dei criteri di integrità da usare per diversi tipi di servizio come tabella hash nel formato seguente: @ {"ServiceTypeName" : "MaxPercentUnhealthyPartitionsPerService,MaxPercentUnhealthyReplicasPerPartition,MaxPercentUnhealthyServices"}. Per esempio:

@{ "ServiceTypeName01" = "5,10,5"; "ServiceTypeName02" = "5,5,5" }

Tipo:Hashtable
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-SortOrder

Definisce l'ordine in cui un aggiornamento procede attraverso il cluster.

I valori possibili sono:

  • Invalid : indica che questo ordinamento non è valido. Tutte le enumerazioni di Service Fabric hanno il tipo non valido.
  • Default : indica che verrà usato l'ordinamento predefinito (come specificato nel manifesto del cluster).
  • Numeric : indica che verranno usati i nomi di ordinamento numerico in avanti (nomi definiti dall'utente ordinati come numeri).
  • Lexicographical : indica che verrà usato l'ordinamento lessicografico (nomi definiti dall'utente ordinati come stringhe).
  • ReverseNumeric : indica che verrà usato l'ordinamento numerico inverso (nomi definiti dall'utente ordinati come numeri).
  • ReverseLexicographical: indica che verrà usato l'ordinamento lessicografico inverso (nomi definiti dall'utente ordinati come stringhe).
Tipo:UpgradeSortOrder
Valori accettati:Invalid, Default, Numeric, Lexicographical, ReverseNumeric, ReverseLexicographical
Posizione:5
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-TimeoutSec

Specifica il periodo di timeout, espresso in secondi, per l'operazione.

Tipo:Int32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-UnmonitoredAuto

Indica che la modalità di aggiornamento non è monitorata automaticamente. Dopo l'aggiornamento di un dominio di aggiornamento di Service Fabric, Service Fabric aggiorna il dominio di aggiornamento successivo indipendentemente dallo stato di integrità dell'applicazione. Questa modalità non è consigliata per la produzione ed è utile solo durante lo sviluppo di un'applicazione.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-UnmonitoredManual

Indica che la modalità di aggiornamento non è monitorata manualmente. Dopo aver aggiornato un dominio di aggiornamento, Service Fabric attende di aggiornare il dominio di aggiornamento successivo usando il cmdlet Resume-ServiceFabricApplicationUpgrade.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-UpgradeDomainTimeoutSec

Specifica il tempo massimo, in secondi, impiegato da Service Fabric per aggiornare un singolo dominio di aggiornamento. Dopo questo periodo, l'aggiornamento non riesce.

Tipo:UInt32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-UpgradeReplicaSetCheckTimeoutSec

Specifica il tempo massimo in cui Service Fabric attende la riconfigurazione di un servizio in uno stato sicuro, se non già in uno stato sicuro, prima che Service Fabric proceda con l'aggiornamento.

Tipo:UInt32
Posizione:4
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-UpgradeTimeoutSec

Specifica il tempo massimo, in secondi, richiesto da Service Fabric per l'intero aggiornamento. Dopo questo periodo, l'aggiornamento non riesce.

Tipo:UInt32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-WhatIf

Mostra cosa accadrebbe se il cmdlet viene eseguito. Il cmdlet non viene eseguito.

Tipo:SwitchParameter
Alias:wi
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

None

Output

System.Object