Hướng dẫn cài đặt Monit trên Linux

Tác giả: VPS chính hãng 09 tháng 07, 2023

Monit là một công cụ nguồn mở và miễn phí cho phép người dùng Unix quản lý và giám sát hệ thống của họ. Với tính năng bảo trì và sửa chữa tự động, tiện ích nhỏ này sẽ thực hiện các hành động hữu ích khi có sự cố xảy ra. Trong bài viết này, bạn sẽ học chúng tôi sẽ chia sẻ tới bạn cách cài đặt Monit trên Linux để giám sát máy chủ.

Monit là gì và Tại sao chúng ta nên sử dụng nó?

Là quản trị viên hệ thống, bạn sẽ thấy Monit là một công cụ rất hữu ích vì nó giám sát và quản lý các quy trình, tệp, thư mục, tổng kiểm tra, cấp quyền và giám sát hệ thống tệp một cách tự động. Ngoài ra, trên các nhà cung cấp và hệ thống dựa trên Unix/Linux, nó quản lý và giám sát các dịch vụ như Apache, Nginx, MySQL, FTP, SSH và SMTP. Monit bao gồm một giao diện HTTP(S) đơn giản mà bạn có thể sử dụng để duyệt qua máy chủ Monit và xem trạng thái của tất cả các dịch vụ đang được theo dõi. Bạn có thể bắt đầu, dừng và khởi động lại các quy trình cũng như tắt hoặc bật giám sát dịch vụ thông qua giao diện web.

Một quy trình có thể được bắt đầu bởi Monit nếu nó chưa chạy, khởi động lại nếu nó không phản hồi và dừng lại nếu nó tiêu tốn quá nhiều tài nguyên. Ngoài ra, Monit có thể được sử dụng để theo dõi dấu thời gian, tổng kiểm tra, kích thước tệp và các thay đổi khác trong tệp, thư mục và hệ thống tệp. Bạn có thể sử dụng Monit để theo dõi cổng TCP/IP, giao thức máy chủ và ping của các máy chủ ở xa. Monit duy trì tệp nhật ký của riêng mình và thông báo cho người dùng về bất kỳ lỗi khẩn cấp nào và tiến trình khôi phục. Ngoài ra cài đặt Monit trên Linux cho phép bạn theo dõi tài nguyên hệ thống của máy chủ cục bộ nói chung, bao gồm tải trung bình, mức tiêu thụ bộ nhớ và mức sử dụng CPU.

Monit rất hữu ích để giám sát các hệ thống trên Linux

Monit rất hữu ích để giám sát các hệ thống trên Linux

Hướng dẫn Cài đặt và Thiết lập Monit trên Linux

Khi bạn mua VPS Linux, bạn có thể sử dụng Monit vì hầu hết các bản phân phối Unix đều có nó. Nhưng nếu máy chủ của bạn không có Monit hãy làm theo các bước của hướng dẫn này để tìm hiểu cách cài đặt và định cấu hình Monit trên Linux của bạn. Các bước hướng dẫn này trình bày cách cài đặt và cấu hình Monit trên các bản phân phối Linux dựa trên RHEL và Debian. Vì vậy, người dùng CentOS, RHEL, Fedora, Ubuntu và Debian có thể sử dụng hướng dẫn sau.

=>> Cách cài đặt LOMP trên Ubuntu

Bước 1. Cài đặt Monit trên Linux

Vì tiện ích Monit không có sẵn trong kho lưu trữ cơ sở hệ thống mặc định, trước tiên bạn cần cài đặt kho lưu trữ epel.

Trên các hệ thống dựa trên RHEL 8 và 9:

# dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
# dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm 

Trên hệ thống dựa trên RHEL 7:

# yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Trên Fedora 22+:

# dnf install monit

Trên DebianUbuntu:

$ sudo apt-get install monit

Trên Linux Arch:

$ pacman -S monit

Chạy các lệnh sau để cài đặt các gói Monit khi bạn hoàn tất việc thêm kho lưu trữ epel:

# yum install monit

Trên Linux Fedora:

# dnf install monit

Bước 2. Thiết lập Monit trên Linux

Cài đặt Monit trên Linux đã được hoàn tất thành công ở bước trước. Bây giờ hãy cấu hình nó. Bước này rất dễ dàng. Bạn chỉ cần thực hiện các thay đổi trong tệp cấu hình Monit vì nó có giao diện web chạy trên cổng 2812 bằng máy chủ web.

Tệp cấu hình chính của monit được đặt tại /etc/monit.conf trong RedHat/CentOS/Fedora và tệp /etc/monit/monitrc cho Ubuntu/Debian/Linux Mint.

Mở trình chỉnh sửa ưa thích của bạn và chỉnh sửa tệp bên dưới:

# vi /etc/monitrc

hoặc:

$ sudo nano /etc/monit/monitrc

Bỏ ghi chú phần tiếp theo, thêm địa chỉ IP hoặc tên miền của máy chủ, kích hoạt kết nối công khai và sửa đổi người dùng và mật khẩu hoặc sử dụng các giá trị mặc định.

