Cách cài đặt PgHero trên Ubuntu 22.04

theanh

Administrator
Nhân viên
PgHero là một công cụ mã nguồn mở và dựa trên web được thiết kế để giám sát PostgreSQL thông qua trình duyệt web. Nó giúp những người dùng không quen với dòng lệnh. Nó cung cấp một bảng điều khiển đơn giản và thân thiện với người dùng để giám sát PostgreSQL và hiển thị các số liệu hệ thống như mức sử dụng tài nguyên, kiểm tra tình trạng, v.v. Nó cung cấp một bản tổng quan dễ hiểu - màu xanh lá cây là tốt, không phải màu xanh lá cây, bạn nên chú ý, v.v. PgHero cung cấp trạng thái tổng thể nhanh chóng của cơ sở dữ liệu của bạn, xem các truy vấn đang chạy, chỉ mục bảng và không gian bảng và có thể cung cấp cho bạn một cách để có được lời giải thích về các truy vấn mà không cần phải chuyển xuống bảng điều khiển psql.

Bài đăng này sẽ chỉ cho bạn cách cài đặt phần mềm giám sát PgHero PostgreSQL trên Ubuntu 22.04.

Điều kiện tiên quyết​

  • Máy chủ chạy Ubuntu 22.04.
  • Tên miền hợp lệ được trỏ đến bằng IP máy chủ của bạn.
  • Mật khẩu gốc được cấu hình trên máy chủ.

Bắt đầu​

Trước khi bắt đầu, hãy cập nhật và nâng cấp tất cả các gói hệ thống lên phiên bản mới nhất bằng lệnh sau:
Mã:
apt update -y
apt upgrade -y
Sau khi tất cả các gói được cập nhật, bạn có thể cài đặt các phụ thuộc bắt buộc khác bằng lệnh sau lệnh:
Mã:
apt-get install wget curl gnupg2 -y
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cài đặt PostgreSQL Server​

Tại thời điểm viết hướng dẫn này, phiên bản mới nhất của PostgreSQL là 14. Bạn có thể cài đặt phiên bản này bằng lệnh sau:
Mã:
apt-get install postgresql-14 -y
Sau khi cài đặt thành công, bạn có thể khởi động và kích hoạt dịch vụ PostgreSQL bằng lệnh sau:
Mã:
systemctl start postgresql
systemctl enable postgresql
Để kiểm tra trạng thái của PostgreSQL, hãy chạy lệnh sau:
Mã:
systemctl status postgresql
Bạn sẽ nhận được thông báo sau đầu ra:
Mã:
? postgresql.service - PostgreSQL RDBMS Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled) Active: active (exited) since Mon 2022-11-28 16:29:36 UTC; 17s ago Process: 20245 ExecStart=/bin/true (code=exited, status=0/SUCCESS) Main PID: 20245 (code=exited, status=0/SUCCESS)
Nov 28 16:29:36 ubuntu22041 systemd[1]: Starting PostgreSQL RDBMS...
Nov 28 16:29:36 ubuntu22041 systemd[1]: Finished PostgreSQL RDBMS.
Tại thời điểm này, dịch vụ PostgreSQL đã được cài đặt và đang chạy. Bây giờ bạn có thể tiến hành bước tiếp theo.

Tạo Cơ sở dữ liệu và Người dùng PostgreSQL​

Tiếp theo, bạn sẽ cần tạo cơ sở dữ liệu và người dùng PostgreSQL. Trước tiên, hãy kết nối với bảng điều khiển PostgreSQL bằng lệnh sau:
Mã:
su - postgres
Tiếp theo, hãy tạo một người dùng có tên là pghero bằng lệnh sau:
Mã:
createuser pghero
Tiếp theo, hãy kết nối với shell PostgreSQL bằng lệnh sau lệnh:
Mã:
psql
Tiếp theo, đặt mật khẩu cho người dùng pghero:
Mã:
ALTER USER pghero WITH ENCRYPTED password 'password';
Tiếp theo. tạo một cơ sở dữ liệu có tên pgdb bằng lệnh sau:
Mã:
CREATE DATABASE pgdb OWNER pghero;
Tiếp theo, cấp tất cả các quyền cho pgdb bằng lệnh sau:
Mã:
GRANT ALL PRIVILEGES ON DATABASE pgdb to pghero;
Tiếp theo, thoát khỏi shell PostgreSQL bằng lệnh sau lệnh:
Mã:
\q
exit

Cài đặt và cấu hình PgHero​

Theo mặc định, gói PgHero không có trong kho lưu trữ mặc định của Ubuntu. Vì vậy, bạn sẽ cần thêm kho lưu trữ PgHero vào máy chủ của mình.

Đầu tiên, hãy tải xuống và nhập khóa GPG bằng lệnh sau:
Mã:
wget -qO- https://dl.packager.io/srv/pghero/pghero/key | apt-key add -
Tiếp theo, hãy thêm kho lưu trữ PgHero vào APT bằng lệnh sau:
Mã:
wget -O /etc/apt/sources.list.d/pghero.list https://dl.packager.io/srv/pghero/pghero/master/installer/ubuntu/$(. /etc/os-release && echo $VERSION_ID).repo
Tiếp theo, hãy cập nhật bộ đệm kho lưu trữ và cài đặt PgHero bằng lệnh sau:
Mã:
apt-get update -y
apt-get install pghero -y
Sau khi cài đặt PgHero, bạn sẽ cần phải xác định cơ sở dữ liệu PostgreSQL cho PgHero. Bạn có thể định nghĩa nó bằng lệnh sau:
Mã:
pghero config:set DATABASE_URL=postgres://pghero:password@localhost:5432/pgdb
Tiếp theo, thiết lập máy chủ web PgHero bằng các lệnh sau:
Mã:
pghero config:set PORT=3001
pghero config:set AILS_LOG_TO_STDOUT=disabled
pghero scale web=1
Bạn sẽ nhận được kết quả đầu ra sau:
Mã:
Created symlink /etc/systemd/system/multi-user.target.wants/pghero.service → /etc/systemd/system/pghero.service.
Created symlink /etc/systemd/system/pghero.service.wants/pghero-web.service → /etc/systemd/system/pghero-web.service.
Scaling up...
Created symlink /etc/systemd/system/pghero-web.service.wants/pghero-web-1.service → /etc/systemd/system/pghero-web-1.service.
--> done.
Bây giờ, hãy khởi động dịch vụ PgHero bằng lệnh sau:
Mã:
systemctl start pghero
Bạn có thể kiểm tra trạng thái của PgHero bằng lệnh sau lệnh:
Mã:
systemctl status pghero
Bạn sẽ nhận được kết quả sau:
Mã:
? pghero.service Loaded: loaded (/etc/systemd/system/pghero.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2022-11-28 16:33:23 UTC; 19s ago Main PID: 21242 (sleep) Tasks: 1 (limit: 464122) Memory: 176.0K CGroup: /system.slice/pghero.service ??21242 /bin/sleep infinity
Nov 28 16:33:23 ubuntu22041 systemd[1]: Started pghero.service.
PgHero hiện đang chạy và lắng nghe trên cổng 3001. Bạn có thể kiểm tra bằng lệnh sau lệnh:
Mã:
ss -antpl | grep 3001
Bạn sẽ thấy đầu ra sau:
Mã:
LISTEN 0 1024 0.0.0.0:3001 0.0.0.0:* users:(("ruby",pid=21278,fd=5),("ruby",pid=21277,fd=5),("ruby",pid=21276,fd=5),("ruby",pid=21245,fd=5))
Tại thời điểm này, PgHero đã được cài đặt và cấu hình. Bây giờ bạn có thể tiến hành bước tiếp theo.

Cấu hình Nginx làm Proxy ngược cho PgHero​

Bạn nên cài đặt và cấu hình Nginx làm proxy ngược cho PgHero. Trước tiên, hãy cài đặt máy chủ web Nginx bằng lệnh sau:
Mã:
apt-get install nginx -y
Sau khi Nginx được cài đặt, hãy tạo tệp cấu hình Nginx bằng lệnh sau:
Mã:
nano /etc/nginx/conf.d/pghero.conf
Thêm nội dung sau dòng:
Mã:
server { listen 80; server_name pghero.example.com; location / { proxy_pass http://localhost:3001; }
}
Lưu và đóng tệp sau đó xác minh Nginx xem có lỗi cú pháp nào không:
Mã:
nginx -t
Bạn sẽ nhận được thông báo sau đầu ra:
Mã:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Tiếp theo, khởi động lại dịch vụ Nginx để áp dụng các thay đổi:
Mã:
systemctl restart nginx
Bây giờ bạn có thể kiểm tra trạng thái của Nginx bằng lệnh sau lệnh:
Mã:
systemctl status nginx
Bạn sẽ nhận được kết quả sau:
Mã:
? nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2022-11-28 16:36:27 UTC; 7s ago Docs: man:nginx(8) Process: 21878 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Process: 21879 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 21880 (nginx) Tasks: 3 (limit: 464122) Memory: 3.4M CGroup: /system.slice/nginx.service ??21880 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" ??21881 "nginx: worker process" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ??21882 "nginx: worker process" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ""
Nov 28 16:36:27 ubuntu22041 systemd[1]: Starting A high performance web server and a reverse proxy server...
Nov 28 16:36:27 ubuntu22041 systemd[1]: Started A high performance web server and a reverse proxy server.

Truy cập Bảng điều khiển PgHero​

Bây giờ, hãy mở trình duyệt web của bạn và truy cập giao diện web PgHero bằng URL Bạn sẽ thấy Bảng điều khiển PgHero trên màn hình sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22351%22%3E%3C/svg%3E


Nhấp vào Khoảng trắng ở ngăn bên trái, bạn sẽ thấy kích thước cơ sở dữ liệu PostgreSQL trên màn hình sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22343%22%3E%3C/svg%3E


Nhấp vào trên Kết nối. Bạn sẽ thấy tất cả các yêu cầu kết nối PostgreSQL của mình trên màn hình sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22398%22%3E%3C/svg%3E


Nhấp vào Điều chỉnh. Bạn sẽ thấy tất cả các thiết lập mặc định của mình trên màn hình sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22429%22%3E%3C/svg%3E

Kết luận​

Xin chúc mừng! Bạn đã cài đặt thành công PgHero trên máy chủ Ubuntu 22.04. Bây giờ bạn có thể triển khai PgHero trong môi trường sản xuất để dễ dàng quản lý và giám sát cơ sở dữ liệu PostgreSQL của mình từ trình duyệt web. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên