Thứ tư, 29/05/2019 | 00:00 GMT+7

Cách cài đặt và cấu hình Zabbix để giám sát an toàn server từ xa trên CentOS 7

Zabbix là phần mềm giám sát open-souce cho các mạng và ứng dụng. Nó cung cấp khả năng giám sát thời gian thực của hàng nghìn chỉ số được thu thập từ server , máy ảo, thiết bị mạng và ứng dụng web. Các chỉ số này có thể giúp bạn xác định tình trạng hiện tại của cơ sở hạ tầng CNTT và phát hiện các vấn đề với các thành phần phần cứng hoặc phần mềm trước khi khách hàng phàn nàn. Thông tin hữu ích được lưu trữ trong database để bạn có thể phân tích dữ liệu theo thời gian và cải thiện chất lượng của các dịch vụ được cung cấp hoặc lập kế hoạch nâng cấp thiết bị của bạn .

Zabbix sử dụng một số tùy chọn để thu thập số liệu, bao gồm giám sát không cần tác nhân của các dịch vụ user và kiến trúc client - server . Để thu thập số liệu server , nó sử dụng một tác nhân nhỏ trên client được giám sát để thu thập dữ liệu và gửi đến server Zabbix. Zabbix hỗ trợ giao tiếp được mã hóa giữa server và các client được kết nối, vì vậy dữ liệu được bảo vệ trong khi truyền qua các mạng không an toàn.

Server Zabbix lưu trữ dữ liệu của nó trong database quan hệ được cung cấp bởi MySQL , PostgreSQL hoặc Oracle . Bạn cũng có thể lưu trữ dữ liệu lịch sử trong database nosql như ElasticsearchTimescaleDB . Zabbix cung cấp giao diện web để bạn có thể xem dữ liệu và cấu hình cài đặt hệ thống.

Trong hướng dẫn này, bạn sẽ cấu hình hai máy. Một cái sẽ được cấu hình làm server và cái kia làm client mà bạn sẽ giám sát. Server sẽ sử dụng database MySQL để ghi dữ liệu giám sát và sử dụng Apache để phục vụ giao diện web.

Yêu cầu

Để làm theo hướng dẫn này, bạn cần :

Lưu ý : CentOS sử dụng MariaDB thay vì MySQL, nhưng điều này sẽ không gây ra sự cố nào khi làm theo hướng dẫn này.

Ngoài ra, vì bạn sẽ sử dụng server Zabbix để truy cập thông tin có giá trị về cơ sở hạ tầng của bạn mà bạn không muốn user lạ truy cập, điều quan trọng là bạn phải giữ an toàn cho server của bạn bằng cách cài đặt certificate TLS / SSL. Đây là tùy chọn nhưng được khuyến khích mạnh mẽ . Bạn có thể làm theo hướng dẫn Let's Encrypt trên CentOS 7 để lấy certificate TLS / SSL miễn phí.

Bước 1 - Cài đặt Server Zabbix

Trước tiên, bạn cần cài đặt Zabbix trên server mà bạn đã cài đặt MySQL, Apache và PHP. Đăng nhập vào máy này với quyền là user không phải root của bạn:

  • ssh sammy@zabbix_server_ip_address

Zabbix không có sẵn trong trình quản lý gói theo mặc định, vì vậy hãy cài đặt gói cấu hình repository bằng cách sử dụng kho lưu trữ Zabbix chính thức cho CentOS. Hướng dẫn này sẽ sử dụng version 4.2 của Zabbix:

  • sudo rpm -Uvh https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-1.el7.noarch.rpm

Bạn sẽ thấy kết quả sau:

Output
Retrieving https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-1.el7.noarch.rpm warning: /var/tmp/rpm-tmp.WXsYNB: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY Preparing... ################################# [100%] Updating / installing... 1:zabbix-release-4.2-1.el7 ################################# [100%]

Xóa tất cả các mục nhập cho các repository hiện được kích hoạt khỏi bộ nhớ cache:

  • sudo yum clean all

Sau đó cài đặt server Zabbix và giao diện user web với hỗ trợ database MySQL:

  • sudo yum install zabbix-server-mysql zabbix-web-mysql

