繁体   English   中英

为什么我不能运行两个node.js AWS opsworks图层?

[英]Why can't I run two node.js AWS opsworks layers?

这可能非常简单,但似乎我无法在AWS上部署两个node.js OpsWorks层。 对于我的Web前端,我需要为node.js设置一个层,而使用来自队列的消息的中间层。 我运行了web node.js层,但是现在当我尝试添加第二个node.js层时,node.js不是下拉列表中的选项之一。 这是故意的吗? 我被迫为我的node.js层创建了第二个应用程序来解决这个问题,但这是一个丑陋的解决方案,因为默认情况下,相同的主厨脚本在所有node.js实例和我的负载均衡层上运行。 任何帮助赞赏!

创建第二个应用程序是最好的方法。

在您的配方中,您可以使用堆栈配置和部署属性值来查看当前实例所在的层,并确定在配置/部署生命周期事件运行时应该执行的操作(如果有)。

  • 在前端层,您将部署前端应用程序并忽略第二个应用程序,反之亦然,在中间层上。
  • 在负载均衡器上,您可能无法在部署时执行任何操作。

要识别在部署生命周期事件中部署的应用程序,您可以利用chef中的搜索功能和应用程序上的“部署”属性。

search(:aws_opsworks_app, "deploy:true").each do |app|
  #Your deploy logic here
end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM