Bài giảng Quản trị mạng - Chương 6: Nagios - Bùi Minh Quân

Nagios

 Phần mềm giám sát hệ thống mạng

 Thực hiện việc theo dõi và đưa ra các cảnh báo về trạng

thái các host và các dịch vụ

 Cho phép quản trị mạng chủ động phát hiện sớm các sự

cố về hạ tầng công nghệ thông tin

 Được xây dựng trên nền tảng mã nguồn mở

 Chính sách bản quyền: có phiên bản miễn phí và trả phí

 Phát triển các dịch vụ kiểm tra dựa trên các ngôn ngữ

(shell scripts, C++, Perl, Ruby, Python, PHP, C#, etc.)

pdf 40 trang yennguyen 2820
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Quản trị mạng - Chương 6: Nagios - Bùi Minh Quân", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Quản trị mạng - Chương 6: Nagios - Bùi Minh Quân

Bài giảng Quản trị mạng - Chương 6: Nagios - Bùi Minh Quân
NAGIOS
Trình bày: Bùi Minh Quân
Email: bmquan@cit.ctu.edu.vn
1
NỘI DUNG
 Tổng quan Nagios
 Kiến trúc Nagios
 Cấu hình Nagios
 Nagios Remote Plugin Executor (NRPE)
 SNMP
2
Nagios
 Phần mềm giám sát hệ thống mạng
 Thực hiện việc theo dõi và đưa ra các cảnh báo về trạng
thái các host và các dịch vụ
 Cho phép quản trị mạng chủ động phát hiện sớm các sự
cố về hạ tầng công nghệ thông tin
 Được xây dựng trên nền tảng mã nguồn mở
 Chính sách bản quyền: có phiên bản miễn phí và trả phí
 Phát triển các dịch vụ kiểm tra dựa trên các ngôn ngữ
(shell scripts, C++, Perl, Ruby, Python, PHP, C#, etc.)
3
Nguyên tắc hoạt động Nagios 
4
Active check  Poll Passive  Alerts
Tính năng của Nagios
 Giám sát trạng thái hoạt động dịch vụ: SMTP, POP3,
IMAP, HTTP, ICMP, SSH, DHCP, LDAP, DNS
 Giám sát các tài nguyên máy tính: Ram, CPU, HDD
 Giám sát các thông số an toàn thiết bị như: nhiệt độ CPU,
tốc độ quạt, giờ hệ thống .v.v.
 Giám sát thiết bị mạng có IP: router, switch, máy in .v.v.
 Cảnh báo bằng email, tin nhắn tức thời (IM)
 Sử dụng giao diện Web để theo dõi hệ thống
5
Triển khai
 Nagios hoạt động trên các máy chủ HĐH họ Unix/Linux
 Nagios hỗ trợ việc xây dựng một hệ thống phân tán giúp
cân bằng tải và hoạt động ổn định trong các hệ thống lớn.
 Một số Plug-in điển hình:
 NRPE (giám sát thông tin từ xa - chủ động )
 NSCA (hỗ trợ việc giám sát thụ động)
 NDOUtils (hỗ trợ việc lưu trữ dữ liệu)
 PNP4Nagios (hỗ trợ việc phân tích dữ liệu)
 Nagvis (hỗ trợ việc hiển thị và biểu diễn trạng thái)
6
Kiến trúc Nagios
 Có hai phần: Lõi Nagios và Plugin
 Lõi Nagios (Nagios core)
 Không thực hiện bất kỳ kiểm tra máy chủ
 Chỉ thu thập, quản lý kết quả do các plugin thực hiện
 Lõi Nagios sẽ lấy thông tin trả về của plugin và cung cấp các
cảnh báo cho quản trị
 Plugin
 Plugin là những thành phần được cài trên máy chủ giám sát
Thực hiện các kiểm tra và phân tích kết quả
7
Kiến trúc các thành phần Nagios
8
Nagios agents
 Nagios Remote Plugin Executor (NRPE): cho phép giám
sát các máy tính ở xa thông qua việc thực thi các scripts đặt
trên máy giám sát qua phương thức Poll.
 NSClient++: là ứng dụng dùng giám sát máy tính windows
 Nagios Service check acceptor (NSCA) là một ứng dụng
trên nền Linux / Unix cho phép tích hợp các cảnh báo thụ
động và kiểm tra từ các máy tính và các ứng dụng từ xa.
 SNMP: giám sát thiết bị mạng và server
9
Nagios check host
 Nagios phân loại host ra ba trạng thái:
 UP : hoạt động bình thường.
 DOWN: tạm dừng hoạt động.
 UNREACHABLE: không tìm thấy.
10
Kiểm tra host
define host {
use Linux-server ; Used template
host_name client ; Client name
alias Client server ; Description
address 172.30.102.141 ; IP address
max_check_attempts 5
check_period 24x7
notification_interval 30
notification_period 24x7
}
11
Thuộc tính
 notification_interval: đơn vị thời gian chờ gửi lại thông báo 
khi máy bị down hoặc unreachable (đơn vị là phút – mặc 
nhiên là 60)
 notification_period: được khai với tên 24x7, tên định nghĩa 
thời gian có thể gửi cảnh báo đến người liên hệ.
 check_period: được khai với tên 24x7, thời gian thực hiện 
kiểm tra kiểu chủ động đối với host.
Tham khảo thêm: 
https://assets.nagios.com/downloads/nagioscore/docs/nagioscore-3-en.pdf
12
Monitor – sudo nano /usr/local/nagios/etc/objects/timeperiods.cfg
13
Nagios check dịch vụ
 Nagios phân loại dịch vụ thành bốn trạng thái:
 OK: Hoạt động bình thường.
WARNING: Có thể hoạt động nhưng chưa chính xác 
hoặc có thể không hoạt động.
 UNKNOWN: Không xác định được.
 CRITICAL: Không hoạt động.
14
Khái niệm trạng thái SORT/HARD
 Kiểm tra dịch vụ Proxy như sau:
define service{
host_name proxy
service_description proxy
...
normal_check_interval 5
retry_check_interval 1
max_check_attempts 5
...
}
15
Trong đó:
• normal_check_interval: khoảng 
thời gian giữa các lần kiểm tra bình 
thường (là 5 phút).
• retry_check_interval: nếu gặp lỗi, 
sau 1 phút kiểm tra lại để xác nhận 
(soft state).
• max_check_attempts: thực hiện 
kiểm tra lại 5 lần, nếu lỗi vẫn xảy 
ra. Nagios kết luận chắc chắn dịch 
vụ thay đổi trạng thái (hard state).
Khái niệm trạng thái SORT/HARD
16
 Khi trạng thái có thay đổi sẽ được ghi vào tệp log
 Tùy theo cấu hình, có thể qui định trạng thái hard/ sort sẽ gửi cảnh báo
Cấu hình Nagios
17
/usr/local/nagios/etc/nagios.cfg
Main config:
 Tập tin chứa những chỉ thị lệnh quan 
trọng, ảnh hưởng đến hoạt động của 
nagios
 Được đọc từ Nagios và CGIs
Cấu hình Nagios
18
Thư mục cài đặt: /usr/local/nagios/etc/
Resource File(s):
 Nơi lưu trữ macro của người dùng 
định nghĩa
 Lưu trữ các thông tin cấu hình 
nhảy cảm như mật khẩu
 Không được nhìn thấy từ CGIs
Cấu hình Nagios
19
Thư mục cài đặt: /usr/local/nagios/etc/
Object Definition Files:
 Object Definition Files: là tập định nghĩa
đối tượng giám sát (hosts, services,
hostgroups, contacts, contactgroups,
commands) và giám sát như thế nào.
 Định nghĩa đối tượng thông qua cfg_file
hoặc cfg_dir.
Các tệp cấu hình đối tượng 
 Thư mục /usr/local/nagios/etc/objects
 Localhost.cfg //định nghĩa các máy linux
 Contact.cfg //đn người dùng
 Printer.cfg //đn các máy in
 Switch.cfg //đn switch
Window.cfg //đn máy window
 Command.cfg //đn các lệnh
 Template.cfg //mẫu đn có sẵn
20
CGI (Common Gateway Interface)
21
/usr/local/nagios/etc/cgi.cfg
 CGI: cung cấp một giao thức chuẩn cho các 
máy chủ web thực thi các chương trình 
 Các chương trình (kịch bản) gọi là CGI 
scripts (CGIs)
 Chương trình có thể viết bằng nhiều ngôn ngữ 
khác nhau: C/C++, Pert, Shell, script, .v.v.
CGI (Common Gateway Interface)
22
/usr/local/nagios/etc/cgi.cfg
Tệp cấu hình CGI:
Tệp cấu hình CGI chứa một số chỉ thị ảnh 
hưởng đến hoạt động của CGI. 
 Chứa một tham chiếu đến tệp tin cấu hình 
chính Nagios, vì vậy CGI biết được
Nagios cấu hình như thế nào và nơi mà các 
đối tượng của bạn được lưu trữ.
NRPE (Nagios Remote Plugin Executor )
 Cho phép thực thi các nagios plugin trên máy linux từ xa
 Một Agent của NRPE được cài trên máy giám sát
 Cơ chế làm việc của NRPE mô tả như hình:
23
NRPE (Nagios Remote Plugin Executor)
 NRPE addon bao gồm 2 thành phần:
 Plugin check_nrpe: nằm trên máy Nagios (là monitoring server)
 Daemon NRPE: chạy trên máy Linux/Unix (remote host) cần 
monitor
24
NRPE (Nagios Remote Plugin Executor)
 Khi máy Nagios cần check các resources/services trên máy 
Linux/Unix ở xa:
 Nagios sẽ thực thi plugin check_nrpe và cho biết resource/service 
nào cần check
 Plugin check_nrpe sẽ liên lạc với daemon NRPE trên remote host. 
Kênh liên lạc có thể được bảo vệ bằng SSL
 Daemon NRPE sẽ chạy các plugin thích hợp (như check_disk, 
check_load, check_http, v.v..) để check các resource/service được 
yêu cầu.
 NRPE daemon truyền kết quả cho check_nrpe, sau đó plugin này trả 
kết quả lại cho Nagios process.
25
NRPE (Có 2 cách checking)
 Direct Checks
26
NRPE (Có 2 cách checking)
 Indirect Checks
27
Remote Linux/Unix host (được cài NRPE daemon và các plugin) có 
thể liên lạc với Remote server.
 Sử dụng cách này để NRPE daemon đóng vai trò làm proxy.
SNMP- Giám sát Routers và Switches
28
Thông tin giám sát:
 Tỷ lệ mất gói
 Thông tin trạng thái SNMP
 Băng thông
 Tốc độ lưu lượng truy cập
 .v.v.
Thực nghiệm
29
Trên Manage (IP:172.30.102.241)
 Cấu hình file: /usr/local/nagios/etc/nagios.cfg
//Tìm dòng cfg_dir=/usr/local/nagios/etc/servers và bỏ dấu # trong file
cfg_dir=/usr/local/nagios/etc/servers
30
Trên Manage (IP:172.30.102.241)
 Thay đổi email nhận cảnh báo
$ sudo nano usr/local/nagios/etc/objects/contacts.cfg
31
Trên Manage (IP:172.30.102.241)
 Thêm host cần giám sát: (Agent: 172.30.102.141)
32
Thêm các dịch cần giám sát trên Agent
33
Thêm các dịch vụ cần kiểm tra trên client: 
Thêm nội dung vào cuối file
$sudo nano /usr/local/nagios/etc/servers/client.cfg
Trên Host (Agent:172.30.102.141)
 Thêm command_check vào file /etc/nagios/nrpe.cfg
34
Kiểm tra các Script đã có trên Agent chưa ?
35
Nếu Script kiểm tra chưa có?
 Tìm và download script: namescript
 Chuyển script vào /usr/lib/nagios/plugins/
 Cấp quyền thực thi cho script: sudo chmod +x namescript
 Thêm file_cfg vào thư mục /etc/nagios-plugins/config
36
Thêm file_cfg
37
Thêm check Ram:
check_memory.pl
Kiểm tra file thực thi
Kết quả giám sát Host và Service
38
Tài liệu tham khảo
1. Prentice.Hall.Building.a.Monitoring.Infrastructure.with.Nagios.Feb.2007
2. Learning Nagios 4, Wojciech Kocjan, Second Edition: March 2014
3. https://www.digitalocean.com/community/tutorials/how-to-install-nagios-4-
and-monitor-your-servers-on-ubuntu-14-04
4. https://library.nagios.com/library/products/nagios-xi/documentation/nagios-xi-
monitoring-aix-using-snmp/
5. 
6. https://wiki.gentoo.org/wiki/Nagios/Guide#Using_SNMP_method
39
Tham khảo
 https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/monitoring
-routers.html
 https://www.howtoforge.com/tutorial/ubuntu-nagios/
 https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/config.html
 https://assets.nagios.com/downloads/nagioscore/docs/nagioscore-3-en.pdf
40

File đính kèm:

  • pdfbai_giang_quan_tri_mang_chuong_6_nagios_bui_minh_quan.pdf