2017-06-30 5 views
0

Est-il possible de retarder la création de ressources dans la même pile? J'ai un contrôleur de domaine et un autre serveur qui doit se joindre au domaine une fois que le contrôleur de domaine est configuré. Les deux serveurs sont créés dans la même pile. J'ai essayé d'utiliser le waithandle, mais il crée toujours les deux ressources en même temps, puis dit la création en cours pour la durée de la poignée d'attente.Création de ressources de délai de cloudformation dans la même pile

modifier: Code comme demandé: 1. UserData du serveur DC

 # "Fn::Base64": 
    # Fn::Join ["", [ 
    # "<script>cfn-init -v --stack ", !Ref "AWS::StackName", " --resource DC --configsets ascending --region", !Ref "AWS::Region", "\n", 
    # "cfn-signal.exe -e 0 ", Fn::Base64 !Ref DCServerWaitHandle, "</script>"]] 

attente poignées

DCServerWaitHandle: 
    Type: AWS::CloudFormation::WaitConditionHandle 
DCServerWaitCondition: 
    Type: AWS::CloudFormation::WaitCondition 
    DependsOn: DC 
    Properties: 
    Handle: !Ref DCServerWaitHandle 
    Timeout: 600 

alors l'autre serveur qui devrait attendre de construire 600 secondes pour que le DC a une dependon: propriété DC

Répondre

0

Normalement, vous pouvez utiliser DependsOn pour créer des ressources dans l'ordre. Pour les instances EC2 en particulier, vous pouvez utiliser un CreationPolicy Attribute pour empêcher une ressource de terminer son statut.

De l'docs:

Pour les ressources Amazon EC2 et Auto Scaling, nous vous recommandons d'utiliser un attribut creationPolicy au lieu des conditions d'attente. Ajoutez un attribut CreationPolicy à ces ressources et utilisez le script d'assistance cfn-signal pour signaler quand un processus de création d'instance s'est terminé avec succès.