Với những lợi ích như trên, chúng em quyết định chọn đề tài : “Tìm hiểu và triển khai dịch vụ giám sát hệ thống mạng sử dụng Nagios trên window server 2016.” Giới hạn đề tài Tìm hiểu tổn
Trang 1DE TAI TIM HIEU VA TRIEN KHAI DICH VU GIAM SAT
HE THONG MANG SU’ DUNG NAGIOS TREN WINDOW
SERVER 2016
Muc LUC
Chương 1 Tổng quan về hệ thống giám sat mang va Nagios
1.1 Tổng quan về hệ thống giám sát mạng
1.1.1 Những yếu tố trong giám sát hệ thống
1.1.2 Các công cụ giám sát dựa trên mã nguồn mở
1.2 Tông quan về Nagios
1.2.1 Chức năng của Nagios
1.2.2 Đặc điểm của Nagios
1.2.3 Kiến trúc và tổ chức hoạt động
1.2.4 Khả năng giám sát thiết bị
Chương 2 Triển khai hệ thống giám sát với Nagios trên CentOS
2.1 Mô hình triển khai
2.3 Cau hinh Nagios
2.3.1 Đối tượng và định nghĩa
2.3.2 File cấu hình chính nagios.cfg
2.3.3 CGI conf_¡ g ——
2.3.4 Cái nhìn tổng quan về đổi tượng ( Object)
2.4 Kiểm chứng kết quả cảnh báo bằng Email
DANH MUC CAC BANG BIEU
B rg2.1.Mi6 Gh crăngc aConf ¡ gure
Bảng 2.2 Mội số chức năng của lệnh make
Bảng 2.3 Cài đặt plugins
DANH MỤC CÁC HÌNH VẼ
Hình 1.1 Hỗ trợ giám sát các thiết bị
Trang 2
Hình 1.3 Bảo trì hệ thống
Hình 1.4 Hỗ trợ lên kế hoạch
Hình 1.5 Sơ đồ tổ chức của Nagios
Hình 1.6 Các cách thức thực hiện kiểm tra
Hình 1.7 Giám sát máy in
Hình 1.8 Giám sát Router/Switch
Hình 2.1 Mô hình triển khai
Hình 2.2 Một số chức năng của lệnh make install
Hình 2.3 Quy trình làm việc của NRPE
Hình 2.4 Kết quả cảnh báo bằng Email
LOI NOI DAU
Ngày nay, các doanh nghiệp thường xây dựng một hệ thống cơ sở hạ tầncg để phục vụ cho nhu cầu sản xuất kinh tế cũng như các lĩnh vực khác của mình Bên cạnh đó họ cũng cần có các
phương pháp giám sát, kiểm tra và cảnh báo khi có cơ sở hạ tầng của họ có vấn đề
Vì vậy họ cần chọn cho mình một phần mềm hay một công cụ đáp ứng được những yêu
cầu đó, đồng thời có thể linh hoạt trong việc thêm hoặc bớt các thiết bị, dịch vụ cần giám sát
Phương pháp đưa ra là sử dụng một phần mềm giám sát mã nguồn mở chạy trên hệ điều hành nguồn mở Với những phần mềm như thế này, người có nhiệm vụ giám sát sẽ dễ dàng cấu
hình để chương trình thực hiện những yêu cầu của các nhân họ
Lý do chọn đề tài
Ngày nay, hệ điều hành nguén md nhu Linux, Redhat, Fedora, Ubuntu, CentOS, Dang phat
triển mạnh mẽ và đã thể hiện được những ưu thế nhất định Và các phần mềm nguồn mở sử dụng trên các hệ điều hành này cũng mang lại nhiều lợi ích cho người sử dụng Phần mềm nguồn mở Naigos là một trong số đó
Nagios là một phần mềm giám sát mạng và tài nguyên các máy chủ, với giao diện Web nên thân thiện và dễ dàng với người sử dụng Bên cạnh đó, do là một phần mềm nguồn mở nên Nagios
có thể được tùy chỉnh theo mục đích và ý tưởng của người sử dụng Ngoài ra, đối tượng mà Nagios
có thể giám sát được rất phong phú và đa dạng như các mày chủ Linux, Windows, các dịch vụ như HTTP, FTP, POP3, PING, các thiết bị mạng như Swiich, Router, Printer, Hơn nữa, một chức
năng khá vượt trội của Nagios là cảnh báo cho người sử dụng biết khi hệ thống gặp vấn để như
kết nói bị ngắt, thiết bị ngưng hoạt động, Và phương pháp cảnh báo cũng đa dạng như: cảnh
báo qua email, âm thanh, qua tin nhắn SMS,
Với những lợi ích như trên, chúng em quyết định chọn đề tài : “Tìm hiểu và triển khai dịch vụ
giám sát hệ thống mạng sử dụng Nagios trên window server 2016.”
Giới hạn đề tài
Tìm hiểu tổng quan về hệ thống giám sát mạng: Những yếu tố trong giám sát hệ thống, các công
cụ giám sát mã nguồn mở
Trang 3Tìm hiểu tổng quan về Nagios: Chức năng, đặc điểm, Kiển trúc, tổ chức hoạt động, khả năng giám sát thiết bị
Thực hiện triển khai hệ thống giám sát với Nagios trên CeniOS: mô hình, cài đặt, cấu hình, Nagios thực hiện giám sát, kiểm chứng kết quả cảnh báo
Những khó khăn gặp phải khi thực hiện đề tài
Do kiến thức còn hạn hẹp, tiếp xúc với chương trình dòng lệnh chưa nhiều và khá mới mẻ nên trong quá trình thực hiện đề tài, chúng em không thể tránh khỏi những khó khăn nhất định Nhưng nhờ sự hướng dẫn nhiệt tình của thầy Nguyễn Hồng Việt, chúng em đã dần khắc phục và vượt qua những khó khăn để hoàn thành đề tài đúng tiến độ
Ý nghĩa thực tiễn
Phần mềm Nagios hiện nay đã được nhiều doanh nghiệp, tổ chức, cá nhân †in dùng do những lợi ích mà nó mang lại Việc tìm hiểu và ứng dụng phần mềm này giúp chúng †a có những hiểu biết thêm về hệ thống nguồn mở Bên cạnh đó, đây là một phần mềm hữu ích trong việc quản lý, giám sát hệ thống cơ sở hạ tầng Vì vậy, việc tiếp xúc với phần mêm này giúp chúng ta linh hoạt trong
việc bảo vệ hệ thống cơ sở hạ tầng do mình thiết lập nên
Bố cục của đề tài
Ngoài phần mở đầu và kết luận, đề tài gồm có 2 chương:
Chương 1 Tổng quan về hệ thống giám sái mạng và Nagios
Chương 2 Triển khai hệ thống giám sát với Nagios trên CeniOS
LỜI CẢM ƠN
Chúng em xin chân thành cảm ơn sự chỉ bảo hướng dẫn tận tình của thầy Nguyễn Hồng Việt, cùng toàn thể thầy cô khoa Công nghệ thông tin đã nhiệt tình giảng dạy cho chúng em trong quá trình học tập tại trường
Vì thời gian hạn hẹp, vấn đề cần Tìm hiểu quá rộng, lượng thông tin và tài liệu cần đọc rất lớn, kiến thức hạn chế nên chắc chắn rằng bản báo cáo này sẽ không tránh khỏi những thiếu sót, chúng em rất mong nhận được sự chỉ bảo góp ý thắng thắn từ phía hội đồng
Chương 1 Tổng quan về hệ thống giám sát
mạng và Nagios
1.1 Tổng quan về hệ thống giám sát mạng
1.1.1 Những yếu tố trong giám sát hệ thống.
Trang 4Giám sát mạng là một thuật ngữ dùng để chỉ việc sử dụng liên tục một hệ thống (có thể là một
chương trình hoặc một thiết bị) để theo dõi tất cả các hoạt động của các thiết bị, các dịch vụ trong
sẽ ảnh hưởng nghiêm trọng đến công ty, tổ chức đó
Tài nguyên hệ thống: Các ứng dụng đều đòi hỏi tài nguyên hệ thống, việc giám sát tài nguyên sẽ
đảm bảo cho chúng †a có những can thiệp kịp thời, tránh ảnh hưởng đến hệ thống
Lưu lượng trong mạng nhằm đưa ra những giải pháp, ngăn ngừa hiện tượng quá tải trong mạng Các chức năng về bảo mật: nhằm đảm bảo an ninh trong hệ thống
Nhiệt độ, thông tin về máy chủ, máy in: giúp tránh những hư hỏng xảy ra
T i ¡ le log: thu được những thông tin về những thay đổi trong hệ thống
1.1.2 Các công cụ giám sát dựa trên mã nguồn mở
Cùng với sự phát triển của cong nghệ thông tin, sự đầu tư cho hạ tầng mang trong mỗi doanh nghiệp ngày càng tăng cao, dẫn đến việc quản trị sự cố một hệ thống mạng gặp rất nhiều khó khăn Đi cùng với những lợi ích khi phát triển hạ tầng mạng như băng thông cao, khối lượng dữ liệu trong mạng lớn, đáp ứng được nhu cầu của người dùng, hệ thống mạng phải đổi đầu với rất nhiều thách thức như các cuộc tấn công bên ngoài, tính sẵn sàng của thiết bị, tài nguyên của hệ thống,
Một trong những giải pháp hữu hiệu nhất để giải quyết vấn đề này là thục hiện việc giải pháp
giám sát mạng, dựa trên những thông tin thu thập được thông qua quá trình giám sát, các nhân viên quản iri mạng có thể phân tích, đưa ra những đánh giá, dự báo, giải pháp nhằm giải quyết những vấn đề trên Để thực hiện giám sát mạng có hiệu quả, một chương trình giám sát phải đáp ứng được các yêu cầu sau: phải đảm bảo chương trình luôn hoạt động, tính linh hoạt, chức năng hiệu
quả, đơn giản trong triển khai, chi phí thấp Hiện nay, có khá nhiều phần mềm hỗ trợ việc giám sái
mạng có hiệu quả như Nagios, Zabbix, Zenoss, Cacii,
Trong đề tài này, chúng em đề cập đến Nagios, một phần mềm mã nguồn mở với nhiều chức
năng mạnh mẽ cho phép quản lý các thiết bị, dịch vụ trong hệ thống mạng Mục tiêu của chúng em
trong bài báo này là giúp cho mọi người có cái nhìn tổng quan về một hệ thống giám sat mang
hoàn chỉnh, đồng thời đưa ra một giải pháp cụ thể đối với một hệ thống mạng dành cho doanh nghiệp
1.2 Tổng quan về Nagios
1.2.1 Chức năng của Nagios
Nagios là một hệ thống giám sát mạnh mẽ cho phép các tổ chức xác định và giải quy ết các vấn
đề cơ sở hạ tầng CNTT trước khi chúng ảnh hướng đến quá trình kinh doanh quan trọng
Lần đầu tiên ra mắt vào năm 1999, Nagios đã có hàng ngàn dự án được phát triển bởi cộng đồng Nagios trên toàn thế giới Nagios được bảo trợ chính thức bởi Nagios Enterprises, hỗ trợ cộng
đồng trong một số cách khác nhau thông qua việc bán các sản phẩm thương mại và dịch vụ của
mình
Nagios theo dõi toàn bộ cơ sở hạ tầng CNTT của bạn để đảm bảo hệ thống, ứng dụng, dich vụ
và quy trình kinh quanh đnag hoạt động tốt Trong trường hợp bị lỗi, Nagios có thể cảnh báo nhân
Trang 5viên kỹ thuật các vấn dé, cho phép họ bắt đầu quá trình phục hồi trước khi ảnh hưởng đến quá
trình kinh doanh, người sử dụng, hoặc khách hàng
Được thiết kế với khả năng mở rộng và tính linh hoạt trong, Nagios mang đến cho bạn sự an tam đến từ hiểu biết quy trình kinh doanh của tổ chức bạn sẽ không bị ảnh hưởng bởi sự cố ngừng
hoạt động không rõ nguyên nhân
Nagios hỗ trợ người quản trị trong việc:
- Lên kế hoạch cho việc nâng cấp cơ sở hạ tầng trước khu hệ thống lỗi thời gây ra lỗi
-_ Ứng phó với các vấn đề ngay khi có dấu hiệu đầu tiên
-. Tự động sửa chữa các vấn đề khi chúng đượcn phát hiện
- _ Đảm bảo sự ngưng hoạt động của các cơ sở hạ tầng CNTT có ảnh hưởng tối thiểu đến hệ thống -._ Theo dõi toàn bộ cơ sở hạ tầng và quy trình kinh doanh của bạn
- Giám sát các dịch vụ mạng (HT TP, SMTP, POP3, PING, )
- _ Giám sát tài nguyên máy chủ (processor load, disk usage, )
-. Những phần bổ trợ đơn giản cho phép người dùng phát triển dịch vụ kiểm tra riêng của họ
- _ Phát hiện và phân biệt được các máy chủ hay dich vụ xuống cấp và không thể truy cập được
- Théng báo cho người giám sát khi máy chủ hay dịch vụ có vấn đề và được giải quyết
- Tùy chọn giao diện web để xem tình trạng mạng hiện có, thông báo và lịch sử các vấn đề, đăng
Trang 6Ứng phó: Nhân viên CNTT có thể xác nhận cảnh báo và bắt đầu giải quyết sự cố ngưng hoạt
động và kiểm tra hệ thống cảnh báo ngay lập tức Cảnh báo có thể được gia tăng cho các nhóm khác nhau nếu thông báo không xác nhận một cách kịp thời
Báo cáo: Báo cáo cung cấp mội hồ sơ lịch sử của sự cố ngưng hoạt động, sự kiện, thông báo, và phản ứng cnahr báo để xem xét Sẵn có các báo cáo giúp đảm bảo SLAs của bạn đang được đáp ứng
Bảo trì: Dự kiến thời gian ngừng làm việc ngăn cản các cảnh báo tỏng quá trình bảo trì theo lịch
trình và nâng cấp
Hình 1.3 Bảo trì hệ thống
Kế hoạch: Lập lịch đồ thị và báo cáo xu hướng và công suất cho phép bạn xách định sự cần thiết nâng cấp cơ sở hạ tầng trước khi xảy ra sự cố
Trang 71.2.2 Đặc điểm của Nagios
Giám sát toàn diện
Khả năng để giám sát các ứng dụng, dịch vụ, hệ điều hành, giao thức mạng, hệ thống số liệu và các thành phần cơ sở hạ tầng với mội công cụ duy nhất
API mạnh mẽ cho phép giám sát dễ dàng các ứng dụng và tùy chỉnh các dịch vụ, và các hệ thống
Tầm nhìn
Tập trung theo dõi toàn bộ cơ sở hạ tầng CNTT
Chỉ tiết thông tin trạng thái hoạt động thông qua giao diện web
Nhận thức
Nhanh chóng phái hiện các sự cố ngưng hoạt động của cơ sở hạ tầng
Cảnh báo có thể được gửi đến nhân viên kỹ thuật qua email hoặc tin nhắn SMS
Khả năng leo thang đảm bảo các thông báo cảnh báo đến đúng người
Khắc phục vấn đề
Xác nhận cảnh báo cung cấp thông tin về các vấn đề được biết đến và ứng phó van dé
Xử lý sự kiện cho phép tự động khởi động các ứng dụng thất bại và dịch vụ
Lập kế hoạch chủ động
Những phần bổ trợ lập kế hoạch cho xu hướng và năng lực hoạt động đảm bảo bạn nhận thức
được sự xuống cáp của cơ sở hạ tầng
Dự kiến thời gian ngưng hoạt động cho phép tắt cảnh bóa trong quá trình nâng cấp cơ sở hạ tầng
Trang 8Hơn 10 năm phát triển hoạt động
Cân bằng để giám sát hàng ngàn điểm
Failover đảm bảo khả năng giám sát không ngừng của các thành phần cơ sở hạ tầng CNTT quan
trọng
Nhiều giải thưởng, phương tiện truyền thông và công nhận chứng minh giá trị của Nagios
Cộng đồng sôi nổi
Ước tính hơn 1 triệu người sử dụng trên toàn thế giới
Các hoạt động của cộng đồng được hỗ trợ miễn phí
Mã nguồn tùy chỉnh
Phần mềm nguồn mở
Không giới hạn truy cập vào mã nguồn
Phát hành theo giấy phép GPL (General Public License_ Giấy phép công cộng)
Programming Interface_ Giao diện lập trình ứng dụng) được sử dụng để mở rộng khả năng của minh để thực hiện nhiệm vụ bổ sung, được thực hiện như một tiến trình được viết bằng C€ vì lý do hiệu suất, và được thiết kế để chạy tự nhiên trên hệ thống Linux/* nix
Nagios Plugins
Nagios plugins là phần mở rộng độc lập để Nagios Core cung cấp ở mức độ thấp về cách theo dõi bất cứ điều gì và tất cả mọi thứ với Nagios Core Plugins hoạt động như các ứng dụng độc lập, nhưng thương được thiết kế để thực thi bởi Nagios Core
Trang 9qua cho Nagios Core để xử lý tiếp Plugin có thể được biên dịch nhị phân (viết bằng C, C+4, .)
hoặc các bản thực thi (Perl, PHP, )
Ngoài ra, còn có các thành phần Nagios Frontends, Nagios Conf i gtools
1.2.3.2 Cách thức tổ chức hoạt động của Nagios
Monitoring Logic
Monitored Entities
Hìh 1.5 Sơ đồ tổ chức của Nagions
Nagios có 5 cách thực thi các hành động kiểm tra:
Kiểm tra dịch vụ trực tiếp: Đối với các dịch vụ mạng có giao thức giao tiếp qua mạng
nhu SMTP, HT TP, FTP, Nagios có thể tiến hành kiểm tra trực tiếp mội dịch vụ xem nó đang hoạt
động hay không bằng cách gửi truy vấn kết nối dịch vụ đến server dịch vụ và đợi kết quả trả về
Các plugin phục vụ kiểm tra này được đặt ngay trên server Nagios
Chạy các plugin trên máy ở xa bằng secure shell: Nagios server không có cách nào có
thể truy cập trực tiếp client để theo dõi những thông tin như tình trạng sử dụng 6 dia, swap, tiến
trình Để làm được việc này thì trên máy được giám sát phải cài plugin cục bộ Nagios sé diéu khiển các plugin cục bộ trên client qua secure shell ssh bang plugin check_by_ssh Phương pháp
này yêu cầu một tài khoản truy cập host được giám sát nhưng nó có thể thục thi được tất cả các
plugin được cài trên host đó
Bộ thực thi plugin từ xa (NRPE - Nagios Remote Plugin Executor) NRPE là một addon đi kèm với Nagios Nó trợ giúp việc thực thi các plugin được cài đặt trên máy/thiết bị được giám sái NRPE được cài trên các hosi được giám sái Khi nhận được truy vấn từ Nagios server thì
nó gọi các plugin cục bộ phù hợp trên hosi này, thực hiện kiểm tra và trả về kết quả cho Nagios
server Phương pháp này không đòi hỏi tài khoản truy cập host được giám sát như sử dụng ssh Tuy
nhiên cũng như ssh các plugin phục vụ giám sát phải được cài đặt trên host được giám sát NRPE
có thể thực thi được tất cả các loại plugin giám sát Nagios có thể điều khiển máy cài NRPE kiểm
tra các thông số phần cứng, các tài nguyên, tình trạng hoạt động của máy đó hoặc sử dụng NRPE
Trang 10để thực thi cdc plugin yêu cầu truy vấn dịch vụ mạng đến mội máy thứ 3 để kiểm tra hoạt động của
các dịch vụ mạng nhu http, ftp, mail
Giám sát qua SNMP Cối lõi của giao thức SNMP (SimpleNetwork Managemeni Protocol )
là tập hợp đơn giản các hoạt động giúp nhà quản trị mạng có thể quản lý, thay đổi trạng thái thiết
b Hi nệnay r tấhi uểhi tế nà ngh ỗ giao th cứSNMP nh_ 8wiich, router, máy in, f i rewall Nagios cũng có khả năng sử dụng giao thức SNMP để theo dõi trạng thái của các client, các thiết bị
mạng có hỗ trợ SNMP Qua SNMP, Nagios có được thông tin về tình trạng hiện thời của thiết bị Ví
dụ như với SNMP, Nagios có thể biết được các cổng của Swiich, router có mở hay không, thời gian Uptime (chạy liên tục) là bao nhiêu
NSCA (Nagios Service Check Acceptor)
Nagios được coi là một phần mềm rất mạnh vì nó dễ dàng được mở rộng và kết hợp với
các phần mềm khác Nó có thể tổng hợp thông †in từ các phần mềm kiểm tra của hãng †hứ ba hoặc các tiến trình Nagios khác về trạng thái của hosi/dịch vụ Như thế Nagios không cần phải lập lịch
và chạy các hành động kiểm tra host/dịch vụ mà các ứng dụng khác sẽ thực hiện điểu này và báo
cáo thông tin về cho nó Và các ứng dụ ng kiểm tra có thể tận dụng được khả năng rất mạnh của
Nagios là thông báo và tổng hợp báo cáo Nagios sử dụng công cụ NSCA để gửi các kết quả kiểm
tra từ ứng dụ ng của bạn về server Nagios Công cụ này giúp cho thông tin gửi trên mạng được an toàn hơn vì nó được mã hóa và xác thực
Nagios server
Hình 1.6 Các cách thức thực hiện kiểm tra
Hình trên cho ta cái nhìn tổng quan về các cách thức kiểm tra dịch với Nagios Có 5 client được giám sát bằng 5 cách thức khác nhau:
Client 1: Nagios sử dụng plugin „check_xyz" được cài đặt ngay trên server Nagios để gửi truy vấn
kiểm tra dịch vụ trén client( http, ftp, dns, smtp )
Client 2, 3: Nagios str dung cae plugin trung gian dé chay plugin „check_xyz" giám sát được cài đặt
trực tiếp trên client (bởi vì có những dịch vụ không có hỗ trợ giao thức trao đổi qua mạng, ví dụ khi bạn muốn kiểm tra dung lượng ổ đĩa cứng còn trống trên client )
Trang 11kiểm tra các dịch vụ trên client có hỗ trợ giao thức SNMP Rất nhiều thiết bị mạng như router,
switch, máy in có hỗ trợ giao thức SNMP
Client 5: Đây là phương pháp kiểm tra bị động Nagios không chủ động kiểm tra dịch vụ mà là
client chủ động gửi kết quả kiểm tra dịch vụ về cho Nagios thông qua plugin NSCA Phương pháp này được áp dụng nhiều trong giám sái phân tán Với các mạng có quy mô lớn, người ta có thể
dùng nhiều server Nagios để giám sát tùng phần của mạng Trong đó có một server Nagios trung tâm thực hiện tổng hợp kết quả từ các server Nagios con thông qua plugin NSCA
1.2.4 Khả năng giám sát thiết bị
Giám sát các thiết bị mạng: Nagios giám sái các thiết bị qua giao thức SNMP Vì vậy máy giám
sát(Nagios) phải cài đặt nei-snmp và nei-snmp-utils với redhat/fedora hoặc libsnmp-base, snmp, snmpd,libsnmp15 với debian/ubuntu trước khi biên dịch và cài đặt nagios plugin Các thiết bị được
giám sát phải có IP, hỗ trợ snmp, và snmp ở trạng thái bật
Máy in:Nagios sử dụng plugin check hpjdcho việc giám sát trạng thái của máy in Plugin check_hpjd sử dụng giao thức SNMP để xác định trạng thái của máy in
Check_ hpjd có khả năng phái hiện, cảnh báo, ghi lại các sự cố của máy in như:
- Kết nối đến máy in(ping đến máy in)
- Khay ra giấy bị đầy
Cấu hình giám sát máy in: Mặc định lệnh “check _hpịd” đã được định nghĩa trong tệp commands.cfg Nó cho phép bạn gọi plugin check_hpjd plugin dé giam sat may in trong mang thtr nữa là đã có mội mẫu định nghĩa máy in(được gọi là generic-printer) được tạo trong tệp templates.cíg Nó cho phép bạn thêm một định nghĩa may in mới khá đơn giản Khi định nghĩa máy
in được giám sát mới bạn chỉ cần khai báo sử dụng mẫu này và tùy chỉnh một số tùy chọn cho phù
hợp
Trong lần đầu tiên cấu hình Nagios giám sát máy in bạn cần phải sửa tệp cấu hình Nagios Và sau
đó không phải làm lại việc này nữa
Trang 12Xóa dấu (#) ở đầu dòng như bên dưới trong tệp cấu hình:
#cfg_f i le=/usr/local/nagios/etc/objects/printer.cfg
Lựu tệp cấu hình và thoát Đây là khai báo sử dụng tệp cấu hình cho máy in
Tệp cấu hình /usr/local/nagios/etc/objects/printer.cfg sẽ là nơi để bạn thêm những định nghĩa host
và dịch vụ mới cho máy in Tệp cấu hình này đã chứa mội vài ví dụ về định nghĩa host, hosigroup,
và dịch vụ Bạn có thể sửa những mẫu này để giám sát một máy in trong lần đầu tiên cấu hình
Bạn cần phải định nghĩa mới đối tượng máy in khi giám sat mot may in mdi MG tép printer.cfg
vi /usr/local/nagios/etc/objects/printer.cfg
Thêm một định nghĩa hosi mới cho máy in trong mạng mà bạn sẽ giám sát Thay đổi trường host_name, alias, và address theo các giá trị của máy in
def ine host{
use generic-printer ; Thừa kế giá trị mặc định của mẫu
alias HP LaserJet 2605dn ; Tên khác của máy in address 192.168 1.30 ; Địa chỉ IP của máy
in
hostgroups allhosts ; Host groups cua may in
Bây giờ bạn có thể bổ xung định nghĩa các dịch vụ được giám sát Nếu là lần đầu tiên định nghĩa
thi bạn có thể sửa luôn định nghĩa dịch vụ mẫu trong tệp printer.cfg
Thêm định nghĩa dịch vụ bên dưới để kiểm tra trạng thái của máy in 10 phút một lần check_hpịd
plugin sé kiém tra trạng thái của máy in
def ine service{
host_name hplj2605dn ; Tên của máy in được giám sát service_description Printer Status ; Mô tả dịch vụ
check_command check_hpjd!-C public ;Lénh dé su dung giám
normal_check_interval 10 ; kiểm tra lại dịch vụ sau 10 phút
Trang 13Lưu tệp lại và kiểm chứng lại cấu hình và khởi động lại Nagios
Swiich, router: Nagios sử dụng 2 plugin giám sát các thiết bị này đó là check_snmp, check_mrigtraf Nếu muốn sử dụng check_ mrigiraf để giám sát băng thông thì máy Nagios phải cài MRTG(chương trình giám sát lưu lượng mạng) Hình bên dưới mô tả cách thúc thực hiện việc giám sát Router/swiich
Hình 1.8 Giám sát Router/Switch
Khả năng giám sát của Nagios:
Kết nối đến thiết bị(ping thiết bị)
Trạng thái up/down của các cổng
Sử dụng băng thông,lưu lượng trên các cổng
Tỉ lệ mất gói tin, trung bình trễ trọn vòng(RTA)
Cấu hình giám sát router/swiich
Hai lệnh check_snmp và check_local_mrigtrafđã được định nghĩa trong tệp commands.cfg Chúng cho phép bạn gọi plugin check_snmp và check_ mrigtraf plugin để giám sát router/switch Mẫu định nghĩa Rouier/switch (được gọi là generic-swiich) đã được tạo trong tệp templaies.cÍg
Nó cho phép bạn thêm các định nghĩa router/swiich host rất nhanh chóng Các tệp cấu hình trên được đặt trong thư mục sr/Iocal/nagios/etc/objecis/ Bạn có thể sử dụng các định nghĩa sẵn có
này hoặc thêm các đinh nghĩa cho phù hợp với nhu cầu của mình
Trang 14Trong lần đầu tiên cấu hinh Nagios giam sat switch ban can phải sửa tệp cấu hình Nagios Và sau
đó không phải làm lại việc này nữa
vi /usr/local/nagios/etc/nagios.cfg
Xóa dấu (#) ở đầu dòng như bên dưới trong tệp cấu hình
#cfg_f i le=/usr/local/nagios/etc/objects/switch.cfg
Lưu lại và thoái Tệp tin /usr/local/nagios/etc/objects/switch.cfg là nơi để định nghĩa cho hosi và dịch
vu router and switch Trong nay có sẵn mội số định nghĩa về host, hosigroup, và dịch vụ mẫu Trong lần đầu tiên định nghĩa router/switch bạn có thể sửa luôn các định nghĩa mẫu này tốt hơn là tạo một định nghĩa mới
vi /usr/local/nagios/etc/objects/switch.cig
Tạo một định nghĩa host đơn giản như bên dưới
def ine host{
use generic-switch ; kế thừa giá trị mặc định từ mẫu
host_name linksys-srw224p ; lên của switch
alias Linksys SRW224P Switch ; bí danh của swiich address 192 168 1.253 ; địa chỉ IP cua switch
hostgroups allhosts, switches ; Host group cua switch
}
Giám sái Tỉ lệ mất gói tin, trung bình trễ trọn vòng
Ví dụ thêm định nghĩa dịch vụ dưới đây để giám sát việc mất gói tin và RTA(round trip average)
giữa Nagios host và switch 5 phút một lần trong điều kiện bình thường
def ine service{
use generic-service ; Inherit values from a_ template
check_command check_ping!200.0,20%!600.0,60% ;
}
Dịch vụ này trả về:
- CRITICAL, néu round trip average (RTA) lớn hơn 600 milliseconds hoặc số gói bị mất trên 60%,
- WARNING, cảnh báo nếu RTA lớn hơn 200ms hoặc gói tin bị mất lớn hơn 20%
- OK, Ngược lại chạy bình thường nếu RTA nhỏ hơn 200ms và số gói bị mất nhỏ hơn 20% Giám sát thông tin trạng thái qua SNMP
Nếu switch hay router của bạn hỗ trợ SNMP, bạn có thể giám sát rất nhiều thông tin bằng
check_snmp plugin Bổ xung định nghĩa dịch vụ bên dưới để định nghĩa uptime(thời gian chạy liên tục) của switch
def ine service{
Trang 15use generic-service ;kế thừa giá trị từ mẫu
check_command check_snmp!-C publc -o sysUpTime.0
}
Trong mục check_command ở trên, tham số "-C public” chỉ ra rằng tên SNMP là "public" và "-o
sysUpTime.0" chỉ ra OID được kiểm tra
Nếu bạn muốn giám sát một giao diện/cổng(portiinterface) nào đó trên switch ở trạng thái up hay down, bạn thêm một định nghĩa dịch vụ như sau:
def ine service{
use generic-service Thừa kế giá trị từ mau
service_description Port 1 Link Status check_command check_snmp!-C public -o ifOperStatus.1 -r 1 —m
HFC1213-MIB }
Trong ví dụ trên, tham số "-o ifOperStatus.1" chỉ vị trí cổng ở đây là 1 Tham số "+ 1" có ý nghĩa là check_snmp plugin tra vé trang thai OK néu "1" dugc tim thay trong két qua SNMP (1 chi trang thai
"up"của cổng) và CRITICAL nếu nó không tìm thấy Tham số "-+m RFC1213-MIB" chỉ ra rằng
check_snmp plugin chi tai "RFC1213- MIB" thay vì tải các MIB được cài trên hệ thống của bạn
Điều này giúp làm tăng tốc độ mọi thứ lên Lưu ý: Bạn có thể tìm ra các OID được giám sái trên
switch bằng cách sử dụng lệnh( thay 192.168.1.253 thành địa chỉ IP của switch bạn quản lý): snmpwalk -v1 -c publc 192.168.1.253 -m ALL †
Giám sát băng thông và tỉ lệ lưu lượng
Nếu bạn đang giám sát băng thông sử dụng trên switch hay router sử dụng MRTG, bạn có thé nhận được cảnh báo khi tỉ lệ lưu lượng đạt tới ngưỡng mà bạn định trước check_mrtgtraf plugin
(sẵn có trong các bản Nagios plugin được phân phối) cho phép bạn làm điều này Bạn cũng cần
phải cho cheœ_ mrigtraf plugin biết tệp log nào lưu trữ những dữ liệu MRTG , ngưỡng giới hạn, v.v
Trong vi du nay, chung ta sé giám sái một cổng trên Linksys swiich Tệp MRTG log được luu
trong /var/libimrig/192.168.1.253_1.log Đây là định nghĩa dịch vụ mà chúng ia sử dụng để giám sát
dữ liệu băng thông được lưu trong tệp log
def ine service{
use generic-service ; Inherit values from a template
service_description Port 1 Bandwidth Usage check_command check_local_mrigtrafl/var/lib/mrig/1 92.168 1.253_
1.logIAVG!1 000000, 2000000!5000000,5000000!10
Trang 16check_local_mrigtraf chỉ ra rằng plugin sẽ đọc tệp MRTG log khi xử lý Tùy chọn "AVG" có ý nghĩa
là sử dụng số liệu thống kê băng thông trung bình Tùy chọn "1000000,2000000” là cảnh báo khi tới ngưỡng trong việc tăng tỉ lệ lưu lượng(bằng byte) Tuy chọn "5000000,5000000" là tới hạn lưu
lượng gởi đi (bằng byte) Tùy chọn "10" chỉ ra rằng plugin trả về trạng thái CRITICAL nếu tệp
MRTG log không được cập nhật sau 10 minute (thường là được cập nhật 5 phút một lần) Lưu lại tệp, khởi động lại Nagios
Giám sát máy đầu cuôi
Giám sát các tài nguyên trên máy đầu cuối: Trên mỗi máy tính đầu cuối được cai mot Agent Agent này sẽ thực hiện việc kiểm tra trạng thái các tài nguyên trên chính máy đó Nagios giao tiếp với Agent này để thu thập kết quả NSGIieni++ là Agent được sử dụng trên máy được giám sát chạy
hệ điều hành window và NRPE trên máy được giám sát chạy hệ điều hành linux Nagios sử dụng 2
plugin để giao tiếp với các Ageni này là check_nt cho window và check_nrpe cho linux Kha nang giám sát:
Tải CPU
Tình trạng sử dụng ổ đĩa cứng
Tình trạng sử dụng bộ nhớ trong, và swap
Số người dùng đang logon, số tiến trình đang chạy và tệp log hệ thống trên linux Giám sát từng dịch
vụ, tiến trình trên window
Giám sát các thông số an toàn phần cứng trên máy đầu cuối: Plugin giám sát các thông số an toàn
phần cứng là check_sensors Máy được giám sát phải cài đặt LM sensors và nhân phải được cập nhật module driver phù hợp Các thông số được giám sát là:
Đổi với các dịch vụ mạng như HTTP, POP3, IMAP, FTP, SSH là các dịch vụ dùng chung, công
khai Nagiso thường giám sát được trạng thái của các dịch vụ này mà không cần bất cứ yêu cầu
truy cập đặc biệt nào Không như các dịch vụ riêng, Nagios không thể giám sát được nếu như không có các agernt trung gian Ví dụ các dịch vụ có liên quan đến hosi như là tải CPU, tình trạng
sử dụng bộ nhớ trong, ổ đĩa, Vì những thông tin này thường không được công khai với bên ngoài
và yêu cầu quyền truy cập Khi giám sát các dịch vụ mạng, Nagios sẽ gọi các plugin được đặt ngay
trên server Nagios gửi một yêu cầu dịch vụ đến host cung cấp dịch vụ, hoặc gọi mội plugin trên
một host và yêu cầu dịch vụ trên host thứ 2 rồi thu thập kết quả trả về
Giám sát web server
Nagios str dung plugin check_htiptrong việc giám sat dich vu HTTP trên web server Check_hifp có thể nhận biết được các thông tin sau:
Thời gian trả lời của web server
Mã lỗi trả về của dịch vụ http (403 : không tìm thấy tệp, 404: lỗi xác thực)
Nội dung chuỗi trả về của hi†p có chứa chuỗi s cho trước không
Mội URL nào đó có còn nằm trên web server hay không
Tất cả các dịch vụ đều được cung cấp bdi mét host nào đó Mọi định nghĩa dịch vụ giám sát đều
phải khai báo host cung cấp Định nghĩa host cung cấp nếu nó chưa được định nghĩa (định nghĩa