1. Trang chủ
  2. » Luận Văn - Báo Cáo

NGHIÊN cứu xây DỰNG hệ THỐNG GIÁM sát MẠNG tại TRƯỜNG đại học hải PHÒNG

9 1,2K 16

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 9
Dung lượng 753,11 KB

Nội dung

Trong bài báo này, chúng tôi tập trung nghiên cứu nghiên cứu bài toán và các giao thức giám sát hoạt động của hệ thống mạng dựa trên nền tảng mã nguồn mở Nagios và hệ điều hành CentOS. Từ đó đề xuất giải pháp giám sát hoạt động mạng hoàn chỉnh dựa trên việc thu thập thông tin Check_MK, biểu diễn và phân tích thông tin pnp4Nagios. Hệ thống được xây dựng cho phép giám sát hoạt động của hạ tầng mạng cũng như các dịch vụ mạng tích hợp trên Nagios. Các thực nghiệm giám sát mạng ở Nhà C3 trường Đại học Hải Phòng cho thấy hệ thống tự động phát hiện và gửi cảnh báo qua email giúp người quản trị có thể khắc phục sự cố nhanh chóng, kịp thời thông qua các kết nối từ xa trên internet và đảm bảo hệ thống mạng hoạt động liên tục và ổn định.

Trang 1

NGHIÊN CỨU XÂY DỰNG HỆ THỐNG GIÁM SÁT MẠNG

TẠI TRƯỜNG ĐẠI HỌC HẢI PHÒNG

Lại Văn Chiến – Công nghệ thông tin K13 Khoa Công nghệ thông tin – Trường Đại học Hải Phòng

171 Phan Đăng Lưu, Kiến An, Hải Phòng Email: chielv.cnttk13@dhhp.edu.vn Cán bộ hướng dẫn: TS Lê Đắc Nhường, ThS Nguyễn Ngọc Khương

Tóm tắt

Trong bài báo này, chúng tôi tập trung nghiên cứu nghiên cứu bài toán và các giao thức giám sát hoạt động của hệ thống mạng dựa trên nền tảng mã nguồn mở Nagios và hệ điều hành CentOS Từ đó đề xuất giải pháp giám sát hoạt động mạng hoàn chỉnh dựa trên việc thu thập thông tin Check_MK, biểu diễn và phân tích thông tin pnp4Nagios Hệ thống được xây dựng cho phép giám sát hoạt động của hạ tầng mạng cũng như các dịch vụ mạng tích hợp trên Nagios Các thực nghiệm giám sát mạng ở Nhà C3 trường Đại học Hải Phòng cho thấy hệ thống tự động phát hiện và gửi cảnh báo qua email giúp người quản trị có thể khắc phục sự cố nhanh chóng, kịp thời thông qua các kết nối từ xa trên internet và đảm bảo hệ thống mạng hoạt động liên tục và ổn định

I ĐẶT VẤN ĐỀ

Cùng với sự phát triển của công nghệ thông tin, sự đầu tư cho cơ sở hạ tầng mạng trong 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 [1][5] 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á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 trị 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át mạng có hiệu quả như Nagios, Zabbix, Zenoss, Cacti [6] Trong bài báo này, chúng tôi tiếp cận dựa trê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 hướng đến là giúp cho mọi người có

Trang 2

cách nhìn tổng quát về một hệ thống giám sát mạng 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 trường học, doanh nghiệp

II BÀI TOÁN GIÁM SÁT MẠNG

Giá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 một hệ thống mạng

Đối với hệ thống mạng, điều quan trọng nhất là nắm được những thông tin chính xác nhất vào mọi thời điểm Những thông tin cần nắm bắt khi giám sát một hệ thống bao gồm[4]:

- Tính sẵn sàng của thiết bị (Router, Switch, Server, ): những thiết bị giữ cho mạng hoạt động

- Các dịch vụ trong hệ thống (DNS, FTP, HTTP, ): những dịch vụ này đóng vai trò quan trọng trong một công ty, tổ chức, nếu các dịch vụ này không được đảm bảo hoạt động bình thường và liên tục, nó 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 ta 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: đư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ạo file log: thu được những thông tin về những thay đổi trong hệ thống

Tầm quan trọng của hoạt động giám sát mạng: Giả sử một quản trị viên đang quản lý