Trong quá trình cài đặt, bạn sẽ được hỏi về việc nhập khóa GPG. Khóa này sẽ xác minh tính xác thực của gói bạn đang cài đặt. Để cho phép quá trình cài đặt kết thúc, hãy chấp nhận phím GPG bằng lệnh y và nhấn ENTER khi được yêu cầu làm như vậy.

Ngoài ra, hãy cài đặt Zabbix agent, nó sẽ cho phép bạn thu thập dữ liệu về chính trạng thái server Zabbix.

  • sudo yum install zabbix-agent

Trước khi có thể sử dụng Zabbix, bạn phải cài đặt database để lưu giữ dữ liệu mà server Zabbix sẽ thu thập từ các tác nhân của nó. Bạn có thể thực hiện việc này trong bước tiếp theo.

Bước 2 - Cấu hình Database MySQL cho Zabbix

Bạn cần tạo một database MySQL mới và điền vào nó một số thông tin cơ bản để làm cho nó phù hợp với Zabbix. Bạn cũng cần tạo một user cụ thể cho database này để Zabbix không đăng nhập vào MySQL bằng account root .

Đăng nhập vào MySQL với quyền là user gốc bằng password gốc mà bạn đã cài đặt trong quá trình cài đặt server MySQL:

  • mysql -uroot -p

Tạo database Zabbix với hỗ trợ ký tự UTF-8:

  • create database zabbix character set utf8 collate utf8_bin;

Sau đó, tạo một user mà server Zabbix sẽ sử dụng, cấp cho nó quyền truy cập vào database mới và đặt password cho user :

  • grant all privileges on zabbix.* to zabbix@localhost identified by 'your_zabbix_mysql_password';

Sau đó, áp dụng các quyền mới này:

  • flush privileges;

Điều đó sẽ chăm sóc user và database . Thoát ra khỏi console database :

  • quit;

Tiếp theo, nhập schemas và dữ liệu ban đầu. Cài đặt Zabbix đã cung cấp cho bạn một file cài đặt điều này.

Chạy lệnh sau để cài đặt schemas và nhập dữ liệu vào database zabbix . Sử dụng zcat vì dữ liệu trong file được nén.

  • zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

Nhập password cho user MySQL zabbix mà bạn đã cấu hình khi được yêu cầu .

Lệnh này sẽ không xuất ra bất kỳ lỗi nào nếu nó thành công. Nếu bạn thấy lỗi ERROR 1045 (28000): Access denied for user zabbix @'localhost' (using password: YES) thì hãy đảm bảo bạn đã sử dụng password cho user zabbix chứ không phải user root .

Để server Zabbix sử dụng database này, bạn cần đặt password database trong file cấu hình server Zabbix. Mở file cấu hình trong editor bạn muốn . Hướng dẫn này sẽ sử dụng vi :

  • sudo vi /etc/zabbix/zabbix_server.conf

Lưu ý: Để tìm hiểu thêm về editor vim và vim kế nhiệm của nó, hãy xem hướng dẫn Cài đặt và Sử dụng Trình soạn thảo Văn bản Vim trên Server cloud .

Tìm phần sau của file :

/etc/zabbix/zabbix_server.conf
... ### Option: DBPassword                            #       Database password. Ignored for SQLite.    #       Comment this line if no password is used. #                                                 # Mandatory: no                                   # Default:                                        # DBPassword= ... 

Những comment này trong file giải thích cách kết nối với database . Bạn cần đặt giá trị DBPassword trong file thành password cho user database của bạn. Vào chế độ insert bằng cách nhấn i , bỏ ghi chú DBPassword= , và thêm password của bạn để cấu hình database :

/etc/zabbix/zabbix_server.conf
... # Mandatory: no                                   # Default DBPassword=your_zabbix_mysql_password ... 

Khi bạn hoàn tất, nhấn ESC để thoát khỏi chế độ insert , sau đó :wqENTER để lưu và thoát khỏi file .

