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.)
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
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:
- bai_giang_quan_tri_mang_chuong_6_nagios_bui_minh_quan.pdf