在AWS弹性Beanstalk上运行Metabase

由于平台问题,我们不再推荐使用Elastic Beanstalk在生产环境中运行Metabase。

如果您在Elastic Beanstalk上运行Metabase,我们建议您切换到不同的配置。

Elastic Beanstalk的替代方案

Metabase 云

我们推荐Metabase Cloud(当然)。

自托管设置

您可以使用PostgreSQL或MySQL作为其应用程序数据库设置Metabase,并在您可以监控的服务器上运行Metabase,无论是您的硬件还是云服务提供商。

至少,请确保您定期备份您的应用程序数据库(并且始终在升级之前)。遵循您组织的对安全、监控和可用性的要求。

专业服务

如果您需要帮助设置Metabase(或构建数据堆栈),请查看我们提供的专业服务

将RDS数据库与Elastic Beanstalk部署解耦

如果您正在使用AWS的关系数据库服务来存储您的Metabase应用程序数据,您可以继续这样做(尽管您仍然应该将您的Metabase安装从Elastic Beanstalk中移除)。您可以使用环境变量从您移动Metabase安装到的任何位置连接到您的RDS主机。

通知人们您的Metabase将暂时关闭

此过程将产生停机时间,因此请确保通知您的用户,在您使用新数据库重新创建环境时,Metabase将暂时关闭。

获取应用程序数据库的快照

您需要您创建Elastic Beanstalk实例时使用的数据库的主用户名和密码。

通过访问环境配置并找到数据库部分的端点值来识别Elastic Beanstalk使用的RDS端点。

RDS endpooint

  • 如果保留期为“创建快照”,则您可以继续操作。您可以删除整个Elastic Beanstalk环境,因为AWS将在删除环境之前对数据库进行快照(备份)。
  • 如果保留期有不同的值,请访问您的RDS实例并获取Elastic Beanstalk应用程序使用的数据库的快照。

    RDS snapshot

使用快照终止Elastic Beanstalk环境

转到Elastic Beanstalk Metabase应用程序,选择正在运行的环境,然后终止它。确认数据库将**使用快照**终止。

Terminate environment

终止环境可能需要约20分钟。如果删除失败,您将必须通过CloudFormation确定哪些资源未能删除,并自行删除它们。

恢复快照

返回RDS,然后在页面左侧选择快照选项。你应该能看到一个手动快照列出。

RDS Snapshots

选择该快照,然后点击操作 > 恢复快照

从这一步开始,你可以按照配置Metabase的RDS相同的步骤进行。

升级你的Elastic Beanstalk部署

如果你想留在Elastic Beanstalk,你可以按照以下步骤继续升级:

  1. 下载最后发布的Beanstalk工件文件
  2. 解压该文件。
  3. 编辑Dockerrun.aws.json文件,并将镜像标签改为最新可用的版本。始终避免使用:latest,而是使用最新版本号。
  4. 压缩文件。
  5. 将文件上传到AWS作为新的Beanstalk版本。
  6. 升级你的环境。

请记住,如果你使用的是Metabase的专业版或企业版,你需要使用metabase/metabase-enterprise存储库而不是metabase/metabase存储库。

阅读其他Metabase版本的文档。

想改进这些文档? 提出更改。