Điều đó sẽ chăm sóc cấu hình server Zabbix. Tiếp theo, bạn sẽ thực hiện một số sửa đổi đối với cài đặt PHP của bạn để giao diện web Zabbix hoạt động bình thường.

Bước 3 - Cấu hình PHP cho Zabbix

Giao diện web Zabbix được viết bằng PHP và yêu cầu một số cài đặt server PHP đặc biệt. Quá trình cài đặt Zabbix đã tạo file cấu hình Apache có chứa các cài đặt này. Bạn cần thực hiện một thay đổi nhỏ đối với file này, vì vậy hãy mở file bằng cách sau:

  • sudo vi /etc/httpd/conf.d/zabbix.conf

Tệp chứa các cài đặt PHP đáp ứng các yêu cầu cần thiết cho giao diện web Zabbix. Tuy nhiên, cài đặt múi giờ được comment theo mặc định. Để đảm bảo Zabbix sử dụng thời gian chính xác, bạn cần đặt múi giờ thích hợp.

/etc/httpd/conf.d/zabbix.conf
... <IfModule mod_php5.c>     php_value max_execution_time 300     php_value memory_limit 128M     php_value post_max_size 16M     php_value upload_max_filesize 2M     php_value max_input_time 300     php_value max_input_vars 10000     php_value always_populate_raw_post_data -1     # php_value date.timezone Europe/Riga </IfModule> 

Bỏ comment múi giờ, được đánh dấu trong khối mã trước đó và thay đổi nó thành múi giờ của bạn. Bạn có thể sử dụng danh sách múi giờ được hỗ trợ này để tìm múi giờ phù hợp với mình. Sau đó, lưu file .

Bây giờ khởi động lại Apache để áp dụng các cài đặt mới này:

  • sudo systemctl restart httpd

Lưu ý: Nếu SELinux đang chạy ở chế độ thực thi, bạn cần đặt nó ở chế độ cho phép bằng cách sử dụng sudo setenforce 0 để cho phép tác nhân Zabbix hoạt động tự do. Bạn có thể sử dụng hướng dẫn này để biết thêm thông tin về cơ chế điều khiển Linux được tăng cường bảo mật.

Đến đây bạn có thể khởi động server và tác nhân Zabbix:

  • sudo systemctl start zabbix-server
  • sudo systemctl start zabbix-agent

Sau đó, kiểm tra xem server Zabbix có đang chạy đúng cách hay không:

  • sudo systemctl status zabbix-server

Bạn sẽ thấy trạng thái sau:

Output
● zabbix-server.service - Zabbix Server Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; disabled; vendor preset: disabled) Active: active (running) since Fri 2019-05-03 05:57:29 UTC; 2s ago Process: 4461 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS) ...

Cuối cùng, cho phép server và tác nhân khởi động lúc khởi động:

  • sudo systemctl enable zabbix-server
  • sudo systemctl enable zabbix-agent

Server được cài đặt và kết nối với database . Tiếp theo, cài đặt giao diện user web.

Lưu ý: Như đã đề cập trong phần Yêu cầu , bạn nên bật SSL / TLS trên server của bạn . Bạn có thể làm theo hướng dẫn này ngay bây giờ để lấy certificate SSL miễn phí cho Apache trên CentOS 7. Sau khi có certificate SSL / TLS, bạn có thể quay lại và hoàn thành hướng dẫn này.

Bước 4 - Cấu hình cài đặt cho giao diện web Zabbix

Giao diện web cho phép bạn xem báo cáo và thêm server mà bạn muốn theo dõi, nhưng nó cần một số cài đặt ban đầu trước khi bạn có thể sử dụng. Chạy trình duyệt của bạn và truy cập địa chỉ http:// zabbix_server_name /zabbix/ . Trên màn hình đầu tiên, bạn sẽ thấy một thông báo chào mừng. Nhấp vào Bước tiếp theo để tiếp tục.

Trên màn hình tiếp theo, bạn sẽ thấy bảng liệt kê tất cả các yêu cầu để chạy Zabbix.

 Yêu cầu

