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

nghiên cứu giám sát mạng bằng phần mềm mã nguồn mở nagios

46 1,3K 13

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 46
Dung lượng 2,08 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Ngày nay mạng máy tính đã trở thành một cơ sở hạ tầng rất quan trọng của tất cả các cơ quan, trường học. Nó đã trở thành một kênh trao đổi thông tin không thể thiếu được trong thời đại công nghệ thông tin vì lợi ích mà nó đem lại là rất lớn, nó đóng góp một phần rất quan trọng trong việc phát triển kinh tế xã hội đất nước.

Trang 1

TR

ƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO THỰC TẬP TỐT NGHIỆP

TÊN CHUYÊN ĐỀ THỰC TẬP TỐT NGHIỆP

NGHIÊN CỨU TRIỂN KHAI HỆ THỐNG GIÁM SÁT QUẢN TRỊ MẠNG TRÊN NỀN TẢNG HỆ THỐNG MA

NGUỒN MỞ NAGIOS

Địa điểm thực tập : Viện Công Nghệ Thông Tin-Viện Hàn Lâm

Khoa Học Và Công Nghệ Việt Nam Người hướng dẫn : T.S Nguyễn Việt Anh

Đơn vị công tác : Phòng Khoa Học Dữ Liệu-Viện Công Nghệ

Thông Tin-Viện Hàn Lâm Khoa Học Và Công Nghệ Việt Nam

Sinh viên thực hiện : Trịnh Thùy Linh

Đơn vị học tập : Khoa Công nghệ thông tin – Đại học Tài nguyên

và Môi trường Hà Nội

Hà Nội, tháng 4 năm 2016

Trang 2

TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO THỰC TẬP TỐT NGHIỆP

TÊN CHUYÊN ĐỀ THỰC TẬP TỐT NGHIỆP

NGHIÊN CỨU TRIỂN KHAI HỆ THỐNG GIÁM SÁT QUẢN TRỊ MẠNG TRÊN NỀN TẢNG HỆ THỐNG MA NGUỒN MỞ

NAGIOS

Địa điểm thực tập : Viện Công Nghệ Thông Tin-Viện Hàn Lâm

Khoa Học Và Công Nghệ Việt Nam Người hướng dẫn : T.S Nguyễn Việt Anh

Đơn vị công tác : Phòng Khoa Học Dữ Liệu-Viện Công Nghệ Thông

Tin-Viện Hàn Lâm Khoa Học Và Công Nghệ Việt Nam

Người hướng dẫn Sinh viên thực hiện

Trịnh Thùy Linh

Hà nội, tháng 4 năm 2016

Trang 3

LỜI CẢM ƠN

Sau thời gian nghiên cứu, học tập tại Phòng Công Nghệ Thông Tin-Viện CôngNghệ Thông Tin-Viện Hàn Lâm Khoa Học, lời đầu tiên em xin chân thành cảm ơn đến

sự giúp đỡ quý báu của các thầy cô giáo trong viện đã tạo điều kiện cho em có một môitrường học tập thoải mái đặc biệt là sự hướng dẫn tận tình của Ts.Nguyễn Việt Anh làngười hướng dẫn em trong suốt quá trình hoàn thành bài báo cáo thực tập tốt nghiệpnày

Em xin chân thành cảm ơn các thầy cô trong khoa công nghệ thông tin trường ĐạiHọc Tài Nguyên Và Môi Trường Hà Nội đã đào tạo, truyền đạt cho em những kiếnthức và kinh nghiệm trong lĩnh vực công nghệ thông tin nói riêng và những kiến thứckhác nói chung để em có được những kiến thức tổng hợp trước khi ra trường

Trong thời gian thực tập có hạn, cũng như kinh nghiệm còn hạn chế của em nêntrong bài báo cáo thực tập tốt nghiệp này không tránh khỏi những thiếu sót, hạn chếnhất định Vì vậy em rất mong nhận được sự chỉ bảo, đóng góp ý kiến của các thầy côcùng toàn thể các bạn để em có điều kiện bổ sung, nâng cao kiến thức của mình để emcó thể phục vụ tốt hơn cho công việc thực tế sau này

Em xin chân thành cảm ơn!

Trang 4

MỞ ĐẦU

1 Lý do chọn chuyên đề thực tập

Ngày nay mạng máy tính đã trở thành một cơ sở hạ tầng rất quan trọng của tất cảcác cơ quan, trường học Nó đã trở thành một kênh trao đổi thông tin không thể thiếuđược trong thời đại công nghệ thông tin vì lợi ích mà nó đem lại là rất lớn, nó đónggóp một phần rất quan trọng trong việc phát triển kinh tế xã hội đất nước Mọi cơ quandoanh nghiệp ngày càng phát triển phạm vi lớn mạnh với qui mô ngày càng phức tạp,

do đó việc sử dụng các phần mềm quản lý mạng sẽ hỗ trợ rất tốt cho việc quản lý giámsát mạng vì vậy chúng ta rất cần đến hệ thống giám sát, quản trị mạng hiệu quả

