如何在 Elastic Beanstalk 中更新到较新版本的 Node.js 解决方案堆栈?

1 分钟阅读
0

当我尝试在 AWS Elastic Beanstalk 中手动或托管更新到 Node.js 解决方案堆栈的较新版本时,收到错误消息。

简短描述

如果您要升级到或降级到的目标解决方案堆栈版本不支持当前节点版本,则更新可能会失败。

如果更新失败,您可能会收到如下错误消息:

=============
"Failed Environment update activity. Reason: Configuration validation exception: Invalid option value: '4.8.4' (Namespace: 'aws:elasticbeanstalk:container:nodejs', OptionName: 'NodeVersion'): Value is not one of the allowed values: 
[4.8.7, 4.9.1, 5.12.0, 6.15.1, 6.16.0, 6.17.0, 6.17.1, 7.10.1, 8.14.0, 8.15.0, 8.15.1, 8.16.0, 8.16.1, 8.16.2, 8.17.0, 10.14.1, 10.15.0, 10.15.1, 10.15.3, 10.16.0, 10.16.1, 10.16.2, 10.16.3, 10.17.0, 10.18.0, 10.18.1, 10.19.0, 12.14.0, 12.14.1, 12.15.0, 12.16.1]".
=============

要解决此错误,请选择以下任意一种方法:

  • 执行蓝/绿部署以创建新的环境。
  • 遵循下文解决方法部分中描述的步骤,执行两步更新以使用现有的环境:首先更新 Node.js 节点版本,然后再更新解决方案堆栈。

解决方法

**重要提示:**以下步骤仅对已停止使用的基于 Amazon Linux AMI(也称为 Amazon Linux 1)的解决方案堆栈有效。对于基于 Amazon Linux 2 的解决方案堆栈,只能通过为匹配的解决方案堆栈创建新环境来更改节点版本。有关在 Amazon Linux 2 平台上配置 Node.js 版本的更多信息,请参阅使用 package.json 文件指定 Node.js 依赖项

  1. 打开 Elastic Beanstalk 控制台
  2. 在导航窗格中选择环境,然后选择您的计算环境。
  3. 在导航窗格中,在您的环境部分选择配置
  4. 对于类别列中的软件行,选择编辑
  5. 对于 Node.js 版本,请选择您的目标解决方案堆栈支持的节点版本。
    **重要提示:**节点版本必须是当前解决方案堆栈和目标解决方案堆栈都支持的版本。例如,如果您的 Elastic Beanstalk 环境在 运行 Node.js 的 64 位 Amazon Linux 2018.03 v4.5.1 解决方案堆栈上运行,节点版本为 8.11.3,则您仅可以升级到支持节点版本 8.11.3 的目标解决方案堆栈。要查看各解决方案堆栈类型支持的节点版本,请参阅 Node.js 平台历史记录
  6. 要升级或降级您的节点版本,请选择应用
  7. 升级或降级到目标解决方案堆栈的平台版本

AWS 官方
AWS 官方已更新 2 年前