在 AWS Elastic Beanstalk 上运行 Metabase

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

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

Elastic Beanstalk 的替代方案

Metabase 云

我们推荐 Metabase Cloud(显而易见)。

自托管设置

您可以将 PostgreSQL 或 MySQL 设置为应用程序数据库,并在可以监控的服务器上运行 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. 将文件作为新的 Beanstalk 版本上传到 AWS。
  6. 升级您的环境。

请记住,如果您使用的是 Metabase 的 Pro 或 Enterprise 版本,则需要使用 metabase/metabase-enterprise 存储库而不是 metabase/metabase 存储库。

阅读其他版本的 Metabase 的文档。

这有帮助吗?

感谢您的反馈!
想改进这些文档吗?提出更改。
© . This site is unofficial and not affiliated with Metabase, Inc.