在 AWS Elastic Beanstalk 上執行 Metabase

由於平台問題,我們不再建議使用 Elastic Beanstalk 在生產環境中執行 Metabase。

如果您在 Elastic Beanstalk 上執行 Metabase,我們建議您切換到不同的設定。

Elastic Beanstalk 的替代方案

Metabase Cloud

我們建議使用 Metabase Cloud (顯而易見)。

自架設設定

您可以使用 PostgreSQL 或 MySQL 作為 Metabase 的應用程式資料庫來設定 Metabase,並在您可以監控的伺服器上執行 Metabase,無論是在您的硬體上還是使用雲端供應商。

至少,請確保您定期備份您的應用程式資料庫 (並且總是在升級之前)。遵循您組織對於安全性、監控和可用性的要求。

專業服務

如果您需要協助設定 Metabase (或建構您的資料堆疊),請查看我們提供的專業服務

將您的 RDS 資料庫與 Elastic Beanstalk 部署分離

如果您使用 AWS 的 Relational Database Service 來儲存您的 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 的 Pro 或 Enterprise 版本,則需要使用 metabase/metabase-enterprise 儲存庫,而不是 metabase/metabase 儲存庫。

閱讀其他Metabase 版本的文件。