‧
5 分鐘閱讀
如何在生產環境中執行 Metabase
Metabase 團隊
‧ 5 分鐘閱讀
分享這篇文章
我們有這篇文章的全新改良版本。
Metabase 有兩個版本:開放原始碼版和企業版。以及兩種在生產環境中運行的基本方式
- Metabase Cloud,這是最簡單的路徑。
- 自行託管,無論是在地端部署還是使用第三方雲端供應商。
我們將逐步介紹每種方式的優點和權衡,以便您可以為您的組織做出正確的決定。由於自行託管 Metabase 的方式不只一種,我們將提供一些指導,幫助您選擇最適合您的設置。最後,我們將回顧設置 Metabase 的一些最佳實踐,無論您選擇哪種路徑。
別擔心 - 您隨時可以遷移到不同的 Metabase 設置。
Metabase Cloud
我們將從最簡單的選項開始:Metabase Cloud。我們為您託管 Metabase,讓您可以專注於使用它,而不是運行它。我們提供的每個方案都易於遷移,且無後顧之憂:我們處理設置、備份和升級,因此您只需享受無憂的 Metabase 體驗,並從發布的新功能中受益。
Metabase Cloud 的優點
- 它運作正常。
- 可能比處理和支付自行託管解決方案更經濟實惠
Metabase Cloud 的權衡
- 比起設置自己的基礎架構,控制權較少。
- 如果您的組織有資料合規性要求(如 HIPAA),則不是正確的選擇。
自行託管 Metabase
我們盡力使自行託管 Metabase 變得盡可能容易,特別是因為我們知道有法規和合規性要求的組織確實(而且應該)自行託管。
若要自行託管,您需要
- 一或多台伺服器來運行 Metabase Docker 映像檔或 JAR。
- 一個應用程式資料庫來儲存問題、儀表板和使用者。
自行託管的優點
- 對您的基礎架構有更多控制權。
- 可能更便宜,取決於您團隊的經驗和資源。
自行託管的權衡
- 您將承擔額外負擔:您將負責遷移到生產應用程式資料庫,然後自行設置、維護、備份和升級 Metabase。
如何自行託管 Metabase
如果您決心自行託管 Metabase,您需要就如何在生產環境中運行 Metabase 做出一些決定。
- Metabase Docker 映像檔或 JAR?
- 生產應用程式資料庫要使用哪個資料庫?
- 如何備份您的應用程式資料?
- 在地端部署還是雲端部署?
Docker 映像檔或 JAR?
Metabase 提供兩種套件:Docker 映像檔和 JAR。兩者都提供相同的體驗:您的使用者不會知道差異。
在這裡您不會做出錯誤的選擇:這兩個選項都將使您的 Metabase 順利運行,而且兩者都易於擴展。在底層,它們都運行 Metabase JAR。我們提供這兩個選項的原因是為了在生產環境中運行 Metabase 時為人們提供彈性。
在 Docker 容器中或以 JAR 形式運行 Metabase 之間,我們的建議是:如果您的團隊熟悉容器,並且了解伺服器和網路,您可能更喜歡運行 Docker。否則,請運行 JAR。如果您不熟悉 Docker 和 Java,我們建議運行 JAR,因為要學習的東西少得多。
運行 Docker 容器有一些優點,因為容器只封裝運行 Metabase 所需的東西。這種應用程式隔離可以更輕鬆地管理和協調您的應用程式。由於 Docker 封裝了 Metabase 所需的一切,您甚至不需要知道如何安裝 Java 並運行 JAR。Docker 映像檔封裝了運行 JAR 所需的 JVM,並為您運行 JAR。
運行 JAR 的優點是,您只需要安裝 Java 並運行 JAR 即可啟動並運行 Metabase。您不需要了解 Docker 容器如何運作。
將應用程式資料庫遷移到生產資料庫
您需要將 Metabase 隨附的應用程式資料庫(H2 資料庫)遷移到生產 SQL 資料庫。應用程式資料庫儲存您的所有使用者、問題、儀表板和其他 Metabase 應用程式資料。
Metabase 預設隨附 H2 資料庫的原因是為了讓您可以在機器上輕鬆啟動並運行 Metabase。但 H2 資料庫不適合在生產環境中運行 Metabase。
我們建議您遷移到 PostgreSQL、MySQL 或 MariaDB。
備份您的應用程式資料庫
您還將負責備份您的應用程式資料庫,以免遺失您的問題、儀表板和其他報告資料。一些雲端供應商提供 SQL 資料庫即服務,可以為您處理備份。
第三方雲端供應商
您可以使用來自 Amazon Web Services、Google Cloud Platform、Microsoft Azure 等供應商的雲端服務來運行 Metabase 和您的應用程式資料庫。
在您安裝 Metabase 之後
無論您選擇哪個選項 - Metabase Cloud 或自行託管、Docker 或 JAR - 您仍然需要設置您的 Metabase
您的 Metabase 將盡力猜測您資料庫的金鑰和資料類型,以便您不必填寫所有內容,但您仍然應該確認 Metabase 猜測正確。根據您的資料庫格式化資料的方式,例如,Metabase 可能將日期欄位分類為文字欄位。擁有正確的元數據對於確保您的視覺化效果如預期般運作至關重要。
一旦您配置了 Metabase,就該開始測試了