một hệ thống mạng của công ty bao gồm 10 server Trong mỗi Server, quản trị viên đó phải lần lượt kiểm tra 8 tham số Như vậy, mỗi ngày, phải kiểm tra 80 tham số, việc đó tiêu tốn khoảng thời gian khá lớn Nếu hệ thống mạng có nhiều thiết bị hơn nữa, việc sử dụng một hệ thống giám sát là cần thiết Sử dụng hệ thống giám sát, chúng ta có thể tiết kiệm khá nhiều thời gian, thay vì tốn 10 tiếng để kiểm tra toàn bộ, chúng ta chỉ tốn khoảng 10 phút Hơn nữa, khi biết được những sự cố xảy ra trong mạng, chúng ta có thể khắc phục được những sự cố đó một cách kịp thời, đồng thời đưa ra được những chính sách hợp lý trong việc giới hạn truy cập, quản lý băng thông, bảo trì, nâng cấp hệ thống, Những hoạt động đó giúp cho việc quản trị mạng trở nên dễ dàng, có hiệu quả, nâng cao hiệu suất công việc

Giao thức SNMP (System Network Management Protocol) là giao thức được sử dụng

để hỗ trợ cho việc giám sát các thiết bị mạng cũng như các thiết bị khác trong trung tâm dữ liệu (Data Center) [8] Giao thức SNMP là một phần trong bộ giao thức TCP/IP Trong môi trường data center, mỗi Server được cài đặt các Agent giao tiếp với nhau thông qua giao thức SNMP

Trang 3

để quảng bá trạng thái của mỗi thiết bị Thiết bị manager (Monitoring Server) tập trung dữ liệu

từ nhiều nút Giao thức SNMP gồm 3 thành phần chính: Thiết bị - là nơi mà agent được cài đặt; Agent - được cài đặt trên thiết bị; Monitoring Server – Phần mềm nhận dữ liệu giám sát từ agent Dữ liệu có thể được tập hợp bằng cách sử dụng các phương thức GetRequest, SetRequest, GetNextRequest, Response, Trap, Có nghĩa là hệ thống giám sát có thể yêu cầu

1 giá trị từ Server “get” hoặc cotheer thiết lập “trap”

Hình 1: Cấu trúc PDU của giao thức SNMP

Giao thức SNMP hoạt động ở tầng Application của mô hình OSI và sử dụng UDP port 161

để giao tiếp vì giao thức SNMP không cần hồi báo và sử dụng cho mục đích giám sát Cấu trúc

cơ bản của PDU trong giao thức SNMP bao gồm IP header, UDP header, version, communtity type, requestid, error status, error index, variable bindings Có 3 phiên bàn chính của giao thức SNMP Phiên bản 1 [RFC 1065, 1066, 0167, 1156] có vấn đề trong bảo mật và chứng thực Lỗi đó được khắc phục trong phiên bản 2 [RFC 1213] Trong phiên bản 3, giao thức SNMP được cải tiến để có thể cấu hình từ xa [RFC 3411, 3418]

Hình 2: Sơ đồ hoạt động của giao thức SNMP

III GIẢI PHÁP GIÁM SÁT MẠNG TẠI TRƯỜNG ĐẠI HỌC HẢI PHÒNG

A Giới thiệu về Nagios

Là phần mềm mã nguồn mở, là một ứng dụng rất mạnh cho việc giám sát mạng Nó phù hợp với các hệ thống mạng lớn và nhỏ Ưu điểm lớn nhất của Nagios là tính mở của chương trình, ta có thể cấu hình Nagios theo nhiều cách, đồng thời có thể mở rộng theo nhu cầu của người sử dụng Nagios giúp cho việc phát hiện và giải quyết vấn đề xảy ra trong hệ thống được tiến hành một cách hiệu quả nhất Nagios hoạt động bằng cách kiểm tra xem một máy chủ hoặc dịch vụ có hoạt động tốt không và lưu trữ trạng thái của nó Trạng thái của một dịch vụ có một trong bốn giá trị OK, WARNING, CRITICAL, UNKNOWN Điều quan trọng là nó thật sự xác

Trang 4

định được tình trạng hiện tại Để tránh phát hiện tạm thời và ngẫu nhiên vấn đề, Nagios sử dụng trạng thái tạm thời và cố định mô tả tình trạng hiện tại của một máy chủ lưu trữ hoặc dịch vụ