Giám sát mạng là một trong những vấn đề hiện nay rất quan trọng trong việc quảntrị các hệ thống mạng Nó hạn chế tối đa việc mạng bị gián đoạn trong quá trình hoạtđộng Nó đảm bảo việc khai thác tài nghuyên có hiệu quả, đảm bảo an toàn, tin cậy chonhững dịch vụ cung cấp Hiện nay có rất nhiều công cụ giám sát mạng hỗ trợ cho côngviệc quản trị Chức năng của chúng là giám sát trạng thái hoạt động của các thiết bịmạng, các dịch vụ mạng, và các máy đầu cuối tham gia vào mạng và thông báo chongười quản trị khi có sự cố hoặc khả năng xảy ra sự cố Có rất nhiêu hệ thống thươngmại như Hpopen View hay mã nguồn mở như openNMS, Cacti, Nagios… Mỗi hệthống lại có những ưu nhược điểm riêng Bài báo cáo này em tập trung vào việc nghiêncứu một hệ thống giám sát dựa trên Nagios, một sản phẩm nguồn mở được sử dụng rấtrộng rãi từ khi ra đời Từ năm 2002 đến nay Nagios đã liên tục phát triển và rất đượcquan tâm chính vì sự phát triển mạnh mẽ đó đến nay có rất nhiều những phiên bản mớivới các tính năng mạnh mẽ đã dần được ra đời Đặc biệt Nagios có khả năng phân tánvì vậy nó có thể giám sát các mạng khổng lồ đạt cỡ 100.000 node

2 Đối tượng, phạm vi và phương pháp thực hiện chuyên đề thực tập

a) Đối tượng nghiên cứu: các công cụ, phần mềm cài đặt Nagios

b) Phạm vi nghiên cứu: đề tài được nghiên cứu áp dụng cho việc quản trị

mạng của trường học

c) Phương pháp thực hiện:

- Nghiên cứu các vấn đề liên quan đề liên quan đến quản trị mạng, mãnguồn mở, tổng hợp các tài liệu, dữ liệu

- Thu thập, nghiên cứu, kiểm tra phân tích quy trình quản lý mạng

- Tìm hiểu các phần mềm mã nguồn mở phổ biến và các phần mềm hỗ trợ

để cài đặt Nagios

3 Mục tiêu và nhiệm vụ của chuyên đề

a) Mục tiêu của đề tài

- Nghiên cứu về phần mềm mã nguồn mở, các công cụ, phần mềm hỗ trợ

để cài đặt Nagios

Trang 5

b) Nhiệm vụ của chuyên đề

- Tìm hiểu hệ thống Nagios

- Xây dựng và cài đặt Nagios trên Centos 6.7

- Phát triển một số ứng dụng của Nagios

Trang 6

CHƯƠNG 1 TỔNG QUAN CHUNG VỀ CƠ SỞ THỰC TẬP

1 Viện Hàn Lâm Khoa Học và Công Nghệ Việt Nam

Viện Hàn lâm Khoa học và Công nghệ Việt Nam (Viện Hàn lâm KHCNVN) là cơquan sự nghiệp thuộc Chính phủ, thực hiện chức năng nghiên cứu cơ bản về khoa học

tự nhiên và phát triển công nghệ theo các hướng trọng điểm của Nhà nước nhằm cungcấp luận cứ khoa học cho công tác quản lý khoa học, công nghệ và xây dựng chínhsách, chiến lược, quy hoạch, kế hoạch phát triển kinh tế- xã hội và đào tạo nhân lựckhoa học, công nghệ có trình độ cao cho đất nước theo quy định của pháp luật

Viện là cơ quan khoa học và công nghệ hàng đầu của cả nước, có vị trí đầu tầu tronghệ thống khao học công nghệ quốc gia, thực hiện các hoạt động nghiên cứu cơ bản vềkhoa học tự nhiên và phát triển công nghệ một cách toàn diện, trình độ cao

Với tiềm lực khoa học công nghệ trình độ cao sẵn có, Viện Hàn lâm KHCNVN luônsẵn sàng đáp ứng đòi hỏi xử lý các vấn đề phát sinh của tình hình thực tiễn Bên cạnhđó, Viện Hàn lâm KHCNVN cũng thực hiện công tác đào tạo nhân lực trình độ caocho đất nước

2 Viện công nghệ thông tin

Trụ sở: Nhà A3 - Số 18 Hoàng Quốc Việt, Cầu Giấy, Hà Nội

BAN LÃNH ĐẠO:

Viện trưởng: TS.NCVC Nguyễn Trường Thắng Phó viện trưởng: TS.NCVC Nguyễn Đức Dũng,

Trang 7

ThS NCVC Nguyễn Thu Anh

• Viện Công nghệ thông tin được thành lập theo Quyết định số 20/KHCNQGngày 19/06/1993 của Giám đốc Trung tâm Khoa học và Công nghệ Quốc gia

• Hội đồng khoa học: gồm 20 thành viên

- Chủ tịch hội đồng: PGS.TS Lương Chi Mai

- Phó chủ tịch hội đồng: PGS.TS Thái Quang Vinh, PGS.TS Đặng Văn Đức

- Thư ký hội đồng: TS Nguyễn Như Sơn

• Chức năng và nhiệm vụ:

- Nghiên cứu các vấn đề cơ bản của tin học, cơ sở toán học, tự động hóa và kỹthuật của công nghệ thông tin, ứng dụng công nghệ thông tin trong các hệ thốngkinh tế - xã hội và trong tự động hoá sản xuất

- Thiết kế, chế tạo các sản phẩm của CNTT và tự động hóa, đặc biệt là các sảnphẩm phần mềm

- Triển khai ứng dụng các kết quả nghiên cứu trong sản xuất đời sống, chuyển giaocông nghệ tiên tiến thuộc các lĩnh vực nói trên

- Thẩm định, tư vấn và dịch vụ kỹ thuật các đề án, dự án trong lĩnh vực CNTT