set httpd port 2812 and
     use address 0.0.0.0  # only accept connections from localhost
     allow 0.0.0.0/0        # allow localhost to connect to the server and
     allow admin:monit      # require user 'admin' with password 'monit'
     allow @monit           # allow users of group 'monit' to connect (rw)
     allow @users readonly  # allow users of group 'users' to connect readonly

Sau khi được định cấu hình, dịch vụ Monit phải được khởi động, bật và xác minh để tải lại cài đặt cấu hình đã sửa đổi.

# systemctl start monit
# systemctl enable monit
# systemctl status monit

Bước 3. Truy cập giao diện web Monit

Hai bước trước đã giúp bạn cài đặt Monit trên Linux. Bây giờ, hãy truy cập giao diện web Monit. Chỉ cần điều hướng đến các URL sau:

http://localhost:2812

hoặc:

http://ip-address:2812

hoặc:

http://example.com:2812

Sau đó nhập “admin” cho tên người dùng và “monit” cho mật khẩu. Bạn sẽ thấy một màn hình giống như bên dưới.

Kết quả sau khi nhập tên và mật khẩu

Kết quả sau khi nhập tên và mật khẩu

Bây giờ điều hướng đến 2812 trên localhost trong trình duyệt của bạn để mở giao diện web Monit.

Giao diện web Monit được thiết lập

Giao diện web Monit được thiết lập

Bước 4. Thêm dịch vụ Linux trong Monit

Như chúng tôi đã đề cập, Apache, Nginx, MySQL, FTP, SSH và SMTP là những dịch vụ mà Monit có thể giám sát chúng. Trong bước này, bạn đã sẵn sàng thêm các dịch vụ Linux này vào Monit Mentoring. Để thực hiện việc này, bạn cần chỉnh sửa tệp cấu hình monit của mình và thêm các cài đặt sau vào cuối tệp.

Cách giám sát Apache trong Monit

check process httpd with pidfile /var/run/httpd.pid
group apache
start program = "/usr/bin/systemctl httpd start"
stop program = "/usr/bin/systemctl httpd stop"
if failed host 127.0.0.1 port 80
protocol http then restart
if 5 restarts within 5 cycles then timeout

Cách giám sát Apache2 trong Monit

check process apache with pidfile /run/apache2.pid
start program = "/usr/bin/systemctl apache2 start" with timeout 60 seconds
stop program  = "/usr/bin/systemctl apache2 stop"

Apache có thể bị dừng hoặc khởi động lại bởi Monit, điều này cũng có thể thông báo cho bạn. Các thuộc tính của quy trình, chẳng hạn như dung lượng bộ nhớ hoặc thời gian CPU mà một quy trình đang sử dụng, cũng có thể được theo dõi bởi Monit.

Cách giám sát Nginx trong Monit

check process nginx with pidfile /var/run/nginx.pid
start program = "/usr/bin/systemctl nginx start"
stop program = "/usr/bin/systemctl nginx stop"

Cách giám sát MySQL trong Monit

check process mysqld with pidfile /var/run/mysqld/mysqld.pid
group mysql
start program = "/usr/bin/systemctl mysqld start"
stop program = "/usr/bin/systemctl mysqld stop"
if failed host 127.0.0.1 port 3306 then restart
if 5 restarts within 5 cycles then timeout

Cách giám sát SSH trong Monit

check process sshd with pidfile /var/run/sshd.pid
start program "/usr/bin/systemctl sshd start"
stop program "/usr/bin/systemctl sshd stop"
if failed host 127.0.0.1 port 22 protocol ssh then restart
if 5 restarts within 5 cycles then timeout

Cách giám sát MySQL/MariaDB trong Monit

check process mysqld with pidfile /var/run/mysqld/mysqld.pid
    start program = "/etc/init.d/mysql start"
    stop program = "/etc/init.d/mysql stop"

Tùy thuộc vào phiên bản MySQL bạn đã cài đặt, vị trí của tệp PID và tập lệnh init có thể thay đổi.

Bước 5. Xác minh cú pháp Monit để tìm lỗi

Khi bạn đã thiết lập mọi chương trình để theo dõi, hãy tìm bất kỳ lỗi nào trong cú pháp monit.

# monit -t

hoặc:

$ sudo monit -t

Sau đó, sử dụng các lệnh bên dưới để bắt đầu dịch vụ Monit:

# systemctl monit restart

hoặc:

$ sudo systemctl monit restart

Monit có thể xử lý nếu xảy ra tình huống lỗi. Tại thời điểm này, bạn đã xác minh cấu hình và sẵn sàng sử dụng chương trình giám sát Monit trên Linux.

=>> Cách cài đặt và cấu hình PostgreSQL trên Ubuntu

Trong bài viết này, bạn đã biết cách cài đặt Monit trên Linux để giám sát máy chủ, bao gồm tất cả các tính năng cần thiết để giám sát hệ thống và khắc phục lỗi. Nó giống như có một cơ quan giám sát với hộp công cụ trên máy chủ của bạn. Đừng ngần ngại liên hệ với chúng tôi nếu bạn gặp bất kỳ sự cố nào. Chúc các bạn thành công!