Tất cả các giá trị trong bảng này phải OK , vì vậy hãy xác minh chúng đúng như vậy. Đảm bảo cuộn xuống và xem xét tất cả các yêu cầu . Khi bạn đã xác minh mọi thứ đã sẵn sàng, hãy nhấp vào Bước tiếp theo để tiếp tục.

Màn hình tiếp theo yêu cầu thông tin kết nối database .

Kết nối DB

Bạn đã nói với server Zabbix về database của bạn , nhưng giao diện web Zabbix cũng cần quyền truy cập vào database để quản lý server và đọc dữ liệu. Do đó, hãy nhập thông tin đăng nhập MySQL bạn đã cấu hình ở Bước 2 và nhấp vào Bước tiếp theo để tiếp tục.

Trên màn hình tiếp theo, bạn có thể để các tùy chọn ở giá trị mặc định của chúng.

Chi tiết  Server  Zabbix

Tên là tùy chọn; nó được sử dụng trong giao diện web để phân biệt server này với server khác trong trường hợp bạn có nhiều server giám sát. Nhấp vào Bước tiếp theo để tiếp tục.

Màn hình tiếp theo sẽ hiển thị tóm tắt cài đặt trước để bạn có thể xác nhận mọi thứ là chính xác.

Tóm lược

Nhấp vào Bước tiếp theo để chuyển sang màn hình cuối cùng.

Cài đặt giao diện web đã hoàn tất. Quá trình này tạo file cấu hình /etc/zabbix/web/zabbix.conf.php mà bạn có thể backup và sử dụng trong tương lai. Nhấp vào Hoàn tất để chuyển sang màn hình đăng nhập. User mặc định là Admin và password là zabbix .

Trước khi bạn đăng nhập, hãy cài đặt tác nhân Zabbix trên server CentOS thứ hai của bạn.

Bước 5 - Cài đặt và cấu hình Zabbix Agent

Đến đây bạn cần phải cấu hình phần mềm tác nhân sẽ gửi dữ liệu giám sát đến server Zabbix.

Đăng nhập vào server CentOS thứ hai:

  • ssh sammy@second_centos_server_ip_address

Sau đó, giống như trên server Zabbix, hãy chạy lệnh sau để cài đặt gói cấu hình repository :

  • sudo rpm -Uvh https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-1.el7.noarch.rpm

Tiếp theo, xóa bộ nhớ cache yum:

  • sudo yum clean all

Sau đó cài đặt Zabbix agent:

  • sudo yum install zabbix-agent

Trong quá trình cài đặt, bạn sẽ được hỏi về việc nhập khóa GPG. Xác nhận nó để quá trình cài đặt có thể hoàn tất.

Mặc dù Zabbix hỗ trợ mã hóa dựa trên certificate , nhưng việc cài đặt tổ chức phát hành certificate nằm ngoài phạm vi của hướng dẫn này. Thay vào đó, hướng dẫn này sẽ sử dụng khóa chia sẻ trước (PSK) để bảo mật kết nối giữa server và tác nhân.

Đầu tiên, tạo một PSK:

  • sudo sh -c "openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk"

Hiển thị key để bạn có thể sao chép nó ở đâu đó. Bạn cần nó để cấu hình server .

  • cat /etc/zabbix/zabbix_agentd.psk

Key sẽ trông giống như sau:

Output
a4374c8c3b55de472225dbf96aa7cd3ce6a34abc95d0eb2a601d954ee0cd4410

Bây giờ, hãy chỉnh sửa cài đặt tác nhân Zabbix để cài đặt kết nối an toàn của nó với server Zabbix. Mở file cấu hình tác nhân trong editor của bạn:

  • sudo vi /etc/zabbix/zabbix_agentd.conf

Mỗi cài đặt trong file này được ghi lại thông qua các comment thông tin trong toàn file , nhưng bạn chỉ cần chỉnh sửa một số trong số đó.

Đầu tiên, bạn phải chỉnh sửa địa chỉ IP của server Zabbix. Tìm phần sau:

/etc/zabbix/zabbix_agentd.conf
... ### Option: Server #       List of comma delimited IP addresses (or hostnames) of Zabbix servers. #       Incoming connections will be accepted only from the hosts listed here. #       If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally. # # Mandatory: no # Default: # Server=  Server=127.0.0.1 ... 

