You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

克隆Elastic Beanstalk环境时如何切换平台分支升级至Amazon Linux 2

Elastic Beanstalk控制台克隆界面禁用Amazon Linux到Amazon Linux 2的平台切换,是默认的跨大版本保护机制,你可以用以下两种不用从零搭建环境的方法完成迁移:

前置准备

  • 先在Elastic Beanstalk控制台「应用版本」页面下载当前正在使用的应用代码包备份,避免操作出错丢失数据
  • 提前确认项目代码、依赖配置适配目标Amazon Linux 2 Python平台的运行时版本,两个系统的目录结构、默认软件配置存在差异

方法1:使用AWS CLI强制更新平台版本(无需创建新环境)

  1. 本地安装并配置好AWS CLI,确保账号拥有Elastic Beanstalk的操作权限
  2. 执行命令获取当前环境的ARN,替换尖括号内容为你的实际资源名:
    aws elasticbeanstalk describe-environments --application-name <你的应用名> --environment-names <你的环境名> --query "Environments[0].PlatformArn"
  3. 执行命令查询你需要的Amazon Linux 2 Python平台的ARN,示例为Python 3.9版本,可替换为你需要的运行时版本:
    aws elasticbeanstalk list-platform-versions --filters "Type=PlatformName,Operator=contains,Values=Python 3.9 running on 64bit Amazon Linux 2" --query "PlatformVersionSummaryList[0].PlatformArn"
  4. 执行更新命令触发环境平台升级:
    aws elasticbeanstalk update-environment --environment-name <你的环境名> --platform-arn <上一步获取的AL2平台ARN>
  5. 等待5-15分钟,在控制台事件页面监控升级进度,升级完成后验证服务可用性即可

方法2:导出旧环境配置创建新环境

如果CLI升级出现兼容性报错无法修复,可以用这个方法保留所有配置创建新环境:

  1. 进入旧环境的「配置」页面,点击右上角「操作」按钮选择「导出配置」,将配置文件保存到本地
  2. 回到应用根页面,点击「创建新环境」,选择「Web服务器环境」
  3. 填写环境基础信息,平台分支选择你需要的Amazon Linux 2对应Python版本
  4. 在「配置预设」步骤,选择「使用现有配置」,上传之前导出的旧环境配置文件
  5. 应用版本选择你之前备份的最新应用包,直接完成环境创建,新环境会自动继承旧环境的实例规格、安全组、环境变量、存储配置等所有设置
  6. 验证新环境服务运行正常后,将域名解析切换到新环境的负载均衡地址,确认流量切完后删除旧环境即可

常见启动失败排查

如果升级后应用无法启动,优先检查以下配置:

  • requirements.txt内的依赖包版本是否适配Amazon Linux 2自带的Python版本
  • 旧环境的.ebextensions配置是否兼容Amazon Linux 2,比如Nginx自定义配置需要从旧的/etc/nginx/conf.d/路径迁移到.platform/nginx/conf.d/目录
  • 所有自定义环境变量是否完整迁移,尤其是涉及文件路径、运行时参数的变量

内容的提问来源于stack exchange,提问作者Selase

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 22:48:02