Metabase là một công cụ phân tích đơn giản và mạnh mẽ cho phép bạn tìm hiểu và đưa ra quyết định từ dữ liệu của công ty mình mà không cần bất kỳ kiến thức kỹ thuật nào hoặc sự phát triển của các ứng dụng cụ thể. Về cơ bản, nó hoạt động dựa trên các câu hỏi bạn đặt ra và nó sắp xếp dữ liệu dưới dạng biểu đồ và báo cáo như bạn muốn.
Nó hỗ trợ kết nối với các loại nguồn dữ liệu khác nhau, bao gồm MySQL, PostgreSQL, NoSQL (như MongoDB), các dịch vụ cơ sở dữ liệu đám mây như Amazon Redshift, Google BigQuery và thậm chí kết nối với Google Analytics.
Bước 1 - Cài đặt Java
Bước 2 - Cài đặt máy chủ cơ sở dữ liệu (MariaDB)
Bước 3 - Tạo cơ sở dữ liệu và người dùng
Bây giờ cài đặt tất cả các gói cần thiết để Metabase hoạt động, hãy tạo một cơ sở dữ liệu trống cho Metabase và định cấu hình người dùng MariaDB để truy cập cơ sở dữ liệu này.
Đăng nhập vào MySQL shell bằng lệnh dưới đây: mysql -u root -p
Sau đó, tạo một siêu dữ liệu cơ sở dữ liệu mới:
MariaDB [none] > CREATE DATABASE metabase;
Tạo một người dùng cơ sở dữ liệu metabase_user với mật khẩu mới:
MariaDB [none] > CREATE USER 'metabase_user'@'localhost' IDENTIFIED BY 'Strong_Password';
Sau đó, cấp cho người dùng toàn quyền truy cập vào cơ sở dữ liệu được tạo cho localhost:
MariaDB [none] > GRANT ALL ON metabase.* TO 'metabase_user'@'localhost' WITH GRANT OPTION;
Cuối cùng, lưu các thay đổi của bạn và thoát.
MariaDB [none] > FLUSH PRIVILEGES;
MariaDB [none] > EXIT;
Bước 4 - Cài đặt Metabase
Bây giờ Java và máy chủ cơ sở dữ liệu đã được cài đặt, hãy cài đặt Metabase từ kho lưu trữ chính thức của nó. Trong bài viết này, sẽ cài phiên bản sẽ là 0.36.7.
Hãy tải xuống tệp metabase và đặt nó vào thư mục cài đặt /home/metabase:
sudo mkdir /home/metabase
cd /home/metabase
wget https://downloads.metabase.com/v0.36.7/metabase.jar
Vì lý do bảo mật, Metabase chạy với tư cách người dùng không có đặc quyền. Chúng ta sẽ gọi người dùng đơn giản là metabase. Hơn nữa, chúng ta sẽ tạo các tệp mà chúng ta sẽ cần sau này để ghi log và định cấu hình Metabase, đồng thời áp dụng cài đặt bảo mật chính xác cho người dùng không có đặc quyền.
sudo groupadd -r metabase
sudo useradd -r -s /bin/false -g metabase metabase
sudo chown -R metabase:metabase /home/metabase
sudo touch /var/log/metabase.log
sudo chown metabase:metabase /var/log/metabase.log
sudo touch /etc/default/metabase
sudo chmod 640 /etc/default/metabase
Sau đó, bạn cần tạo dịch vụ trong Metabase systemd để có thể kiểm soát việc bắt đầu, dừng dịch vụ. Để làm điều này, chỉ cần thực hiện các lệnh để tạo tệp dịch vụ: sudo vi /etc/systemd/system/metabase.service
Sau đó ghi nội dung bên dưới vào tệp và lưu nó:
[Unit]
Description=Metabase server
After=syslog.target
After=network.target
[Service]
WorkingDirectory=/home/metabase/
ExecStart=/usr/bin/java -jar /home/metabase/metabase.jar
EnvironmentFile=/etc/default/metabase
User=metabase
Type=simple
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=metabase
SuccessExitStatus=143
TimeoutStopSec=120
Restart=always
[Install]
WantedBy=multi-user.target
Tiếp theo, chúng ta cần tạo cấu hình Syslog để đảm bảo rằng systemd có thể xử lý các bản ghi đúng cách: sudo vi /etc/rsyslog.d/metabase.conf
Sau đó ghi nội dung bên dưới vào tệp và lưu nó:
if $programname == 'metabase' then /var/log/metabase.log & stop
Khởi động lại dịch vụ Syslog để tải cấu hình mới: sudo systemctl restart rsyslog.service
Tệp cấu hình Metabase
Trong /etc/default/metabase, thay thế các mục có thể cấu hình bằng các giá trị hợp lý cho hệ thống của bạn. Một số cấu hình Metabase có sẵn một số tùy chọn và một số cấu hình tôi sẽ hiển thị được phân tách bằng ký hiệu | trong comment bên cạnh mỗi biến. Tôi khuyên bạn nên chọn một tùy chọn và xóa comment này.
sudo vi /etc/default/metabase
MB_PASSWORD_COMPLEXITY=strong #weak|strong
MB_PASSWORD_LENGTH=10
MB_DB_TYPE=mysql #postgres|mysql|h2
MB_DB_DBNAME=metabase
MB_DB_PORT=3306
MB_DB_USER=metabase_user
MB_DB_PASS=Strong_Password
MB_DB_HOST=localhost
MB_EMOJI_IN_LOGS=true #true|false
Bây giờ, chúng ta có thể kích hoạt và kiểm tra dịch vụ Metabase bằng các lệnh bên dưới:
sudo systemctl daemon-reload
sudo systemctl start metabase
Để xác minh rằng dịch vụ đang hoạt động, hãy chạy các lệnh bên dưới để xác minh.
sudo systemctl status metabase
Bạn sẽ thấy output tương tự như sau:
● metabase.service - Metabase server
Loaded: loaded (/etc/systemd/system/metabase.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2020-10-18 21:11:45 -03; 7s ago
Main PID: 14703 (java)
Tasks: 12 (limit: 2270)
Memory: 61.9M
CGroup: /system.slice/metabase.service
└─14703 /usr/bin/java -jar /home/metabase/metabase.jar
Khi bạn đã xác nhận mọi thứ đang hoạt động, bạn có thể kích hoạt khởi động khi máy chủ khởi động.
sudo systemctl enable metabase
Dịch vụ Metabase đã chạy trên cổng 3000 và cài đặt Nginx để thực hiện reverse proxy và trong bước 6, sẽ quay lại cấu hình ban đầu của Metabase.
Bước 5 - Cài đặt và cấu hình Nginx
Chúng ta sẽ sử dụng Nginx để tạo reverse proxy cho cổng mà MetaBase đã được cài đặt trên đó và vì vậy bạn sẽ có thể cấu hình tên miền của mình và truy cập thông qua các cổng SSL 80.
Cài đặt Nginx tại đây
Khi quá trình cài đặt hoàn tất, hãy tạo tệp cấu hình Nginx mới với các cài đặt bên dưới, xác định server_name bằng FQDN example.com: sudo vi /etc/nginx/sites-available/metabase
Sau đó ghi nội dung bên dưới vào tệp và lưu nó. Đừng quên sửa đổi miền example.com lại thành tên miền theo ý bạn
server {
listen 80;
listen [::]:80;
server_name example.com;
location / {
proxy_pass http://127.0.0.1:3000;
}
}
Bây giờ, hãy liên kết cấu hình này với cấu hình Nginx đã được kích hoạt.
sudo ln -s /etc/nginx/sites-available/metabase /etc/nginx/sites-enabled/metabase
Tiếp theo, hãy kiểm tra cài đặt Nginx bằng lệnh bên dưới: sudo nginx -t
Bạn sẽ thấy một kết quả tương tự như bên dưới:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Bây giờ chúng ta có thể khởi động lại dịch vụ Nginx: sudo systemctl restart nginx
Bước 6 - Cài đặt Metabase ban đầu
Trong bước này, chúng ta sẽ tạo cấu hình ban đầu của Metabase và tạo người dùng quản trị viên. Truy cập trình duyệt của bạn và nhập http://example.com
Bạn sẽ thấy trình hướng dẫn thiết lập Metabase.
Nhấp vào nút Let's get started. Đầu tiên, hãy xác định ngôn ngữ ưa thích của bạn. Trong trường hợp này, chúng tôi sẽ chọn tiếng Anh
Sau đó chọn thêm cơ sở dữ liệu. Đối với hướng dẫn này, chúng tôi đang sử dụng MySQL hoặc MariaDB. Nhập thông tin cơ sở dữ liệu đã tạo ở trên và tiếp tục với cấu hình.
Ok bây giờ chỉ cần hoàn thành cấu hình và bắt đầu sử dụng nền tảng.
Bằng cách nhấp vào nút Take me to Metabase, bạn sẽ có quyền truy cập vào trang tổng quan.