Thay đổi giá trị mặc định thành IP của server Zabbix của bạn:

/etc/zabbix/zabbix_agentd.conf
... # Mandatory: no # Default: # Server=  Server=zabbix_server_ip_address ... 

Tiếp theo, tìm phần cấu hình kết nối an toàn với server Zabbix và bật hỗ trợ khóa chia sẻ trước. Tìm phần TLSConnect , trông giống như sau:

/etc/zabbix/zabbix_agentd.conf
... ### Option: TLSConnect #       How the agent should connect to server or proxy. Used for active checks. #       Only one value can be specified: #               unencrypted - connect without encryption #               psk         - connect using TLS and a pre-shared key #               cert        - connect using TLS and a certificate # # Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection) # Default: # TLSConnect=unencrypted ... 

Sau đó bỏ ghi chú TLSConnect= và thay thế unencrypted bằng psk để cấu hình hỗ trợ khóa chia sẻ trước:

/etc/zabbix/zabbix_agentd.conf
... TLSConnect=psk ... 

Tiếp theo, tìm phần TLSAccept , trông giống như sau:

/etc/zabbix/zabbix_agentd.conf
... ### Option: TLSAccept #       What incoming connections to accept. #       Multiple values can be specified, separated by comma: #               unencrypted - accept connections without encryption #               psk         - accept connections secured with TLS and a pre-shared key #               cert        - accept connections secured with TLS and a certificate # # Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection) # Default: # TLSAccept=unencrypted ... 

Cấu hình các kết nối đến để hỗ trợ khóa chia sẻ trước bằng cách bỏ ghi chú TLSAccept= và thêm psk :

/etc/zabbix/zabbix_agentd.conf
... TLSAccept=psk ... 

Tiếp theo, tìm phần TLSPSKIdentity , trông giống như sau:

/etc/zabbix/zabbix_agentd.conf
... ### Option: TLSPSKIdentity #       Unique, case sensitive string used to identify the pre-shared key. # # Mandatory: no # Default: # TLSPSKIdentity= ... 

Chọn một tên duy nhất để xác định khóa chia sẻ trước của bạn bằng cách bỏ ghi chú TLSPSKIdentity= và thêm mã được đánh dấu:

/etc/zabbix/zabbix_agentd.conf
... TLSPSKIdentity=PSK 001 ... 

Bạn sẽ sử dụng nó làm ID PSK khi thêm server của bạn thông qua giao diện web Zabbix.

Sau đó đặt tùy chọn trỏ đến khóa chia sẻ trước đã tạo trước đó của bạn. Tìm tùy chọn TLSPSKFile :

/etc/zabbix/zabbix_agentd.conf
... ### Option: TLSPSKFile #       Full pathname of a file containing the pre-shared key. # # Mandatory: no # Default: # TLSPSKFile= ... 

Bỏ ghi chú TLSPSKFile= và thêm văn bản này để trỏ tác nhân Zabbix đến file PSK bạn đã tạo:

/etc/zabbix/zabbix_agentd.conf
... TLSPSKFile=/etc/zabbix/zabbix_agentd.psk ... 

Lưu và đóng file . Đến đây bạn có thể khởi động tác nhân Zabbix và đặt nó bắt đầu lúc khởi động:

  • sudo systemctl start zabbix-agent
  • sudo systemctl enable zabbix-agent

Để có biện pháp tốt, hãy kiểm tra xem tác nhân Zabbix đang chạy đúng cách:

  • sudo systemctl status zabbix-agent

Bạn sẽ thấy trạng thái sau, cho biết tác nhân đang chạy:

Output
● zabbix-agent.service - Zabbix Agent Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; enabled; vendor preset: disabled) Active: active (running) since Fri 2019-05-03 06:25:06 UTC; 28s ago ...

Tác nhân sẽ lắng nghe các kết nối từ server trên cổng 10050 . Để cấu hình quyền truy cập đến từ các địa chỉ IP hoặc mạng con cụ thể, hãy sử dụng chức năng luật phong phú của firewalld :

  • sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="zabbix_server_ip_address/32" port protocol="tcp" port="10050" accept'

