OpenStack-Heat中的AWS::WaitCondition的使用

Posted mthoutai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenStack-Heat中的AWS::WaitCondition的使用相关的知识,希望对你有一定的参考价值。

在heat中。一个instance的创建成功信号是在这个instance状态成为active之后发出的,这时候user-data可能还没有运行。可是heat已经觉得这个resource创建成功了,開始调度下一个resource的创建。

假设我们要建立一个webserver,这个webserver须要在databaseServer运行完user-data之后才開始创建,就须要使用AWS的waitcondition通讯机制。

  • 整个流程例如以下:
Create WaitHandler -> 
WaitHandler Done -> 
Create "Database" (Dependon WaitHandler) -> 
Database Done -> 
Create "WaitCondition" (Dependon Database) -> 
Wait for Database signal ->
Database send signal to WaitHandler ->
WaitCondition Done ->
Create WebServer (Dependon WaitCondition)->
WebServer Done

  • Template样例
 WaitHandle: {Type: ‘AWS::CloudFormation::WaitConditionHandle‘}
 WaitCondition:
    Type: AWS::CloudFormation::WaitCondition
    DependsOn: WikiDatabase
    Properties:
      Handle: {Ref: WaitHandle}
      Count: ‘1‘
      Timeout: ‘600‘
Database:
    Type: AWS::EC2::Instance
    Properties:
      UserData:
        Fn::Base64:
          Fn::Join:
            - /opt/aws/bin/cfn-signal -e 0 -r "Wiki server setup complete" ‘
            - {Ref: WaitHandle}
            - ‘‘‘

              ‘
WebServer:
    Type: AWS::EC2::Instance
    DependsOn: WaitCondition

技术分享


















以上是关于OpenStack-Heat中的AWS::WaitCondition的使用的主要内容,如果未能解决你的问题,请参考以下文章

如何用ruby中的数组中的元素替换字符串中的单词?

如何将视图中的 javascript 代码中的对象列表传递给控制器​​中的操作方法

如何从账户 A 中的 Lambda(VPC 中的 Lambda)调用账户 B 中的 AWS Lambda 函数(VPC 中的这个 Lambda)

我可以在 apatch 中的 php 文件中播放位于硬盘中的文件路径中的视频吗?

子窗口访问父页面iframe中的iframe,top打开的子窗口访问父页面中的iframe中的iframe

为啥正文中的 javascript 函数优先于头部中的函数?