- Chế tạo thử nghiệm các sản phẩm CNTT và tự động hóa dựa trên các kết quảnghiên cứu KHCN của Viện

- Biên soạn giáo trình, đào tạo cán bộ nghiên cứu KHCN về CNTT

- Tổ chức hợp tác quốc tế trong lĩnh vực CNTT

• Cơ cấu tổ chức và lực lượng cán bộ

- Cơ cấu tổ chức:

• Các phòng chuyên môn

 Nghiên cứu hệ thống và quản lý

 Các hệ chuyên gia và tính toán mềm

 Các phương pháp toán học trong CNTT

 Thống kê - tính toán và ứng dụng

 Công nghệ tự động hoá

 Tin học trong điều khiển học

 Các hệ quản trị dữ liệu

 Tin học quản lý

 Công nghệ phần mềm trong quản lý

Trang 8

 Cơ sở dữ liệu và lập trình

 Các hệ thống phần mềm tích hợp

 Hệ thông tin địa lý

 Nhận dạng và Công nghệ tri thức

 Hệ thống mạng và Hạ tầng cơ sở CNTT

 Tin học viễn thông

 Công nghệ thực tại ảo

• Các đơn vị quản lý nghiệp vụ

Phòng Quản lý tổng hợp

• Phòng TNTĐ Công nghệ mạng và Đa phương tiện

• Các trung tâm

 Trung tâm sáng tạo Microsoft (MIC)

 Trung tâm Công nghệ và Giải pháp phần mềm

- Lực lượng cán bộ: Tổng số CBVC là 180 người

• Số biên chế: 143

• Số hợp đồng: 37

• Giáo sư: 02

• Phó giáo sư: 15

• Tiến sĩ khoa học: 02

• Tiến sĩ: 35

• Thạc sĩ: 40

• Kỹ sư/ Cử nhân: 93

• Khác : 10

• Các hoạt động thường xuyên của đơn vị:

- Đào tạo tiến sĩ về CNTT, TĐH kết hợp đào tạo đại học và cao học với các trường

ĐH Công nghiệp Hà Nội, ĐH Thái Nguyên và ĐH Công nghệ Hà Nội

- Tham gia đấu thầu và thực hiện các hợp đồng triển khai ứng dụng CNTT, TĐH ởcác Bộ, ngành và các địa phương

- Thực hiện các đề tài khoa học các loại: đề tài KHCN cấp nhà nước, đề tài NCCBcấp nhà nước, đề tài cấp Viện KHCNVN và các đề tài cấp cơ sở

- Thực hiện hợp tác khoa học với các trường ĐH và các viện nghiên cứu nướcngoài

- Tổng hợp và nhận dạng tiếng Việt

- Nghiên cứu và triển khai ứng dụng các hệ thống nhúng, các hệ thống không dâyvà các hệ thống đo lường điều khiển tự động

Trang 9

- Nghiên cứu xây dựng cơ sở dữ liệu đa phương tiện phục vụ cho việc thiết kế pháttriển các hệ thống thông tin địa lý, các hệ mô phỏng sử dụng công nghệ thực tạiảo…

- Nghiên cứu phát triển các công nghệ tính toán hiện đại: tính toán lưới và điệntoán đám mây…

- Thực hiện dự án của EU về Thiết kế và xây dựng hệ thống tin học quản lý cáctrường học (SREM)

- Thực hiện các hợp đồng xây dựng, nâng cấp và triển khai ứng dụng các chươngtrình quản lý ngân sách của Bộ Tài chính

- Hợp đồng gia công phần mềm cho Nhật Bản

Những thành tựu nổi bật

- Thực hiện nhiều đề tài nghiên cứu cơ bản và KHCN cấp Nhà nước trong lĩnh vựcCNTT và tự động hóa, phục vụ các lĩnh vực quản lý, KT-XH và an ninh quốcphòng

- Thiết kế, xây dựng, triển khai nhiều hệ thống quản lý, điều hành và an toàn thôngtin tại các cơ quan của Đảng, Chính phủ, các Bộ/Ngành ở Trung ương và địaphương

- Đào tạo: Viện là đơn vị đào tạo tiến sĩ tin học và tự động hoá hàng đầu ở ViệtNam Viện cũng kết hợp đào tạo Thạc sĩ với nhiều trường Đại học trên cả nước

- Hợp tác quốc tế: Hợp tác chặt chẽ với các trường đại học và viện nghiên cứu củaNhật Bản, Hoa Kỳ, Hàn Quốc, Châu Âu và một số quốc gia Châu Á khác

- Một số sản phẩm phần mềm:

• VnDOCR – phần mềm nhận dạng chữ Việt in

• MarkRead – phần mềm nhập tự động phiếu điều tra

• VnOnline – phần mềm nhận dạng chữ viết tay trực tuyến cho Tablet PC

• VnVoice – hệ thống tổng hợp tiếng Việt

• Các hệ thống đo và điều khiển từ xa ứng dụng trong công nghiệp

• Dịch vụ tạo các chip đặc chủng cho các sản phẩm đo lường và điều khiển

Trang 10

• PopMap – Hệ thông tin địa lý trợ giúp quyết định trong các hoạt động dân số

• Ứng dụng dịch vụ hỗ trợ đối tượng nộp thuế trên mạng máy tính

• Mô hình và công cụ phát triển các hệ thống thông tin phục vụ quản lý hành chính

CHƯƠNG 2 TỔNG QUAN VỀ GIÁM SÁT MẠNG VÀ MA NGUỒN MỞ