Để xử lý tình huống khi một dịch vụ ngưng hoạt động trong một thời gian rất ngắn, hoặc các kiểm tra tạm thời không thành công, người ta đưa ra trạng thái tạm thời Khi trạng thái của một kiểm tra là UNKNOWN, hoặc khác các trạng thái trước đó, Nagios sẽ tiến hành kiểm tra lại các máy chủ, dịch vụ nhiều lần để đảm bảo rằng thay đổi là cố định trong một khoảng thời gian dài[2] Số lần kiểm tra được cấu hình trong phần định nghĩa các dịch vụ Nagios giả định rằng các kết quả mới là một trạng thái tạm thời Sau khi tiến hành kiểm tra nhiều lần mà trạng thái không đổi, thì nó được coi là một trạng thái cố định Mỗi Host và Service được định nghĩa số thử kiểm tra sẽ được thực hiện trước khi nó có thể được giả định rằng thay đổi là vĩnh viễn Điều này cho phép linh hoạt trong việc kiểm tra các sự cố Thiết lập

số lượng kiểm tra một sẽ gây ra các thay đổi được coi là khó khăn ngay lập tức Sau đây là môt minh họa cho trạng thái tạm thời và cố định, giả sử số lần kiểm tra là 3 ta sẽ có:

Hình 3: Sơ đồ mô tả cách thức Nagios thông báo các trạng thái

Tính năng này cho phép bỏ qua sự cố ngưng hoạt động trong thời gian ngắn của một dịch vụ Nó cũng rất hữu ích để thực hiện các kiểm tra định kỳ ngay khi mọi thứ hoạt động tốt

Các chức năng chính của Nagios: Các chức năng của Nagios rất linh hoạt, nó có thể

được cấu hình để theo dõi cơ sở hạ tầng Công nghệ thông tin theo cách mà ta muốn Nó cũng

có một cơ chế để tự động phản ứng với các vấn đề và một hệ thống cảnh báo mạnh Tất cả điều này được dựa tren một hệ thống định nghĩa các đối tượng rõ ràng:

- Commands: được định nghĩa về các Nagios cần thực hiện các loại kiểm tra, chúng

là một lớp trừu tượng cho phép ta nhóm các hoạt động tương tự lại với nhau

- Time-period: là ngày và thời gian kéo dài mà trong đó một hoạt động nên hay

không nên được thực hiện.Ví dụ: thứ 2 đến thứ 6 9:00 – 17:00

- Contacts và Contact groups: là những người cần được cảnh báo, cùng với thông

tin về cách thức và thời gian họ cần được cảnh báo Contacts có thể được nhóm lại thành Contact groups

- Host: là những máy vật lý, cùng với thông tin về việc ai sẽ được liên lạc, làm thế

nào kiểm tra phải được thực hiện và khi nào Host có thể được nhóm lại thành các Host group, mỗi host có thể là thành viên của nhiều Host group

Trang 5

- Services: là các chức năng khác nhau hoặc các tài nguyên cần được giám sát, cùng

với thông tin về những người cần được liên lạc, làm thế nào kiểm tra phải được thực hiện, và khi nào Service có thể được nhóm lại thành các service group, mỗi service

có thể là một thành viên của nhiều service group

- Host và service escalation: định nghĩa khoảng thời gian được chỉ ra mà sau đó

người phụ trách nên được cảnh báo của các sự kiện nào đó

B Đề xuất giải pháp, triển khai mô hình

Những mục tiêu cần giám sát trong mô hình gồm:

Hạ tầng mạng: Theo dõi Router, Switch, End User dựa trên kiểm tra kết nối từ Server

chạy Nagios đến các thiết bị cần giám sát (PING), tải CPU của thiết bị (CPU load), phiên bản

hệ điều hành (IOS version), trạng thái các port gồm Up hoặc Down (Interface Table), tình trạng

bộ nhớ đang được sử dụng thiết bị (Memory), băng thông được sử dụng của port (Port Bandwidth), trạng thái liên kết (Port Link Status), mức nhiệt độ của thiết bị, khoảng thời gian chạy của thiết bị tính từ lúc bật (Uptime)

Dịch vụ: Kiểm tra dịch vụ phân giải tên miền (DNS), dịch vụ Web (Http), dịch vụ

WINS (POP3), dịch vụ truyền dữ liệu (Ftp)

Quá trình triển khai:

- Cấu hình IP cho các thiết bị, thiết lập tất cả kết nối giữa các thiết bị

- Cài đặt các dịch vụ như DNS, FTP, HTTP, cho các Server cần giám sát

- Cài đặt chương trình NSClient trên các thiết bị cần giám sát

- Cài đặt Nagios dựa trên hệ điều hành mã nguồn mở CentOS trong Nagios Server

- Cài đặt các plugin cần thiết để hỗ trợ chương trình Nagios như: Check_MK, npn4Nagios, MRTG, Check Table Interface, Check Temp,

