+1

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" 1.PNG

Điền thông tin server smtp vào và click "Update" 2.PNG 3.PNG

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 4.PNG

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:

  1. Checksum of /etc/passwd (10.0.1.70:vfs.file.cksum[/etc/passwd]): 793642738
  1. UNKNOWN (UNKNOWN:UNKNOWN): UNKNOWN
  1. 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. 5.png

Có thể set trigers trong "Conditions" tab 6.png

Hoặc thiết lập 1 action trong tab "Operations" 7.png 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 8.png

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" 9.PNG

Bước 2: Thiết lập action 10.PNG 11.PNG 12.PNG

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: 13.PNG

Tiếp theo, ta sẽ tạo thêm 1 rule remove host có thời gian downtime quá 1 ngày: 14.PNG 15.PNG

Kiểm tra lại action enable hay chưa: 16.PNG

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:

  1. Name: Linux host autoregistration Conditions: Host metadata like Linux Operations: Link to templates: Template OS Linux
  2. Name: Windows host autoregistration Conditions: Host metadata like Windows Operations: Link to templates: Template OS Windows

20.PNG

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

17.PNG 18.PNG 19.PNG


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.