2.1 Khái quát chung về giám sát mạng

Cùng cới sự phát triển của công nghệ thông tin, sự đầu tư cho cơ sở hạ tầng mạngtrong 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ốngmạ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ạngnhư băng thông cao, khối lượng dữ liệu trong mạng lớn, đáp ứng nhu cầu của ngườidù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ênngoài, tính sẵn sàng của thiết bị, tài nguyên hệ thống Một trong những giải pháp hữuhiệu nhất để giải quyết vấn đề này là thực hiện giải pháp giám sát mạng, dựa trênnhữ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ữngvấ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ứcnăng hiệu quả đơn giản trong triển khai, chi phí thấp

2.1.1 Giám sát mạng là gì?

Trang 11

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ínhxác nhất 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 baogồm:

• Tính sẵn sàng của thiết bị (Router, Swicth, Server…): những thiết bị giữ chomạ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 đảmbảo hoạt động bình thường và liên tục, nó sẽ ảnh hưởng nghiêm trọng đếncông ty tổ chức đó

• Tài nguyên hệ thống: các ứng dụng đòi hỏi tài nguyên hệ thống, việc giám sáttài nguyên sẽ đảm bảo cho chúng ta có những can thiệp kịp thời, tránh ảnhhưở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ượngquá 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

2.1.2 Tầm quan trọng của hoạt động giám sát mạng

- Giám sát mạng nhằm duy trì sức khỏe của mạng lưới, đảm bảo sẵn sàng và cảithiện hiệu suất

- Giám sát mạng có thể giúp chúng ta xây dựng cơ sở dữ liệu thông tin quantrọng mà chúng ta có thể dùng để lên kế hoạch trong sự phát triển ở tương lai

- Giám sát mạng thường dùng để kiểm tra băng thông sử dụng, kiểm tra hiệu suấtcủa ứng dụng và hiệu suất của máy chủ

- Giám sát lưu lượng là nhiệm vụ cơ bản của giám sát mạng Nó thường tập trungvào các vấn đề hỗ trợ người dùng nội bộ

- Phát hiện tự động khả năng ghi lại thiết bị liên tục khi chúng được thêm vào gỡbỏ hoặc trải qua những thay đổi cấu hình

- Tự động phát hiện và phân loại công đoạn giúp chúng ta có kế hoạch phát triển

Hệ thống giám sát mạng có thể giám sát những loại mạng nào?

- Hệ thống giám sát mạng có thể giám sát các loại mạng có kích thước lớn, nhỏ,trung bình Một số loại mạng như là:

• Wireless or wired

• LAN

Trang 12

• VPN

2.1.3 Nhiệm vụ của hệ thống giám sát mạng

- Một hệ thống giám sát sẽ giúp chúng ta trong môi trường phức tạp, đưa ra cácbáo cáo, người quản lý có thể sử dụng các báo cáo này để:

• Xác nhận việc tuân thủ quy định và chính sách

• Tiết kiệm chi phí tiềm lực bằng cách tìm nguồn dữ liệu dư thừa

• Giải quyết hiệu quả việc lấy cắp thông tin

• Trợ giúp xác định năng suất của nhân viên

• Spot quá tải thiết bị trước khi nó có thể mang xuống một mạng lưới

• Xác định liên kết mạng diện rộng yếu và thắt cổ chai

• Do độ trễ hoặc do truyền tải dữ liệu bị trễ

• Tìm bất thường trong mạng nội bộ có thể cho biết một mối đe dọa an ninh

- Giám sát mạng giúp ta trả lời những câu hỏi khó khăn như:

• Giúp các nhà thiết kế làm đơn giản hóa và đồng nhất hệ thống với chi phí thấp,giúp đưa ra quyết định thay thế các phân đoạn mạng với chi phí chấp nhậnđược?

• Hệ điều hành và ứng dụng nào chạy trên server, và chúng cần thiết?

• Người sử dụng đại diện cho ai, và cái gì được họ gửi?

• Làm thế nào để gần vói công suất của máy chủ?

• Thiết bị từ xa gì được sử dụng, và chúng được sử dụng gì?

• Làm thế nào và từ đâu thiết bị từ xa gia nhập vào hệ thống?

• Ai và những nguồn gì đang quản lý hệ thống?

2.1.4 Các công cụ của hệ thống giám sát mạng

- Những hệ thống giám sát mạng có thể là phần mềm firmware, đơn giản hay phức tạp

- Một trong những công cụ đơn giản nhất là gửi tín hiệu đến thiết bị và xem thời gian trảvề bao lâu (digitial echolocation) Thích hợp hầu hết với các nhà quản lý là các côngcụ liên quan đến các kiểm tra thông tin thường và các kịch bản theo dõi và có thể đưa

ra nhiều báo cáo đa dạng với các đồ họa, với điều kiện tổng kết từ thiết bị cụ thể trongmạng lưới rộng khắp

- Các công cụ mã nguồn mở có tính mở rộng cao, không tốn Và chúng làm việc với hầuhết các công cụ và phù hợp với hầu hết các nền tảng

- Không có vấn đề gì đáng lo khi chúng ta chọn công cụ, mặc dù tích cực tìm hiểu xemchúng làm tốt như thế nào trong môi trường của chúng ta, đặc biệt với hệ điều hànhtrên mạng của chúng ta Nếu như mạng của chúng ta trở nên quá phức tạp và không thểkiểm soát được những gì đang xảy ra, chúng ta có thể theo dõi outsource Outsourcetạo ra các mức của dịch vụ và các gói chức năng để bao quát nhiều môi trường mạngvà ngân sách