- Tiến hành cấu hình cho chương trình Nagios Định nghĩa các thiết bị, các dịch vụ cần giám sát thông qua các file config của Nagios

- Định nghĩa các host hoặc thiết bị cần giám sát dựa trên địa chỉ IP của thiết bị

- Định nghĩa các dịch vụ cần giám sát trên các thiết bị (hình 6)

Trang 6

Hình 6: Định nghĩa một dịch vụ cần giám sát

Sau đó, tiến hành giám sát các thiết bị dựa vào giao diện web Các bước tiến hành giám sát bao gồm:

- Sử dụng tài khoản admin của Nagios, đăng nhập vào giao diện web (Hình 7)

Hình 7: Giao diện đăng nhập của Nagios

- Giám sát tổng quan về tình trạng chung của hệ thống mạng: Giám sát số lượng các host đang up hoặc down, số lượng các Warning, Problems, Critical, Pending, OK, Dựa vào các tham số đó, chương trình Nagios tự động đánh giá và đưa ra cảnh báo về tình trạng của các thiết bị, các dịch vụ như Host Health, Service Health

Hình 8: Tổng quát về tình trạng của một hệ thống mạng

- Xem danh sách tất cả các thiết bị đang được giám sát, tình trạng của thiết bị

Hình 9: Danh sách tất cả các thiết bị được giám sát

C Khắc phục sự cố mạng

Sau khi triển khai hoàn chỉnh giải pháp, toàn bộ hệ thống bao gồm hạ tầng và dịch vụ mạng đã được giám sát, theo dõi thông qua Nagios Khi có bất kì vấn đề gì xảy ra, chương trình Nagios sẽ đưa ra những cảnh báo tương ứng để người quản trị có thể phát hiện sự cố và nhanh chóng khắc phục Những sự cố thường xảy ra trong mạng bao gồm: thiết bi mất kết nối, quá

Trang 7

tải đường truyền, thiếu tài nguyên, 1 ứng dụng nào đó của Server xảy ra lỗi, Giả sử, trong mô hình trên, chúng ta nhận được thông báo về 1 số lỗi xảy ra trong hệ thống Nếu không triển khai giám sát mạng, người quản trị phải dựa vào những triệu chứng để đưa ra những dự đoán

về nguyên nhân phát sinh lỗi Nhưng sau khi đã triển khai chương trình Nagios, những gì người quản trị cần làm là đăng nhập vào giao diện web của chương trình Nagios và xem qua các thông tin về các thiết bị, dịch vụ được giám sát

Trong trường hợp này, người quản trị phát hiện được 2 sự cố xảy ra trong mạng:

Hình 10: Sự cố về dịch vụ DNS

Sự cố đầu tiên xảy ra ở DNS Server, vì 1 lý do gì đó, dịch vụ DNS không hoạt động, hệ thống sẽ xuất cảnh báo CRITICAL

Hình 11: Sự cố về thiết bị Switch Distribution 1

Sự cố thứ 2 là về tình trạng tài nguyên bộ nhớ của Switch bị đầy Dựa vào những thông báo này, người quản trị có thể đưa ra những giải pháp như kiểm tra lại dịch vụ chạy trên Server, nâng cấp hệ thống, để giải quyết vấn đề Ngoài ra, để tối ưu hóa quá trình giám sát mạng, đồng thời giảm thiểu những thiệt hại có thể xảy ra khi hệ thống gặp sự cố, giúp người quản trị

có thể nhanh chóng phát triển ra khi hệ thống trục trặc, chương trình Nagios có chức năng tự động gửi những cảnh báo khi sự cố phát sinh đến mail hoặc điện thoại của người quản trị Những cảnh báo này có độ chi tiết khá cao, nó chỉ rõ trạng thái và vấn đề xảy ra trong hệ thống, nhờ vậy, người quản trị biết phải làm gì

Hình 12: Những mail cảnh báo về sự cố mạng

D Phân tích đánh giá

Sau khi tiến hành triển khai chương trình Nagios để giám sát mô hình mạng như trên, chúng tôi đưa ra những đánh giá tổng quát về chương trình:

Ưu điểm: Nagios là phần mã nguồn mở, miễn phí với giao diện đồ họa đẹp mắt, thân thiện đối với người dùng, có tính mở rộng cao, có khả năng theo dõi định kì theo thời gian đã

Trang 8