Các luật phong phú cho phép bạn tạo các luật firewalld phức tạp hơn và có thể tùy chỉnh để có được quyền kiểm soát tốt hơn đối với firewall của bạn. Trong lệnh này, bạn đang thêm luật chấp nhận lưu lượng ipv4 từ nguồn mà bạn đã đặt làm địa chỉ IP của server Zabbix, vào port 10050 của server CentOS thứ hai của bạn.

Tiếp theo, reload firewalld để kích hoạt luật mới:

  • sudo firewall-cmd --reload

Tác nhân của bạn hiện đã sẵn sàng chấp nhận các kết nối và gửi dữ liệu đến server Zabbix. Nhưng để sử dụng nó, bạn phải liên kết đến nó từ console web của server . Trong bước tiếp theo, bạn sẽ hoàn thành cấu hình.

Bước 6 - Thêm server mới vào server Zabbix

Cài đặt một tác nhân trên một server mà bạn muốn theo dõi chỉ là một nửa của quá trình. Mỗi server lưu trữ bạn muốn theo dõi cần phải được đăng ký trên server Zabbix, bạn có thể thực hiện việc này thông qua giao diện web.

Đăng nhập vào giao diện web của server Zabbix bằng cách chuyển đến địa chỉ http:// zabbix_server_name /zabbix/ .

Màn hình đăng nhập Zabbix

Khi bạn đã đăng nhập, hãy nhấp vào Cấu hình , sau đó nhấp vào Server trong thanh chuyển trên cùng. Sau đó nhấp vào nút Tạo server lưu trữ ở góc trên cùng bên phải của màn hình. Thao tác này sẽ mở trang cấu hình server lưu trữ.

Tạo  server

Điều chỉnh Tên server địa chỉ IP để phản ánh tên server và địa chỉ IP của server CentOS thứ hai của bạn, sau đó thêm server vào một group . Bạn có thể chọn một group hiện có, ví dụ như server Linux hoặc tạo group của bạn . Server có thể ở nhiều group . Để thực hiện việc này, hãy nhập tên của một group hiện có hoặc group mới vào trường Group và chọn giá trị mong muốn từ danh sách được đề xuất.

Khi bạn đã thêm group , hãy nhấp vào tab Mẫu .

Thêm mẫu vào  server

Nhập Template OS Linux vào trường Tìm kiếm , sau đó nhấp vào Thêm ngay dưới thanh tìm kiếm để thêm mẫu này vào server .

Tiếp theo, chuyển đến tab Mã hóa . Chọn PSK cho cả Kết nối với server Kết nối từ server và bỏ chọn Không mã hóa cho Kết nối từ server . Sau đó, đặt danh tính PSK 001 , là giá trị của cài đặt TLSPSKIdentity của tác nhân Zabbix mà bạn đã cấu hình trước đó. Sau đó, đặt giá trị PSK thành khóa bạn đã tạo cho đại lý Zabbix. Đó là file được lưu trữ trong file /etc/zabbix/zabbix_agentd.psk trên máy đại lý.

 Cài đặt  mã hóa

Cuối cùng, nhấp vào nút Thêm ở cuối biểu mẫu để tạo server lưu trữ.

Bạn sẽ thấy server mới của bạn trong danh sách. Chờ một phút và reload trang sẽ thấy các nhãn màu xanh lục cho biết mọi thứ đang hoạt động tốt và kết nối đã được mã hóa.

Zabbix hiển thị  server  mới của bạn

Nếu bạn có thêm server cần theo dõi, hãy đăng nhập vào từng server , cài đặt tác nhân Zabbix, tạo PSK, cấu hình tác nhân và thêm server vào giao diện web theo các bước tương tự bạn đã làm để thêm server lưu trữ đầu tiên của bạn .

Server Zabbix hiện đang giám sát server CentOS thứ hai của bạn. Bây giờ, hãy cài đặt thông báo qua email để được thông báo về các vấn đề.

Bước 7 - Cấu hình thông báo qua email