2.1.5 Những lợi ích mà giám sát mạng đem lại cho chúng ta

Trang 13

- Giám sát mạng cẩn thận cho phép giám đốc điều hành tất cả thông tin họ cần để chứngminh việc nâng cấp mạng và mở rộng mạng là cần thiết để hỗ trợ doanh nghiệp thànhcông trong tương lai.

- Service-level agreement (SLA) khó thực thi bên bộ phận khách hàng bơi vì nó đưa ranhững điều khoản rất khắt khe

- Hệ thống giám sát mạng làm việc hiệu quả sẽ thông báo cho nhà quản lý biết thiết bị,dịch vụ, hoặc ứng dụng được phép hoạt động ở mức độ nào

2.2 Khái quát chung về mã nguồn mơ

2.2.1 Mã nguồn mơ là gì?

- Mã nguồn mở là thuật ngữ chỉ các sản phẩm phần mềm công khai mã nguồn (sourcecode) Người dùng không phải trả một khoản chi phí nào, hơn thế nữa họ còn có quyềnxem, sửa đổi, cải tiến, nâng cấp theo một số nguyên tắc chung qui định trong giấy phépphần mềm mã nguồn mỡ General Public Licence-GPL Ông tổ của mã nguồn mở làRichard Stallman, người đã xây dựng dự án GNU, và cho ra giấy phép mã nguồn mởGPL, hai nền tảng then chốt cho sự phát triển của mã nguồn mở

- Phần mềm mã nguồn mở do một người, một nhóm người hay một tổ chức phát triển vàđưa ra phiên bản đầu tiên cùng với mã nguồn, công bố công khai cho cộng đồng,thường là trên internet Trên cơ sở đó các cá nhân tham gia sử dụng sẽ đóng góp pháttriển, sửa các lỗi (nếu có) và bổ sung để hoàn thiện sản phẩm cho các phiên bản tiếptheo Tuy nhiên, người ta cũng được phép kinh doanh phần mềm mã nguồn mở trênmột số mặt Nhà cung cấp phần mềm mã nguồn mở có quyền yêu cầu người sử dụngphải trả một số chi phí về các dịch vụ bảo hành, huấn luyện, nâng cấp, tư vấn… tức lànhững dịch vụ thực sự đã thực hiện để phục vụ người sử dụng nhưng không bán cácmã nguồn mở đó vì nó là tài sản trí tuệ chung, không phải là tài sản riêng của một nhàcung cấp nào

- Tiện ích mà phần mềm mã nguồn mở mang lại chính là quyền tự do sử dụng chươngtrình cho mọi mục đích, quyền tự do để nghiên cứu cấu trúc của chương trình và pháthành những bản cải tiến vì mục đích cộng đồng

2.2.2 Phân loại phần mềm mã nguồn mơ

 Applicaion: Các loại phần mềm ứng dụng, ví dụ như hệ điều hành, phần mềm văn

phòng, phần mềm kế toán, phần mềm chỉnh sửa âm thanh hình ảnh, công cụ lập trình(IDE), Web server

Ví dụ:

Hệ điều hành: Linux, Free BSD

Phần mềm văn phòng: Open Ofice

Công cụ lập trình: Kdeveloper, Eclipse

Web server: Apache

Trang 14

Trình duyệt web: Mozzila Firefox…

 Software frameword: là những tập phần mềm (software package) cung cấp những

chức năng thường gặp khi lập trình, để những lập trình viên khác dùng để viết phầnmềm hiệu quả hơn, khỏi phải viết lại code cho những vấn đề đã có người giải quyết rồiVí dụ:

Framework cho web interface: Struts, Webwork, Tapestry, velocity

Framework cho light container: Spring

Framework cho object-relational mapping: Hibernate

2.2.3 Lợi ích và hạn chế của mã nguồn mơ

 Lợi ích

- Chi phí thấp: phần mềm mã nguồn mở được dùng miễn phí về bản quyền và nếu có chiphí thì chỉ là chi phí cho đóng gói sản phẩn và dịch vụ cho sản phẩm

- Độc lập: phần mềm mã nguồn mở không bị lệ thuộc vào bất kỳ nhà cung cấp nào

- Làm chủ công nghệ, đảm bảo an toàn và riêng tư

- Tính thích ứng và sáng tạo

- Chất lượng tin cậy: nhiều phần mềm có chất lượng và độ tin cậy cao

- Tuân thủ chuẩn: phần mềm mã nguồn mở thường được phát triển tuân thủ theo cácchuẩn tốt hơn

- Không bị hạn chế về quyền sử dụng

- Tính lâu dài, tự do, phát triển dễ dàng…

- Bảo mật không bảo đảm: mặc dù được quảng cáo là có độ bảo mật tốt nhưng khồn aidám khẳng định những phần mềm mã nguồn mở là an toàn

2.2.4 Giới thiệu về một số ã nguồn mơ thương gặp

- Hiện nay trên thế giới có rất nhiều loại mã nguồn mở khác nhau, mỗi loại mã nguồnmở lại có một ứng dụng riêng Dưới đây là một số loại mã nguồn mở được sử dụngrộng rãi:

• Phần mềm văn phòng OpenOffice.org (với 6 modul: soạn thảo văn bản-Writer;Bảng tính điện tử-Calc; Trình chiếu-Impress; Cơ sở dữ liệu-Base; Đồ họa-Draw; Soạn thảo công thức toán học-Math)

