Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
CÀI ĐẶT VÀ CẤU HÌNH GIÁM SÁT MẠNG VỚI NAGIOS
Yêu cầu hệ thống:
Yêu cầu để chạy được Nagios là một máy tính chạy trên nền Linux (hoặc các phiên
bản được phát triển từ nhân UNIX) và một trình biên dịch C. Tuy nhiên chúng ta cũng
cần cấu hình TCP/IP vì hầu hết các dịch vụ kiểm tra sẽ được hiện qua mạng.
Ngoài ra, nếu chúng ta sử dụng kèm với CGIs thì chúng ta cần thêm một số phần
mềm sau:
Máy chủ chạy webserver
Thomas Boutell của thư viện gd với phiên bản 1.6.3 hoặc cao hơn.
Một số thông tin cần thiết:
Thư mục sẽ được cài đặt mặc định: /usr/local/nagios
Nagios sẽ tự động theo dõi một số dịch vụ trên máy tính cục bộ của bạn (CPU, Đĩa
cứng, v.v…)
Giao diện web sẽ truy cập http://localhost/nagios
I. Cài đặt và cấu hình NAGIOS:
Trước tiên ta sẽ download phiên bản mới nhất của nagios theo địa chỉ sau. Sau đó
giải nén vào thư mục nào đó bất kỳ. Đối với nagios core nếu bạn đăng ký làm thành viên
ở forum thì sẽ được sự hỗ trợ của nhà sản xuất. Nagios là phiên bản dành cho hệ điều hệ
điều hành mã nguồn mỡ vì thế nên Nagios free hoàn toàn.
Website Download : />SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 1
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Bước 1. Chuyển về quyền Root trong khi thực hành các thao tác cài đặt:
Bạn sẽ cần phải có quyền root để cài đặt Nagios bởi vì trong lúc cấu hình ta cần
quyền ROOT để được tạo user và group, sửa đổi các máy chủ web, cấu hình tập tin, khởi
động các dịch vụ service… Chúng ta có thể đăng nhập lúc khởi động hệ điều hành hoặc
sử dụng lệnh
Su root để thay đổi để đăng nhập vào Root.
Bước 2. Update các gói ứng dụng:
Hãy kiễm tra xem hệ điều hành bạn dang sử dụng đã có các gói
• Apache : Hổ trợ dịch vụ httpd
• GCC compiler : Hổ trợ Java
• GD development libraries : Hổ trợ giao diện đồ họa
Nếu version của các ứng dụng trên đã cũ bạn có thể update bẳng các câu lệnh:
[root@localhost~]# yum install httpd
[root@localhost~]# yum install gcc
[root@localhost~]# yum install glibc glibc-common
[root@localhost~]# yum install gd gd-devel
Và sau khi update xong ta khởi động dich vụ Httpd
[root@localhost~]# service httpd start
Bước 3.0 Chúng ta tạo user nagios, set password
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 2
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Bước 3.1 Tạo thư mục cài đặt cho nagios
[root@localhost~]# mkdir /usr/local/nagios
Thay đổi homdirecstory của nagios.
[root@localhost~]# chown nagios.nagios /usr/local/nagios
Bước 3.2 Tiếp theo chúng ta sẽ tạo một group mới mà các member của nó gồm
những người sử dụng webserver và Nagios. Và các group khác như Apache
[root@localhost~]# groupadd nagioup
[root@localhost ~]# usermod -G nagioup nagios
[root@localhost ~]# usermod -G nagioup apache
Bước 4.0 Tiếp theo sau khi download bản nagios 3.2.0 ta tiến hành giải nén và cài
đặt.
[root@localhost nagios-3.2.0]#./configure - -prefix=/usr/local/nagios
Với - -prefix=/usr/local/nagios là chỉ ra thư mục mà bạn sẽ cài đặt nagios đã được
tạo ở bước trên.
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 3
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Bước 4.1 Sau khi chương trình cài đặt xong sẽ xuất ra các thông báo chỉ dẫn bước
cài đặt kế tiếp. Chúng ta để ý dòng cuối cùng “nếu nhìn các vấn đề trên không có gì trục
trặc, bước tiếp theo hãy gỏ make all”. Những chỉ dẫn khá là chi tiết, thông thường các lỗi
hay xuất hiện ở đây là chúng ta không thể thêm vào các tiền tố prefix do thiếu các bản
GCC++ chưa được cài đặt hoặc update
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 4
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Bước 4.2 Tiếp theo ta sẽ biên dịch và cài dặt CGIs (CGIs được tích hợp trong file
cài dặt của nagios 3.2.0). Và ta thực hiện việc cài đặt với lệnh sau đây.
[root@localhost nagios-3.2.0]# make all
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 5
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Các ứng dụng GCC++ sẽ được giải nén. Các ứng dụng này sẽ được sử dụng khi ta
mở chương trình duyệt nagios. Quá trình cài đặt các ứng dụng phụ này của nagios rất đơn
giản và ít xảy ra lỗi ở gian đoạn cài đặt này.
Việc cài đặt các gói ứng dụng này khá đơn giản. Nếu không có gì trục trặc thì kết
thúc việc cài đặt sẽ là việc xuất hiện các bước cài đặt.
Nếu có trục trặc bạn nên xem lại việc đã cài đặt ứng dụng GCC++ chưa hoặc là xem
lại việc giải nén file. Cũng có thể là do file bị mất mát trong lúc download.
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 6
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Bước 4.3 Tiếp theo ta tiến hành cài đặt những chương trình và các file HTML (giao
diện trang web của nagios) với lệnh sau đây:
[root@localhost nagios-3.2.0]# make install
Bước 4.4 Tiếp theo ta sẽ cài đặt các mẫu init script vào / etc/ rc.d / init.d / nagios
và cài đặt file config và commandmod với lệnh sau đây:
[root@localhost nagios-3.2.0]#make install-init
[root@localhost nagios-3.2.0]#make install-config
[root@localhost nagios-3.2.0]#make install-commandmod
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 7
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Tiếp theo ta cài đặt nagios vào Httpd. Việc cài đặt Webcof vào Httpd nhằm chép
các file thư mục của web nagios vào service httpd để sau này sử dụng giao diện web.
[root@localhost nagios-3.2.0]# make install-webconf
Sau khi cài đặt xong trong thư mục gốc của NAGIOS gồm có các thư mục sau:
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 8
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Các
thư mục
Nội dung
bin/ Lõi chương trình của nagios
etc/
Các thư mục chính như Main , resource , object và tập tin cấu hình
CGI được đặt ở đây
sbin/ CGIs
share/ Các file HTML cho giao diện và tài liệu web trực tuyến
var/ Các thư mục rỗng log file , status file , retention file , etc.
Libexec Các thư mục chứa các file lưu trữ của nagios plugin
var/rw Các thư mục rỗng chứa tập lệnh bên ngoài
Bước 5. Tiếp theo ta thiết lập password cho user nagiosadmin nhằm đăng nhập
website của nagios. Việc thiết lập password giúp việc bảo mật dữ liệu của các cấu hình
nagios.
[root@localhost nagios-3.2.0]# htpasswd -c /opt/nagios/etc/htpasswd.users
nagiosadmin
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 9
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Bước 6. Chúng ta sẽ cài đặt nagios plugin-1.4.13. Plugin dùng để thể hiện các báo
cáo của nagios. Nó có sẵn các trường được thiết lập sẵn . Chúng ta sẽ để đường dẫn mặc
định là /usr/local/nagios/libexec trong lúc cài đặt nếu các file của nagios plugin không
được đặt đúng thư mục trên thì chúng ta có thể tìm đến nơi mà bạn lỡ cài đặt nhầm hãy
copy các file trong thư mục đó và để vào thư mục đúng như trên.
Các bước cài đặt của nagios plugin khá đơn giản. Thông thường các lỗi thường gặp
ở lúc cài đặt nagios core. Lưu ý hãy chắc là bạn đã cài đặt nagios core trước lúc cài đặt
nagios plugin này. Nếu không thì sau này bạn không thể sử dụng được các chức năng của
nagios plugin.
[root@localhost nagios-plugins-1.4.13# ./configure – prefix=/opt/nagios/libexec
[root@localhost nagios-plugins-1.4.13]# make
[root@localhost nagios-plugins-1.4.13]# make install
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 10
Website Download : />Name : nagios plugin
Version : 1.4.1.3
Size : 3 MB
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Bước 7. Trước khi khởi động dich vụ nagios chúng ta phải edit lại file contacts.cfg.
Bởi vì ở file contact.cfg này lưu trử thong tin account login của nagios. Và quan
trọng hơn nữa đây là phần dùng để edit lại địa chỉ mail của người quản lý.
Nếu nagios phát hiện ra lỗi nào đó trên hệ điều hành thì nó sẽ lập tức gửi mail thông
báo đến cho chúng ta. Đây là một đặc điểm cần thiết cho người quản trị mang.
Và chúng ta sẽ edit file contacts.cfg qua lệnh sau:
[root@localhost nagios-3.2.0]# vi /opt/nagios/etc/objects/contacts.cfg
Bạn có thể thay thế Contact_name và email address.
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 11
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Bước 8. Thiết lập chế độ khởi động cùng khi hệ điều hành khởi động và xem lại quá
trình khởi động ban đầu bằng file config. Nagios sẽ đọc tất cả các file config được gọi
trong file cấu hình nagios.cfg.
[root@localhost nagios-plugins-1.4.11]# chkconfig nagios
[root@localhost nagios-plugins-1.4.11]# chkconfig nagios on
[root@localhost nagios-plugins-1.4.11]# /opt/nagios/bin/nagios -v
/opt/nagios/etc/nagios.cfg
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 12
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Nagios sẽ load file nagios.cfg và xem kiểm tra tổng quát tất cả việc cài đặt nagios.
Nếu có lỗi sảy ra nagios sẽ đưa ra massager thông báo rất rõ ràng.
Quá trình kiểm tra này sẽ lần lượt load tất cả các file được thiết lập trong file
nagios.cfg. Nếu thấy xuất hiện lỗi bạn hãy theo các thông báo trên và chỉnh sửa lại theo
đúng chương trình.
Việc chỉnh sửa các file config khá dễ dàng. Nếu bạn ko có thời gian hãy lên forum
của nagios để download các file config được thiết lập sẵn của các thành viên khác, như
thế sẽ rất dễ dàng. Lưu ý bạn nên tự config các file này vì lúc config thì bạn sẽ hiểu rõ vấn
đề hơn nếu nagios sảy ra lỗi.
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 13
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Và các file được thiết lập này bao gồm các file commands.cfg, contacts.cfg,
templates.cfg, localhost.cfg….
Và nếu việc kiểm tra ko có lổi giống như bảng thông báo sau. Bây giờ chúng ta có thể bắt
dầu khởi động dich vụ nagios
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 14
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Bước 9.0 Sau khi tiến hành xong các việc kiểm tra nếu ko có lỗi sảy ra chúng ta có
thể khởi động service của nagios qua câu lệnh
[root@localhost~]#service nagios start
Bước 9.1 Để khởi đông giao diện web của nagios chúng ta có thể sử dụng 2 cách để
đăng nhập
Cách 1 : Http://localhost/nagios
Cách 2 : Http://ip_máylocal/nagios (Ví dụ: http://127.0.0.1/nagios)
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 15
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Đến đây chúng ta đã có thể chạy nagios với giao diện web thông qua địa chỉ
http://localhost/nagios. khi truy cập vào địa chỉ trên hệ thống sẽ yêu cầu quyền hạn và
chúng ta có thể truy cập với tài khoản mà chúng ta đã tạo ở trên.
Khi đăng nhập thành công. Chúng ta chọn vào Services Detail để xem chi tiết các
dịch vụ được theo dõi trên máy tính của cúng ta. Tuy nhiên chúng ta cần có thời gian để
nagios thu thập thông tin và đua ra kết quả cho chúng ta.
Giám sát một số dịch vụ:
Mỗi một dịch vụ, một ứng dụng hay một giao thức cụ thể, khi giám sát cần có một
plugin để hổ trợ. Các plugin này chúng ta có thể tìm thấy trong thư mục đã cài đặt nagios,
thường thì các plugin này là cơ bản để hỗ trợ một số dịch vụ cơ bản.
Để tìm các plugin hỗ trợ cho các dịch vụ cao hơn, chúng ta có thể truy cập website
để tìm và tải về. Ngoài ra, chúng ta cũng có thể tự mình
viếc một plugin để hổ trợ cho một dịch vụ nào đó.
Sau khi khởi động xong sẽ xuất hiện bảng đăng nhập(Authentication required). Sau
đó chúng ta sẽ đang nhập vào nagios với user admin mặc định là : nagiosadmin và
password là lúc ta set ở bước 5. Đối với user thì chúng ta có thể thay đổi được trong
file /usr/local/nagios/contacts.cfg
Giao diện chính của nagios rất đơn giản với các tab rõ ràng dể sử dụng. Nếu có gì
thắc mắc bạn sẽ tham khảo them ở phần Documentation. Ở đó bạn sẽ được hướng dẫn
một cách cụ thể.
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 16
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Nhưng các tab ứng dụng phía dưới như tactical overview, map. Service….được thực
thi thì chúng ta phải chỉnh sửa lại phai cấu hình hoặc có thể tạo ra 1 File cấu hình khác
với những thông số lọc tùy chọn
Bước 10.0 Cách cấu hình 1 file với các thông số
Chúng ta có thể copy file cấu hình chuẩn của nagios là Localhost.cfg sau đó chúng
ta sẽ Edit lại thành file cấu hình mới của chúng ta.
Và câu lệnh copy sẽ như sau:
[root@localhost ~]# cp /opt/nagios/etc/objects/localhost.cfg
/opt/nagios/etc/objects/File_name_moi.cfg
Sau khi copy xong ta edit file vừa copy.
[root@localhost ~]# vi /opt/nagios/etc/objects/File_name_moi.cfg
Bước 10.1 Định nghĩa một host
Đầu tiên để giám sát một dịch vụ nào đó. Chúng ta cần định nghĩa một host gắn kết
với dịch vụ đó. Chúng ta có thể đặt định nghĩa host bất kỳ tập tin cấu hình đối tượng nào
được qui định bởi tập tin cfg hoặc đặt trong thư mục được chỉ định bởi thư mục cfg.
Nếu bạn muốn theo dõi một nhiều dịch vụ cùng lúc trên một máy tính từ xa (ta gọi
máy đó là quoctuan-vanhien). Việc định nghĩa host có thể đặt một tập tin riêng hoặc đặt
trong tập tin cấu hình điều được.
define host{
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 17
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
use generic-host
host_name quoctuan-vanhien
alias Some Remote Host
address 192.168.1.50
hostgroups allhosts
}
Định nghĩa một số dịch vụ
Đối với mỗi dịch vụ mà chúng ta muốn theo dõi thì chúng ta cần tao một định nghĩa
cho dịch vụ đó trong nagios để nó kết hợp với định nghĩa host mà ta vừa tạo ở trên. Sau
đây là việc theo dõi một số dịch vụ cơ bản.
• Giám sát HTTP
Nếu chúng ta muốn theo dõi server web tại một số thời điểm. Thì chúng ta có thể sử
dụng plugin check_http. Plugin này có thể hiểu được giao thức http và có thể giám sát
trong các lần hồi đáp yêu cầu từ server, lỗi codes, những chuỗi định dạng html, chứng
thực server, v.v…
Tập tin commands.cfg chức một số lệnh đã được định nghĩa để sử dụng cho các
plugin check_http. Xem đoạn mã sau
define command{
name check_http
command_name check_http
command_line $USER1$/check_http -I $HOSTADDRESS$ $ARG1$
}
Và đây là một định nghĩa đơn giản để giám sát giao thức http trên máy quoctuan-
vanhien. Xem đoạn mã sau
define service{
use generic-service
host_name quoctuan-vanhien
service_description HTTP
check_command check_http
}
Chú thích: dịch vụ sẽ giám sát giao thức http trên máy quoctuan-vanhien. Nó sẽ đưa
ra cảnh báo nếu serverweb không hồi đáp trong vòng 10 giây (mặc định) hoặc nếu html
trả về mã lỗi (403,404, v.v…)
Và đây là một định nghĩa tối ưu hơn. Định nghĩa dịch vụ này sẽ kiểm tra xem đường
dẫn URL /download/index.php có chứa chuỗi “latest-version.tar.gz”, nếu chuỗi không tìm
thấy thì nó sẽ đưa ra thông báo lỗi hoặc serverweb không trả lời sau 5 giây.
define service{
use generic-service
host_name quoctuan-vanhien
service_description Product Download Link
check_command check_http!-u /download/index.php -t 5 -s
"latest-version.tar.gz"
}
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 18
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
• Giám sát FTP
Khi chúng ta muốn giám sát FTP server, chúng ta có thể sử dụng plugin check_ftp.
Các lệnh dùng để định nghĩa cho check_ftp được nằm trong tập tin commands.cfg. Xem
đoạn code sau
define command{
command_name check_ftp
command_line $USER1$/check_ftp -H $HOSTADDRESS$ $ARG1$
}
Và đây là đoạn code dùng để giám sát dịch dụ FTP server trên máy quoctuan-
vanhien
define service{
use generic-service
host_name quoctuan-vanhien
service_description FTP
check_command check_ftp
}
Định nghĩa dịch vụ trên sẽ giám sát hoạt động của FTP server và sẽ đưa ra thông báo
lỗi nếu FTP server không hồi đáp sau 10 giây.
Và sau đây là một định nghĩa tốt hơn cho việc giám sát FTP server chạy trên port
1023 của máy quoctuan-vanhien. Nó sẽ đưa ra thông báo nếu server không hồi đáp sau 5
giây hoặc nếu máy chủ hồi đáp không tìm thấy chuỗi “Pure-FTPd [TLS]”
define service{
use generic-service
host_name quoctuan-vanhien
service_description Special FTP
check_command check_ftp!-p 1023 -t 5 -e "Pure-FTPd [TLS]"
}
• Giám sát SSH
Plugin check_ssh nằm trong tập tin commands.cfg là một plugin dùng để giám sát
SSH server. Được định nghĩa như sau:
define command{
command_name check_ssh
command_line $USER1$/check_ssh $ARG1$ $HOSTADDRESS$
}
Tương ứng như thế trên quoctuan-vanhien sẽ có một định nghĩa về dịch vụ giám sát
SSH server như sau:
define service{
use generic-service
host_name quoctuan-vanhien
service_description SSH
check_command check_ssh
}
Định nghĩa này sẽ giám sát SSH server và đưa ra thông báo khi SSH server không
hồi đáp trong vòng 10 giây.
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 19
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Và dưới đây là một định nghĩa đầy đủ hơn cho việc giám sát SSH server. Định nghĩa
dịch vụ này sẽ giám sát SSH server và đưa ra thông báo cho chúng ta khi SSH server hồi
đáp trong vòng 5 giây hoặc phiên bản của server không đúng với chuỗi “OpenSSH_4.2”
define service{
use generic-service
host_name quoctuan-vanhien
service_description SSH Version Check
check_command check_ssh!-t 5 -r "OpenSSH_4.2"
}
• Giám sát SMTP
Plugin check_smtp có thể sử dụng để giám sát mail server của chúng ta. Nó cũng
được nằm trong tập tin commands.cfg. Xem đoạn code sau
define command{
command_name check_smtp
command_line $USER1$/check_smtp -H $HOSTADDRESS$
$ARG1$
}
Tương ứng như thế trên quoctuan-vanhien sẽ có một định nghĩa về dịch vụ giám sát
SMTP server như sau:
define service{
use generic-service
host_name quoctuan-vanhien
service_description SMTP
check_command check_smtp
}
Định nghĩa này sẽ giám sát SMTP server và đưa ra thông báo khi SMTP không hồi
đáp sau 10 giây.
Truy nhiên chúng ta cũng có được một định nghĩa tốt hơn cho dịch vụ này như sau
define service{
use generic-service
host_name quoctuan-vanhien
service_description SMTP Response Check
check_command check_smtp!-t 5 -e "mygreatmailserver.com"
}
Định nghĩa dịch vụ này sẽ giám sát tôt hơn. Nó sẽ đưa ra thông báo sau 5 giây nếu
SMTP server không hồi đáp hoặc nếu server hồi đáp không có chuỗi
“mygreatmailserver.com”
• Giám sát POP3
Plugin check_pop là plugin dùng cho việc giám sát dịch vụ pop3 của mail chúng ta.
Xem đoạn mã
define command{
command_name check_pop
command_line $USER1$/check_pop -H $HOSTADDRESS$ $ARG1$
}
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 20
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Và tương ứng thì cũng có một định nghĩa dịch vụ được chạy trên quoctuan-vanhien
dùng để giám sát dịch vụ này. Xem định nghĩa đơn giản sau.
define service{
use generic-service
host_name quoctuan-vanhien
service_description POP3
check_command check_pop
}
Định nghĩa này sẽ giám sát dịch vụ pop3 và đưa ra cảnh báo khi server mail không
trả lời sau 10 giây. Để có được sự giám sát tốt hơn, chúng ta hãy sử dụng đoạn mã sau.
define service{
use generic-service
host_name quoctuan-vanhien
service_description POP3 Response Check
check_command check_pop!-t 5 -e "mygreatmailserver.com"
}
Đoạn mã sẽ giám sát POP3 và chi thông báo khi server không hồi đáp sau 5 giây
hoặc server hồi đáp không tìm thấy chuỗi “mygreatmailserver.com”
• Giám sát IMAP
Tương tự như trên ta có plugin check_imap dùng để giám sát IMAP cũng được nằm
trong tập tin commands.cfg. chúng ta có đoạn code sau:
define command{
command_name check_imap
command_line $USER1$/check_imap -H $HOSTADDRESS$
$ARG1$
}
Và thế trên quoctuan-vanhien cũng có một định nghĩa dịch vụ imap được cài đặt.
define service{
use generic-service
host_name quoctuan-vanhien
service_description IMAP
check_command check_imap
}
Định nghĩa trên sẽ cho thông báo khi IMAP server hồi đáp trong vòng 10 giây. Và
dưới đây là một định nghĩa tốt hơn cho việc giám sát IMAP trên quoctuan-vanhien.
define service{
use generic-service
host_name quoctuan-vanhien
service_description IMAP4 Response Check
check_command check_imap!-t 5 -e "mygreatmailserver.com"
}
Đoạn code này cho ta việc giám sát IMAP treen quoctuan-vanhien nếu server IMAP
hồi đáp trong vòng 5 giây hoặc hồi đáp không tìm thấy chuỗi “mygreatmailserver.com”.
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 21
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Ta sẽ thay đổi một số các biến số của các service cần được nagios ghi lại như
PING, HTTP, CURREN USER, TATOL PROSSCER…của file moi copy. Các thông số
như host_name, ip address, alias…
Và Ở đây chúng ta cần lưu ý tới các thông số notifications_enabled nếu nó =1 nghĩa
là nó được kích hoạt và =0 nghĩa là chưa được kich hoạt.
Bước 10.2 Sau khi hoàn tất việc Edit file tiếp theo ta sẽ tiến tới thiết lập việc file mà
chúng ta vừa tạo sẽ được load lên hệ thống nagios. File mà chúng ta cần Edit đó là
nagios.cfg .
[root@localhost ~]# vi /opt/nagios/etc/nagios.cfg
Chúng ta sẽ thêm dòng lệnh sau vào phần Definitions for monitoring the local
(linux) host:
Cfg_file=/usr/nagios/etc/objects/File_name_moi.cfg
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 22
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Bước 10.3 Tiếp theo chúng ta cài đặt hệ thống giám sát nagios trên hệ điều
hành windows server.
Tuy đây là phần mềm hỗ trợ cho các hệ thống linux nhưng nó cung có khả năng
giám sát một máy tính với hệ thống windows. Nó có khả năng giám sát một số dịch vụ và
thuộc tính của một máy tính windowns như:
Giám sát bộ nhớ
Giám sát cpu
Giám sát đĩa cứng
Giám sát các tiến trình
Các dịch vụ (HTTP, FTP, SSH, v.v…)
v.v…
Khi giám sát một máy tính windows chúng ta cần cài đặt một phần mềm hỗ trợ từ
phía máy tính windows để phần mềm quản lý của chúng ta có thể thu thập được thông tin
trả về từ phần mềm nằm trên máy tính windows. Phần mềm client này hoạt động như một
proxy giữa các plugin của nagios và các dịch vụ trên máy tính windows.
Ở đây chúng ta có thể sử dụng phần mềm client là NSClient++ và sử dụng plugin
check_nt trên nagios.
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 23
Server Nagios Windows
Nagios Check_nt NSClient++
CPU
Bộ nhớ
Đĩa cứng
Tiến trình
Dịch vụ
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
Các bước cần thực hiện để giám sát một máy chủ windows như sau:
- Cài đặt phần mềm client (NSClient++)
- Tạo một host mới và các định nghĩa dịch vụ để giám sát máy tính windows.
- Khởi động lại nagios.
Chú ý:
Một plugin check_nt được định nghĩa trong tập tin commands.cfg
Một host mới được tạo trong tập tin templates.cfg
Tập tin cấu hình có thể tìm thấy trong thư mục: /usr/local/nagios/etc/objects/
Để giám sát một máy tính windows chúng ta cần sửa lại tập tin cấu hình của nagios
như sau.
vi /usr/local/nagios/etc/nagios.cfg
Tìm và bỏ đi dấu “#” tại dòng sau:
#cfg_file=/usr/local/nagios/etc/objects/windows.cfg
Sau đó lưu và thoát trình soạn thảo vi
windows.cfg là tập tin cấu hình để giám sát máy tính windows. Chúng ta có thể
chỉnh sửa lại tập tin cấu hình này cho phù hợp với như cầu của chúng ta hoặc chúng ta có
thể tạo mới một tập tin khác.
• Cài đặt phần mềm client NSClient++
- Chúng ta có thể tải phần mềm tại địa chỉ: />- Tạo một thư mục trên máy tính windows (C:\NSClient++) và giải nén tập tin
chúng ta vừa tải được.
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 24
Đồ án tốt nghiệp: Giám sát hạ tầng mạng NAGIOS GVHD: Đỗ Ngọc Thúy Quỳnh
SVTH: Lê Trung & Nguyễn Thế Phương Bình Trang 25