Attributo CreationPolicy - AWS CloudFormation

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Attributo CreationPolicy

Associa l'CreationPolicyattributo a una risorsa per evitare che lo stato di creazione raggiunga il completamento finché non AWS CloudFormation riceve un numero specificato di segnali di successo o non viene superato il periodo di timeout. Per segnalare una risorsa, puoi usare lo script di supporto cfn-signal o SignalResourceAPI. CloudFormation pubblica segnali validi negli eventi dello stack in modo da tenere traccia del numero di segnali inviati.

La politica di creazione viene richiamata solo quando viene CloudFormation creata la risorsa associata. Attualmente, le uniche CloudFormation risorse che supportano le politiche di creazione sono:

Utilizza l'attributo CreationPolicy per restare in attesa durante le operazioni di configurazione della risorsa prima che la creazione dello stack continui. Ad esempio, se installi e configuri applicazioni software su un' EC2 istanza, potresti volerle eseguire prima di procedere. In questi casi, puoi aggiungere un attributo CreationPolicy all'istanza e quindi inviare un segnale di successo all'istanza dopo l'installazione e la configurazione delle applicazioni. Per un EC2 esempio dettagliato di Amazon, consultaDistribuisci applicazioni su Amazon EC2.

AppStream Politica di creazione 2.0

AppStream Configurazione Amazon per una politica di creazione.

Sintassi

JSON

{ "CreationPolicy": { "StartFleet": { "Type": "Boolean" } } }

YAML

CreationPolicy: StartFleet: Type: Boolean
StartFleet

Avvia il parco istanze specificato.

Required: No

Proprietà di creazione di Amazon EC2 Auto Scaling

Configurazione di Amazon EC2 Auto Scaling per una politica di creazione.

Sintassi

JSON

"CreationPolicy" : { "AutoScalingCreationPolicy" : { "MinSuccessfulInstancesPercent" : Integer }, "ResourceSignal" : { "Count" : Integer, "Timeout" : String } }

YAML

CreationPolicy: AutoScalingCreationPolicy: MinSuccessfulInstancesPercent: Integer ResourceSignal: Count: Integer Timeout: String

Proprietà di creazione di Amazon EC2 Auto Scaling

Configurazione di Amazon EC2 Auto Scaling per una politica di creazione.

AutoScalingCreationPolicy

Per un nuovo gruppo Amazon EC2 Auto Scaling, specifica il numero di istanze che devono segnalare l'esito positivo prima di impostare lo stato del gruppo su. CREATE_COMPLETE

MinSuccessfulInstancesPercent

Speciifica la percentuale di istanze in un Amazon Auto EC2 Scaling che devono segnalare l'esito positivo prima di impostare lo stato del gruppo su. CREATE_COMPLETE Puoi specificare un valore compreso tra a. 0 100 CloudFormation arrotonda al decimo di percentuale più vicino. Ad esempio, se crei cinque istanze con una percentuale di riuscita minima pari a 50, tre istanze devono inviare segnali di esito positivo. Se un'istanza non invia un segnale entro il tempo specificato dalla Timeout proprietà, CloudFormation presuppone che l'istanza non sia stata creata.

Default: 100

Tipo: integer

Required: No

ResourceSignal

Quando CloudFormation crea la risorsa associata, configura il numero di segnali di successo richiesti e il periodo di CloudFormation attesa di tali segnali.

Count

Il numero di segnali di successo che CloudFormation deve ricevere prima di impostare lo stato della risorsa su. CREATE_COMPLETE Se la risorsa riceve un segnale di errore o non riceve il numero specificato di segnali prima della scadenza del periodo di timeout, la creazione della risorsa fallisce e ripristina lo CloudFormation stack.

Default: 1

Tipo: integer

Required: No

Timeout

Il periodo di CloudFormation attesa del numero di segnali specificato nella proprietà. Count Il periodo di timeout inizia dopo CloudFormation la stabilizzazione della risorsa e scade non prima del periodo specificato, ma può verificarsi poco dopo. Il tempo massimo che puoi specificare è 12 ore.

Il valore deve essere nel formato di durata ISO86 01, nel formato:PT#H#M#S, dove ciascuno # è rispettivamente il numero di ore, minuti e secondi. Per ottenere risultati ottimali, specifica un valore che garantisca alle istanze molto tempo per attivarsi, perché un timeout più breve può causare un rollback.

Predefinito: PT5M (5 minuti)

Tipo: Stringa

Required: No

Esempi

Gruppo con scalabilità automatica

L'esempio seguente mostra come aggiungere una policy di creazione a un gruppo Amazon EC2 Auto Scaling. Le policy di creazione richiede tre segnali di successo e il timeout è dopo 15 minuti. Utilizza lo script di supporto cfn-signal per segnalare quando il processo di creazione di un'istanza è stato completato con successo.

Per fare in modo che le istanze attendano un controllo dello stato Elastic Load Balancing prima di inviare il segnale di operazione riuscita, è possibile aggiungere una verifica del controllo dello stato utilizzando lo script assistente cfn-init. Per un esempio, consulta il verify_instance_health comando nei modelli di esempio per Amazon EC2 Auto Scaling che distribuisce gli aggiornamenti nel nostro GitHub repository.

JSON

"AutoScalingGroup": { "Type": "AWS::AutoScaling::AutoScalingGroup", "Properties": { "VPCZoneIdentifier":[ "subnetIdAz1", "subnetIdAz2", "subnetIdAz3" ], "LaunchTemplate":{ "LaunchTemplateId":{ "Ref":"logicalName" }, "Version":{ "Fn::GetAtt":[ "logicalName", "LatestVersionNumber" ] } }, "MinSize": "1", "MaxSize": "4" }, "CreationPolicy": { "ResourceSignal": { "Count": "3", "Timeout": "PT15M" } } }

YAML

AutoScalingGroup: Type: AWS::AutoScaling::AutoScalingGroup Properties: VPCZoneIdentifier: - subnetIdAz1 - subnetIdAz2 - subnetIdAz3 LaunchTemplate: LaunchTemplateId: !Ref logicalName Version: !GetAtt logicalName.LatestVersionNumber MinSize: '1' MaxSize: '4' CreationPolicy: ResourceSignal: Count: '3' Timeout: PT15M

WaitCondition

L'esempio seguente mostra come aggiungere una politica di creazione a una condizione di attesa per CloudFormation risorse oltre Amazon EC2.

Per segnalare la WaitCondition risorsa, usa il SignalResourceAPI. Questa API è progettata per funzionare con WaitCondition risorse configurate utilizzando unCreationPolicy.

JSON

"WaitCondition" : { "Type" : "AWS::CloudFormation::WaitCondition", "CreationPolicy" : { "ResourceSignal" : { "Timeout" : "PT15M", "Count" : "5" } } }

YAML

WaitCondition: Type: AWS::CloudFormation::WaitCondition CreationPolicy: ResourceSignal: Timeout: PT15M Count: 5