• Bộ gõ tiếng việt: Unikey

• Trình duyệt web Mozilla Firefox

Trang 15

• Phần mềm thư điện tử máy trạm.

• Linux là một hệ điều hành mã nguồn ở dạng Unix được xây dựng bởi LinusTorvald, Linux có mọi đặc tính của một hệ điều hành hiện đại: Hệ thống đanhiệm, đa tuyến đoạn, bộ nhớ ảo, thư viện động, chương trình dùng chung, tảitheo nhu cầu, quản lý bộ nhớ, các modul driver thiết bị, video frame bufering,và mạng TCP/IP

• Joomla là một hệ quản trị nội dung mã nguồn mở được ứng dụng để thiết kếcác trang web như các công thông tin điện tử hoặc cac website doanh nghiệp,thương mại điện tử trực tuyến …

• Nagios là một mã nguồn mở phổ biến hệ thống máy tính và phần mềm ứngdụng giám sát mạng Nagios kiểm soát hoạt động máy chủ và dịch vụ, cảnhbáo người dùng khi gặp sai trong hệ thống Nó phù hợp với hệ thống mạng vừavà nhỏ

CHƯƠNG 3 GIỚI THIỆU CƠ BẢN VỀ ĐẶC ĐIỂM VÀ CÁCH THỨC CẤU

HÌNH TRONG NAGIOS

Nagios là một mã nguồn mở phổ biến hệ thống máy tính và phần mềm ứng dụnggiám sát mạng Nagios kiểm soát hoạt động máy chủ và dịch vụ, cảnh báo người dùngkhi gặp sai trong hệ thống Nó phù hợp với hệ thống mạng vừa và nhỏ

Nagios ban đầu được đặt tên là NetSaint t, đã được viết và hiện đang được nghiêncứu, cải tiến bởi Ethan Galstad, cùng với một nhóm các nhà phát triển tích cực duy trìcả hai chính thức và không chính thức bổ sung

Nagios ban đầu được thiết kế chạy theo GNU/Linux, nhưng cũng chạy tốt trên cácphiên bản Unix Nó là miễn phí phần mềm, cấp giấy theo các điều khoản của GNUGeneral Public License phiên bản 2 như được sản xuất bởi tổ chức phần mềm tự do

3.1 Chức năng của nagios

 Nagios là phần mềm mã nguồn mở được cấp phép theo chuân V3 GNU GPL:

- Giám sát trạng thái hoạt động của các dịch vụ mạng (SMTP, POP3, IMAP, HTTP,ICMP, FTP, SSH, DHCP, LDAP, DNS, name server, web proxy, TCP port, UDP port,cở sở dữ liệu: mysq, portgreSQL, oracle)

- Giám sát các tài nguyên các máy phục vụ và các thiết bị đầu cuối (chạy hệ điều hànhUnix/Linux, Windows, Novell netware): tình trạng sử dụng CPU, người dùng đang log

on, tình trạng sử dụng ổ đĩa cứng, tình trạng sử dụng bộ nhớ trong và swap, số tiếntrình đang chạy, các tệp log hệ thống

- Giám sát các thông số an toàn thiết bị phần cứng trên host như: nhiệt độ CPU, tốc độquạt, pin, giờ hệ thống

Trang 16

- Giám sát các thiết bị mạng có IP như router, switch và máy in Với Router, Switch,Nagios có thể theo dõi được tình trạng hoạt động, trạng thái bật tắt của từng cổng, lưulượng băng thông qua mỗi cổng, thời gian hoạt động liên tục của thiết bị Với máy in,Nagios có thể nhận biết được nhiều trạng thái, tình huống sảy ra như kẹt giấy, hếtmực

- Cảnh báo cho người quản trị bằng nhiều hình thức như email, tin nhắn tức thời, âmthanh nếu như có thiết bị, dịch vụ gặp trục trặc

- Tổng hợp lưu giữ và báo cáo định kỳ về tình trạng hoạt động của mạng

3.2 Các đặc điểm của nagios

- Các hoạt động kiểm tra được thực hiện bởi các plugin cho máy phục vụ Nagios và cácmodun client trên các thiết bị của người dùng cuối, Nagios chỉ định kỳ nhận các thôngtin từ các plugin và xử lý những thông tin đó (thông báo cho người quản lý, ghi vào tệplog, hiện thị lên giao diện web )

- Thiết kế plugin đơn giản cho phép người dùng có thể tự định nghĩa và phát triển cácplugin kiểm tra các dịch vụ theo nhu cầu riêng bằng các công cụ lập trình như shellscripts, C/C++, Per, Ruby, Python, PHP, C#

- Có khả năng kiểm tra song song trạng thái hoạt động của các dịch vụ (đồng thời kiểmtra nhiều dịch vụ)

- Hỗ trợ khai báo kiến trúc mạng Nagios không có khả năng nhận dạng được topo củamạng, toàn bộ các thiết bị, dịch vụ muốn được giám sát đều phải khai báo và địnhnghĩa trong cấu hình

- Gửi thông báo đến người/nhóm người được chỉ định sẵn khi dịch vụ/host được giámsát gặp vấn đề và khi chúng khôi phục hoạt động bình thường (qua email, pager, SMS,IM )

- Khả năng định nghĩa bộ xử lý sự kiện thực thi ngay khi có sự kiện sảy ra với host/dịchvụ

- Giao diện web cho phép xem trạng thái của mạng, thông báo, history, tệp log

3.3 Kiến trúc và tổ chức hoạt động của nagios