Zabbix tự động hỗ trợ một số loại thông báo: email, Jabber , SMS, v.v. Bạn cũng có thể sử dụng các phương pháp thông báo thay thế, chẳng hạn như Telegram hoặc Slack. Bạn có thể xem danh sách đầy đủ các tích hợp tại đây .

Phương thức giao tiếp đơn giản nhất là email và hướng dẫn này sẽ cấu hình thông báo cho loại phương tiện này.

Bấm vào Quản trị , sau đó bấm Loại phương tiện trong thanh chuyển trên cùng. Bạn sẽ thấy danh sách tất cả các loại phương tiện. Nhấp vào Email .

Điều chỉnh các tùy chọn SMTP theo cài đặt được cung cấp bởi dịch vụ email của bạn. Hướng dẫn này sử dụng các khả năng SMTP của Gmail để cài đặt thông báo qua email; nếu bạn muốn biết thêm thông tin về cách cài đặt này, hãy xem Cách sử dụng Server SMTP của Google .

Lưu ý: Nếu sử dụng Xác minh 2 bước với Gmail, bạn cần tạo Mật khẩu ứng dụng cho Zabbix. Bạn không cần phải nhớ nó, bạn sẽ chỉ phải nhập Mật khẩu ứng dụng một lần trong khi cài đặt . Bạn sẽ tìm thấy hướng dẫn về cách tạo password này trong Trung tâm trợ giúp của Google .

Bạn cũng có thể chọn định dạng tin nhắn — html hoặc văn bản thuần túy. Cuối cùng, nhấp vào nút Cập nhật ở cuối biểu mẫu để cập nhật thông số email.

 Cài đặt  email

Bây giờ, hãy tạo một user mới. Nhấp vào Quản trị , sau đó nhấp vào User trong thanh chuyển trên cùng. Bạn sẽ thấy danh sách user . Sau đó nhấp vào nút Tạo user ở góc trên cùng bên phải màn hình. Thao tác này sẽ mở trang cấu hình user .

Tạo  user

Nhập tên user mới vào trường Bí danh và cài đặt password mới. Tiếp theo, thêm user vào group của administrator . Zabbix administrators vào trường Group và chọn nó từ danh sách được đề xuất.

Khi bạn đã thêm group , hãy nhấp vào tab Phương tiện và nhấp vào liên kết Thêm được gạch chân. Bạn sẽ thấy một cửa sổ bật lên.

Thêm một email

Nhập địa chỉ email của bạn vào trường Gửi tới . Bạn có thể để phần còn lại của các tùy chọn ở giá trị mặc định. Nhấp vào nút Thêm ở dưới cùng để gửi.

Bây giờ chuyển đến tab Quyền . Chọn Zabbix Super Admin từ menu thả xuống Loại user .

Cuối cùng, nhấp vào nút Thêm ở cuối biểu mẫu để tạo user .

Đến đây bạn cần bật thông báo. Nhấp vào tab Cấu hình , sau đó nhấp vào Hành động trong thanh chuyển trên cùng. Bạn sẽ thấy một hành động được cấu hình trước, hành động này chịu trách nhiệm gửi thông báo đến tất cả các administrator Zabbix. Bạn có thể xem lại và thay đổi cài đặt bằng cách nhấp vào tên của nó. Đối với mục đích của hướng dẫn này, hãy sử dụng các tham số mặc định. Để kích hoạt hành động, nhấp vào liên kết Disabled màu đỏ trong cột Trạng thái.

Đến đây bạn đã sẵn sàng để nhận thông báo. Trong bước tiếp theo, bạn sẽ tạo một thông báo để kiểm tra cài đặt thông báo của bạn .

Bước 8 - Tạo thông báo kiểm tra

Trong bước này, bạn sẽ tạo một cảnh báo kiểm tra đảm bảo mọi thứ được kết nối. Theo mặc định, Zabbix theo dõi dung lượng ổ đĩa trống trên server của bạn. Nó tự động phát hiện tất cả các ổ đĩa và thêm các kiểm tra tương ứng. Khám phá này được thực hiện mỗi giờ, vì vậy bạn cần đợi một lúc để thông báo được kích hoạt.

