1

我使用CF模板创建Beanstalk环境。我想在创建环境时通过SNS触发Lambda代码,这样我就可以使用lambda触发jenkins作业,并为新环境进行集成测试。AWS Beanstalk - 在创建新环境时向Lambda发送SNS通知

在Beanstalk中成功创建env后,有没有办法发送SNS消息?我已经定义了lambda代码订阅的主题。

beanstalk API允许您定义通知端点。 http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.managing.sns.html

但是,如果我只能指定一个电子邮件地址,我必须确认订阅,这是什么?我如何使用它自动触发SNS消息?

 { 
     "OptionName": "Notification Endpoint", 
     "Namespace": "aws:elasticbeanstalk:sns:topics", 
     "Value": "[email protected]" 
     }, 
     { 
     "OptionName": "Notification Protocol", 
     "Namespace": "aws:elasticbeanstalk:sns:topics", 
     "Value": "email" 
     }, 

我发现的一个解决方法有点怪异。我在堆栈创建过程结束时创建了一个EC2实例,并运行一些AWS命令,通过UserData shell发送SNS通知。这是唯一的方法吗?

+0

注意,出现在这个职位的JSON语法不与最新的语法同意亚马逊参考文档:(http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions-optionsettings.html)。你有(“OptionName”,“命名空间”,“价值”);他们有(“option_name”,“名称空间”,“值”)。这似乎是疯狂的门票。 – doer

回答

0

虽然Configuring Notifications with Elastic Beanstalk没有提供发送Amazon SNS通知的具体示例,但email仅仅是resp的默认值。 AWS Elastic Beanstalk选项设置,你还可以创建最订阅/所有其他协议,看选项aws:elasticbeanstalk:sns:topics

  • 有效值httphttpsemailemail-jsonsqs

显然AWS Lambda不被引用到那一步,但它只是另一个SNS protocol,所以我会假设/希望表格根本没有被更新,并且类似下面的内容应该相应地工作(没有特里但我自己但是):

{ 
    "OptionName": "Notification Endpoint", 
    "Namespace": "aws:elasticbeanstalk:sns:topics", 
    "Value": "<Your Lambda function ARN>" 
    }, 
    { 
    "OptionName": "Notification Protocol", 
    "Namespace": "aws:elasticbeanstalk:sns:topics", 
    "Value": "lambda" 
    }, 
2

我回答我自己的问题。我设法弄清楚如何在创建新的Beanstalk env后使用SNS触发lambda代码。

我创建了一个SNS话题服务配置

,并添加其ARN和名称的模板。

 
    { 
     "OptionName": "Notification Topic ARN", 
     "Namespace": "aws:elasticbeanstalk:sns:topics", 
     "Value": "arn:aws:sns:us-east-1:273218181234:service-configurator" 
    }, 
    { 
     "OptionName": "Notification Topic Name", 
     "Namespace": "aws:elasticbeanstalk:sns:topics", 
     "Value": "service-configurator" 
    } 

接下来,我将sns主题设置为我的lambda代码的事件源。

现在,拉姆达被触发每次有事的环境时(创建实例添加/删除,包膜等)

+0

您不需要通知主题名称,通知主题ARN选项就足够了。 – hellomichibye

相关问题