3.3.1 Kiến trúc của nagios

- Hệ thống Nagios gồm 2 phần chính:

• Lõi Nagios

• Plugin

 Phần lõi Nagios có chức năng quản lý các host/dịch vụ được giám sát, thu thập các kếtquả kiểm tra host/dịch vụ từ các plugin gửi về, biểu diễn trên giao diện chương trình,lưu trữ và thông báo cho người quản trị Ngoài ra nó còn tổng hợp và đưa ra các báocáo về tình hình hoạt động chung hoặc của tưng host/dịch vụ trong một khoảng thờigian nào đó

 Plugin là bộ phận trực tiếp thực hiện kiểm tra host/dịch vụ Mỗi một loại dịch vụ đềucó một plugin riêng biệt được viết để phục vụ riêng cho công việc kiểm tra dịch vụ đó

Trang 17

Plugin là các script (Perl, C ) hay các tệp đã được biên dịch Khi cần thực hiện kiểmtra một host/dịch vụ nào đó Nagios chỉ việc gọi plugin tương ứng và nhận kết quả kiểmtra từ chúng Với thiết kế như thế này, hệ thống Nagios rất dễ dạng được mở rộng vàphát triển Bất kì một thiết bị hày dịch vụ nào cũng có thể được giám sát nếu như viếtđược plugin cho nó Hình bên dưới cho ta thấy sự tương quan giữa các thành phầntrong Nagios.

Hình 3.1 Sơ đồ tổ chức hoạt động của nagios

3.3.2 Cách thức tổ chức hoạt động

Nagios có 5 cách thực thi 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 như smtp, http, ftp Nagioscó thể tiến hành kiểm tra trực tiếp một địch vụ xem nó đang hoạt động hay không bằngcá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 pluginphụ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ữngthông tin như tình trạng sử dụng ổ đĩa, swap, tiến trình Để làm được việc này thì trênmáy được giám sát phải cái plugin cục bộ Nagios sẽ điều khiển các plugin cục bộ trênclient qua secure shell ssh bằng plugin check_by_ssh Phương pháp này yêu cầu mộttà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át NRPE được cài trên host được giám sát 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 host này, thựchiệ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

Trang 18

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 pluginphụ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 đượctấ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ácthô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ụngNRPE để thực thi các plugin yêu cầu truy vấn dịch vụ mạng đến một máy thứ 3 đểkiểm tra hoạt động của các dịch vụ như http, ftp, mail

 Giám sát qua SNMP

- Cốt lõi của giao thức SNMP (SimpleNetword Mangement Protocol) là tập hợp đơngiả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 nhiều thiết bị mạng hỗ trợ giao thức SNMP như Swich, router, máy in,firewal Nagios cũng có khả năng sử dụng giao thức SNMP để theo dõi trạng thái củ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áccổng của Switch, router có mờ hay không, thời gian Uptime (chạy liên tuc) là baonhiê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ợpvới các phần mềm khác Nó có thể tổng hợp thông tin từ các phần mềm kiểm tra củahãng thứ ba hoặc các tiến trình Nagios khác về trạng thái của host/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ụngkiể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ợpbáo cáo 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ó đượcmã hóa và xác thực

Trang 19

Hình 3.2: các cách thực hiện kiểm tra

- Hình trên cho cho ta cái nhìn tổng quan về cách thức kiểm tra dịch vụ nagios Có 5client được giám sát bằng 5 cách thức khác nhau:

• Client1: Nagios sử dụng plugin “check_xyz” được cài đặt ngay trên serverNagios để gửi truy vấn kiểm tra dịch vụ trên client (http, ftp, dns, smtp)

• Client 2, 3: Nagios sử dụng các plugin trung gian để chạy 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 ổ đĩacứng còn trống trên client )

• Client 4: kiểm tra dịch vụ qua giao thức snmp, nagios server sẽ sử dụng plugincheck_snmp để kiểm tra các dịch vụ trên clien có hỗ trợ giao thức SNMP Rấtnhiều thiết bị mạng như router, switch, máy in có hỗ trợ giao thức SNMP

• Client5: Đây là phương pháp kiểm tra bị động Nagios không chủ động kiểmtra dịch vụ mà là client chủ động gửi kết quả kiểm tra dịch vụ về cho Nagiosthông qua plugin NSCA Phương pháp này được áp dụng nhiều trong giám sátphân tán Với các mạng có quy mô lớn, người ta có thể dùng nhiều serverNagios để giám sát từng phần của mạng Trong đó có một server Nagios trungtâm thực hiện tổng hợp kết quả từ các server Nagios con thông qua pluginNSCA

3.4 Đánh giá chương trình nagios

 Ưu điểm:

• Là phần mã nguồn mở, miễn phí

• Cung cấp giao diện đồ họa đẹp mắt, thân thiện đối với người dùng

• Tính mở rộng cao

Trang 20

• Có khả năng theo dõi định kỳ theo thời gian đã được cấu hình trước.

• Ít tốn tài nguyên hệ thống

• Có cơ chế hoạ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 100000node

• 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

3.5 Tổng quan cấu hình

3.5.1 Các tệp cấu hình chương trình

Thư mục /usr/local/nagios/ect/

- Tệp cấu hình nagios.cfg Thiết đặt những tùy chọn chung nhất của nagios, tác động đến

cách thức hoạt động của nagios Trong nagios.cfg bạn có thể khai báo đường dẫn cáctệp cấu hình còn lại, tệp log, tệp đệm hoặc bật tắt các tùy chọn cấu hình như cho phépthông báo, sử dụng lệnh ngoại trú, kiểm tra bị động, các thức log, cập nhật