được cấu hình trước và it tốn tài nguyên hệ thống Có cơ chế tự động cảnh báo cho người quản trị khi có sự cố xảy ra, tự động tạo các báo cáo theo lịch biểu ấn định, độ ổn định cao khi giám sát hệ thống mạng Đặc biệt Nagios có khả năng giám sát phân tán nên có thể hỗ trợ tối đa 100.000 node

Nhược điểm: Không có khả năng tự động nhận biết các thiết bị giám sát trong mạng mà cần phải định nghĩa trên Nagios Server Cần phải cài đặt từng plugin riêng cho từng dịch vụ giám sát, chính điều này khiến cho việc cấu hình Nagios trở nên khá phức tạp Một số thiết bị mới chưa thể giám sát được, ví dụ như Access Point, Triển khai khó vì phải thực hiện trên CentOS

IV KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Thông qua quá trình triển khai giám sát các thiết bị sử dụng mạng tại Nhà C3 trường Đại học Hải Phòng, 171 Phan Đăng Lưu, Kiến An, Hải Phòng, chúng tôi rút ra một số lợi ích từ việc giám sát hệ thông mạng tự động bằng các phần mềm giám sát như sau:

- Xác định nguyên nhân cốt lõi cảu vấn đề 1 cách nhanh chóng và dễ dàng Giảm thiểu công sức tìm kiếm, di chuyển của nhân viên quản trị mạng

- Tạo ra sự hài lòng của người dùng trong mạng nôi bộ

- Tự động gửi cảnh báo qua email giúp nhân viên quản trị mạng có thể khác phục sự cố nhanh chóng, kịp thời thông qua các kết nối từ xa bằng internet Đảm bảo hệ thống mạng của doanh nghiệp hoạt động liên tục và ổn định

- Tự động tạo các báo cáo qua lịch biểu ấn định Người sử dụng có thể tạo ra nhiều mẫu báo cáo khác nhau

- Xác định các xu hướng xảy ra trong tương lai Tối ưu hóa và định mức đầu tư đúng mức, đúng chỗ vào hạ tầng của hệ thống mạng

- Tất cả các yếu tố bên trên dẫn đến việc có thể tiết kiệm được chi phí, ngân sách đầu tư Bên cạnh các phần mềm nhìn chung, khi quản trị hệ thống mạng, việc giám sát đóng vai trò rất quan trọng Nó ảnh hưởng lớn đến hiệu quả kinh doanh của doanh nghiệp hiện nay Hiện nay có rất nhiều phần mềm mạnh hỗ trợ hiệu quả cho quá trình giám sát mạng như Nagios, CACti, Zenoss, Zabbix, Việc lựa chọn phần mềm phụ thuộc vào quy mô mạng mà chúng ta quản trị Và đặc biệt có thể kết hợp một số phần mềm với nhau để tăng cường hiệu quả của việc giám sát mạng hiện nay Và chúng ta cũng có khá nhiều thiết bị phần cứng hỗ trợ cho việc giám sát mạng, sự kết hợp giữa phần cứng và phần mềm sẽ cho hiệu quả cao nhất, mang lại sự tối ưu Đề tài có thể phát triển bằng cách mở rộng giả pháp kết hợp với một số thành phần khác như tường lửa, IPS, IDS nhằm tăng cường khả năng giám sát và bảo vệ hệ thống mạng

Trang 9

TÀI LIỆU THAM KHẢO

[1] M H S Benjamin D Wright (1979), " Best Test Design," SMESA PRESSA, Chicago [2] S.-T K Raymond J Adams (1993), " QUEST - The Interactive Test Analysis System,"

ACER, Austalia

[3] W R B K R W Blaine R Worthen (1993), "Measurement and Evaluation in the

Schools," Longman

[4] S S S Miguel A Revilla (2012), Programming Challenges

[5] A Kosowski (2014), "PROBLEMS" SPOJ,

[6] W.-T S a H.-Y Chung (2014), “A distributed energy monitoring network system

based on data fusion via improved PSO,” Measurement, vol 55, pp 362 - 374

[7] P Zhou et al (2015), “Wireless sensor network based monitoring system for a

large-scale indoor space: data process and supply air allocation optimization,” Energy and

Buildings, vol 103, pp 365 - 374

[8] K Fatema et al.(2014), “A survey of Cloud monitoring tools: Taxonomy, capabilities

and objectives,” Journal of Parallel and Distributed Computing, vol 74, no 10, pp

2918-2933

[9] J.R Gisbert et al (2014), “Integrated system for control and monitoring industrial

wireless networks for labor risk prevention,”, Journal of Network and Computer

Applications, vol 39, pp 233 - 252

Ngày đăng: 05/09/2016, 16:39

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w