Tạo một file tạm thời đủ lớn để kích hoạt cảnh báo sử dụng hệ thống file của Zabbix. Để thực hiện việc này, hãy đăng nhập vào server CentOS thứ hai của bạn nếu bạn chưa kết nối.

  • ssh sammy@second_centos_server_ip_address

Tiếp theo, xác định bạn có bao nhiêu dung lượng trống trên server . Bạn có thể sử dụng lệnh df để tìm hiểu:

  • df -h

Lệnh df sẽ báo cáo việc sử dụng không gian đĩa của hệ thống file của bạn và -h sẽ làm cho kết quả có thể đọc được. Bạn sẽ thấy kết quả như sau:

Output
Filesystem Size Used Avail Use% Mounted on /dev/vda1 25G 958M 25G 4% /

Trong trường hợp này, dung lượng trống là 25GB . Không gian trống của bạn có thể khác nhau.

Sử dụng lệnh fallocate , cho phép bạn phân bổ trước hoặc phân bổ dung lượng cho một file , để tạo một file chiếm hơn 80% dung lượng đĩa có sẵn. Điều này sẽ đủ để kích hoạt cảnh báo:

  • fallocate -l 20G /tmp/temp.img

Sau khoảng một giờ, Zabbix sẽ kích hoạt cảnh báo về dung lượng ổ đĩa trống và sẽ chạy hành động bạn đã cấu hình , gửi tin nhắn thông báo. Bạn có thể kiểm tra hộp thư đến của bạn để tìm thư từ server Zabbix. Bạn sẽ thấy một thông báo như:

Problem started at 10:49:25 on 2019.05.03 Problem name: Free disk space is less than 20% on volume / Host: Second Centos Server Severity: Warning  Original problem ID: 34 

Bạn cũng có thể chuyển đến tab Giám sát , sau đó là Trang tổng quan để xem thông báo và chi tiết của nó.

 Control panel  chính

Đến đây bạn biết các cảnh báo đang hoạt động, hãy xóa file tạm thời bạn đã tạo để bạn có thể lấy lại dung lượng đĩa của bạn :

  • rm -f /tmp/temp.img

Sau một phút, Zabbix sẽ gửi thông báo khôi phục và cảnh báo sẽ không xuất hiện khỏi trang tổng quan chính.

Kết luận

Trong hướng dẫn này, bạn cài đặt một giải pháp giám sát đơn giản và an toàn sẽ giúp bạn theo dõi trạng thái của các server của bạn . Như vậy, nó có thể cảnh báo bạn về các sự cố và bạn có cơ hội phân tích các quy trình xảy ra trong cơ sở hạ tầng CNTT của bạn .

Để tìm hiểu thêm về cách cài đặt cơ sở hạ tầng giám sát, hãy xem Cách cài đặt Elasticsearch, Logstash và Kibana (Elastic Stack) trên CentOS 7Cách thu thập số liệu cơ sở hạ tầng với Metricbeat trên CentOS 7 .


Tags:

Các tin liên quan

Cách tạo một cụm Kubernetes bằng Kubeadm trên CentOS 7
2019-04-24
Cách cài đặt và sử dụng ClickHouse trên CentOS 7
2019-04-15
Cách thu thập số liệu cơ sở hạ tầng với Metricbeat trên CentOS 7
2019-03-27
Các bước được đề xuất bổ sung cho server CentOS 7 mới
2019-02-20
Cách cài đặt Elasticsearch, Logstash và Kibana (Elastic Stack) trên CentOS 7
2018-12-10
Cách lấy chứng chỉ SSL Wildcard của Let's Encrypt bằng cách sử dụng CloudFlare Validation trên CentOS 7
2018-08-16
Cách cài đặt và cấu hình LEMP bằng Bộ sưu tập phần mềm trên CentOS 7
2018-04-20
Cách thiết lập khóa SSH trên CentOS 7
2018-04-12
Cách cài đặt và bảo mật Memcached trên CentOS 7
2018-03-06
Cách cài đặt Java trên CentOS và Fedora
2018-02-16