- Tệp cấu hình tài nguyên resource.cfg Các tài nguyên dùng để lưu trữ các nhãn

(marco) được định nghĩa bởi người dùng, và lưu trữ thông tin nhạy cảm ( như mậtkhẩu…), ẩn với CGIs Chúng ta có thể chỉ định một hay nhiều tùy chọn tệp tài nguyên

bằng cách sử dụng chỉ thị resource_file trong tệp cấu hình chính.

- Tệp cấu hình CGI cgi.cfg Tệp cấu hình CGI chứa tập các chỉ thị ảnh hưởng đến hoath

động của CGIs và cách thức hiển thị thông tin trên giao diện web

3.5.2 Các tệp cấu hình đối tượng

Thư mục /usr/local/nagios/ect/objects

- Nơi lưu trữ các tệp cấu hình đối tượng được giám sát và quản lý trong nagios Các tệpđịnh nghĩa đối tượng được sử dụng để định nghĩa host, dịch vụ, liên hệ (contacts),nhóm liên hệ (contactgroups), lệnh Đây là nơi định nghĩa tất cả mọi thứ mà chúng tamuốn giám sát và cách mà chúng ta giám sát chúng Chúng ta có thể chỉ định một haynhiều tệp định nghĩa đối tượng bằng sử dụng các chỉ thị cfg_file và cfg_dir trong tệpcấu hình chính Các tệp cấu hình sẵn có là:

• Localhost.cfg //định nghĩa các máy linux

• Contact.cfg //định nghĩa người dùng

• Printer.cfg //định nghĩa các máy in

• Switch //định nghĩa switch

• Window.cfg //định nghĩa máy window

Trang 21

• Command.cfg //định nghĩa các lệnh

• Template.cfg //mẫu định nghĩa có sẵn

• Timeperiods.cfg //định nghĩa các chu kì thời gian

3.6 Cách thức định nghĩa đối tượng trong tệp cấu hình đối tượng

Các đối tượng (bao gồm host, dịch vụ, người liên hệ, lệnh, nhóm, chu kỳ thời gian)có thể được định nghĩa trong bất kì tệp nào có đuôi cfg và khai báo đường dẫn trongtệp cấu hình chính qua tùy chọn cfg_file Tệp template.cfg đã có sẵn những định nghĩađối tượng chuẩn, các định nghĩa đối tượng mói có thể thừa kế khuôn mẫu của địnhnghĩa chuẩn và có thể thây đổi đi một số tùy chọn cho phù hợp với từng yêu cầu sửdụng

3.6.1 Định nghĩa host

- Host là một trong những đối tượng cơ bản nhất được giám sát Đặc điểm của host là:

• Host thường là các thiết bị vật lý trên mạng như server, workstation, router,switch, printer…

• Host có địa chỉ xác định (IP hoặc MAC)

• Host thương có ít nhất một dịch vụ liên quan đến nó

• Một host có thể có mối quan hệ cha/con, phụ thuộc với host khác

- Khi định nghĩa đối tượng host ta có thể kế thừa mẫu định nghĩa host có trong tệptemplate.cfg Tuy nhiên vơi mỗi host được định nghĩa mới thì có 3 tùy chọn bắtbuộc phải khai báo cho phù hợp Đó là tên host, bí danh và địa chỉ IP của host

3.6.2 Định nghĩa dịch vụ

Định nghĩa dịch vụ dùng để khai báo dịch vụ được giám sát chạy trên host Dịch vụở đây có thể hiểu là các dịch vụ mạng thực sự như là POP, SMTP, HTTP… hay chỉ làmột số liệu của host như số lượng người dùng, ổ đĩa còn trống… các tùy chọn dướiđây là bắt buộc khi định nghĩa một dịch vụ mới

Trang 22

Khuôn dạng của một lệnh được định nghĩa:

denfine command {

command_name tên lệnh

command_line người dùng//script! Danh sách tham số

- Một lệnh được định nghĩa gồm 2 thành phần tên lệnh và nôi dung lệnh Trong đó

$ARG1$ là nhãn người dùng được định nghĩa trong tệp tài nguyên resource.cfg

$ARG1$, $ARG2$, $ARG3$ là các nhãn tham số vào của lệnh Và check_disk trongví dụ trên có thể thay thế bằng một script, file tự chạy bất kỳ Như ví dụ trên, khi cầnkiểm tra ổ đĩa cứng của một host A Lệnh này sẽ thực thi script check_disk với cáctham số đó

Trang 23

CHƯƠNG 4 CÁC DỊCH VỤ GIÁM SÁT CỦA NAGIOS

4.1 Giám sát các thiết bị mạng

4.1.1 Máy in

 Tổng quan

- Nagios sử dụng plugin check_hpjd cho việc giám sát trạng thái của máy in Plugincheck_hpjd sử dụng giao thức SNMP để xác định trạng thái của máy in

Hình 4.1: giám sát máy in

- Check_hpjd có khả năng phát 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_hpjd” đã được định nghĩa trong tệp commands.cfg Nó cho

phép bạn gọi plugin check_hpjd plugin để giám sát máy in trong mạng Thứ nữa là đã

có một mẫu định nghĩa máy in(được gọi là generic-printer) được tạo trong tệptemplates.cfg Nó cho phép bạn thêm một định nghĩa máy in mới khá đơn giản Khi

Ngày đăng: 18/04/2016, 13:19

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w