Tìm hiểu về zabbix (phần 3)
Trong bài này, ta sẽ tìm hiểu nốt về zabbix: gửi mail thông báo lỗi và tính năng auto discovery trên zabbix 1. Cài đặt SMTP để gửi mail Login vào zabbix admin: [administration] -> [Media Types] click "Email" Điền thông tin server smtp vào và click "Update" Nhiều item được cấu hình ...
Trong bài này, ta sẽ tìm hiểu nốt về zabbix: gửi mail thông báo lỗi và tính năng auto discovery trên zabbix
1. Cài đặt SMTP để gửi mail
Login vào zabbix admin: [administration] -> [Media Types] click "Email"
Điền thông tin server smtp vào và click "Update"
Nhiều item được cấu hình với template mặc định nhưng không gửi thông báo tới mail. Vì vậy ta cần cấu hình thêm: Vào [Configuration] - [Actions] tab. Chú ý Status của action. Nếu đang disable thì phải enable lên
Tất cả các mail tới mặc định sẽ được gửi vào group zabbix admin
Nếu giá trị lớn hơn giá trị thiết lập như là một kích hoạt, một thông báo được gửi như sau ví dụ:
Date: Mon, 9 Feb 2015 19:35:15 +0900
Subject: PROBLEM: /etc/passwd has been changed on 10.0.1.70
Content-Type: text/plain; charset="UTF-8"
Status: R
Trigger: /etc/passwd has been changed on 10.0.1.70 Trigger status: PROBLEM Trigger severity: Warning Trigger URL: Item values:
- Checksum of /etc/passwd (10.0.1.70:vfs.file.cksum[/etc/passwd]): 793642738
- UNKNOWN (UNKNOWN:UNKNOWN): UNKNOWN
- UNKNOWN (UNKNOWN:UNKNOWN): UNKNOWN
Original event ID: 3646
Gửi notification là một trong những điều mà action thực hiện trong Zabbix. Vì vậy, để thiết lập một notification, chọn Configuration → Actions và nhấn vào Create action.
Có thể set trigers trong "Conditions" tab
Hoặc thiết lập 1 action trong tab "Operations" Click Add trong phần "Send to Users" và chọn User mà chúng ta mong muốn gửi noti. Chọn "Email" cho mục "Send only to". Click "Add" khi đã hoàn thành
2. Automatic discovery
Zabbix cung cấp chức năng tự động phát hiện. Đó là 1 tính năng hiệu quả và rất linh hoạt.
Với các thiết lập đúng, bạn có thể giúp:
- Tăng tốc độ deploy trên zabbix
- Đơn giản hóa quản trị
- Sử dụng zabbix tiện lợi trong môi trường dễ thay đổi
Zabbix discovery dựa trên các thông tin sau:
- Dải IP
- Các dịch vụ sẵn có (FTP, SSH, WEB, POP3, IMAP, TCP, ...)
- Thông tin từ zabbix agent
- Thông tin từ SNMP agent
Để cấu hình luật network discovery để phát hiện host và services:
- Vào Configuration -> Discovery
- Click Create Rule
- Chỉnh sửa các thuộc tính của rule
Ví dụ: Muốn phát hiện thiết bị cho dải mạng: 10.0.1.1-254 thỏa mãn các yêu cầu:
- phát hiện những host đang chạy zabbix agent
- discovery cách nhau 10 phút mỗi lần
- thêm 1 host để monitor nếu thời gian uptime lớn hơn 1 tiếng
- loại bỏ host nếu downtime lớn hơn 24 giờ
- thêm host Linux với template Template_Linux và cho vào group “Linux servers” group
Bước 1:
- Tạo rule với dải IP: 10.0.1.1-254
- Chạy cách nhau mỗi 600s.
- Lấy tên của các host với key "system.uname"
Bước 2: Thiết lập action
action này sẽ active nếu:
- zabbix agent "up"
- giá trị của system.uname có chứa "Linux"
- Uptime 1 giờ hoặc hơn
Các host sẽ được add vào group "Linux server" cùng với template "Template_Linux"
Đừng quên "Enable" action lên:
Tiếp theo, ta sẽ tạo thêm 1 rule remove host có thời gian downtime quá 1 ngày:
Kiểm tra lại action enable hay chưa:
3. Active agent auto-registration
Nó có thể cho phép agent Zabbix tự động đăng ký, sau đó các máy chủ có thể bắt đầu theo dõi. Bằng cách này, host mới có thể được thêm vào để theo dõi mà không cần cấu hình chúng bằng tay trên máy chủ.
Đăng ký tự động có thể xảy ra khi một agent active trước đó chưa biết yêu cầu kiểm tra.
Các tính năng có thể rất tiện dụng cho giám sát tự động. Ngay sau khi bạn có một host mới trên Cloud Zabbix sẽ tự động bắt đầu thu thập các dữ liệu hiệu suất và tính sẵn sàng của máy chủ.
Server, khi thêm các host tự động đăng ký mới, sử dụng các địa chỉ IP đã nhận và cổng để cấu hình agent. Nếu không có giá trị địa chỉ IP được nhận, một IP sẽ được sử dụng cho các kết nối đến. Nếu không có giá trị cổng được nhận, port 10050 được sử dụng.
Cấu hình sử dụng: host metadata
- Host metadata được cấu hình trong file zabbix_agentd.conf . Có 2 cách để cấu hình:
HostMetadata
HostMetadataItem
VD: file config với
HostMetadataItem=system.uname
Bằng cách này, bạn chắc chắn rằng host metadata sẽ chứa "Linux" hoặc "Windows" tùy thuộc vào agent đang chạy trên đó. Một ví dụ về metadata trong trường hợp này:
Linux: Linux server3 3.2.0-4-686-pae #1 SMP Debian 3.2.41-2 i686 GNU/Linux
Windows: Windows WIN-0PXGGSTYNHO 6.0.6001 Windows Server 2008 Service Pack 1 Intel IA-32
Bây giờ cần phải tạo 2 action:
- Name: Linux host autoregistration Conditions: Host metadata like Linux Operations: Link to templates: Template OS Linux
- Name: Windows host autoregistration Conditions: Host metadata like Windows Operations: Link to templates: Template OS Windows
VD 2: trong file config với
HostMetadata: Linux 21df83bf21bf0be663090bb8d4128558ab9b95fba66a6dbf834f8b91ae5e08ae
Ta sẽ tạo 1 action: Name: Auto registration action Linux Conditions: Type of calculation: AND Condition (A): Host metadata like Linux Condition (B): Host metadata like 21df83bf21bf0be663090bb8d4128558ab9b95fba66a6dbf834f8b91ae5e08ae Operations: Send message to users: Admin via all media Add to host groups: Linux servers Link to templates: Template OS Linux