Cho cuộc sống đơn giản hơn
CÔNG TY CỔ PHẦN GIẢI PHÁP THANH TOÁN VN-VNPAY
Toà nhà 22 Phố Láng Hạ, Quận Đống Đa, TP Hà Nội
Điện thoại: (04)776 4668 Fax: (04) 776 4666
ĐÁNH GIÁ HỆ THỐNG GIÁM SÁT NAGIOS
1. Hiện trạng hệ thống giám sát & cảnh báo
Hệ thống cảnh báo giám sát được chia làm 2 phần:
- Giám sát hệ thống hạ tầng: Đường truyền, thiết bị, máy chủ, OS …
- Giám sát ứng dụng dịch vụ và Database
Giám sát phần hạ tầng hiện nay đang dùng 2 công cụ là Solarwinds Orion (Network
Performance Monitor) và Paessler PRTG Network Monitor – cả hai đều là phiên bản
crack.
Giám sát phần ứng dụng dịch vụ hiện nay được thực hiện thủ công, dùng các công cụ
đơn giản như định kỳ mở log file kiểm tra nội dung, sử dụng web tra cứu để kiểm tra
giao dịch lỗi, kiểm tra các cổng kết nối bằng cách truy cập vào (ping, telnet),… Database
thì chưa có giám sát chi tiết các thông số hoạt động. Nhóm vận hành định kỳ thực hiện
các thao tác kiểm tra với tất cả các ứng dụng dịch vụ hết khoảng 30 phút. Và việc xác
định vấn đề dựa vào kiến thức, kinh nghiệm cá nhân.
Cách thực hiện như vậy chứa đựng nhiều sai sót, rủi ro và bất cập như phát hiện thụ
động sự cố, phức tạp trong việc xác định vấn đề. Khi có sự cố thì quá trình kiểm tra bị
dừng lại không kiểm tra được tiếp vì phải xử lý sự cố đó.
Hiện nay cũng không có báo cáo chất lượng dịch vụ định kỳ.
2. Đánh giá một số giải pháp giám sát
a. Monit
Monit không đơn giản chỉ là công cụ giám sát máy chủ của bạn, nó còn hỗ trợ xử lý
các sự cố bằng cách được định nghĩa trước cách xử lý đối với từng trường hợp nhất
định. Ví dụ, nếu máy chủ database của bạn bị crashes, Monit có thể tự động khởi
động lại dịch vụ database nếu hành động này là cách thức xử lý mong muốn.
b. Ganglia
Phần mềm Ganglia kiểm tra việc hoạt động của cụm cluster có tốt hay không, và đưa
ra kết quả overview về cụm cluster đó.
c. Munin
Phần mềm Munin giám sát các tham số liên quan đến hiệu năng hệ thống, đặc biệt
có thể được hiển thị dưới dạng đồ thị. Dữ liệu đồ thị này có thể hiển thị dưới dạng
thống kê theo ngày, tuần, tháng, năm. Công cụ giám sát được các tài nguyên hệ
thống như memory, disk space, CPU cho đến các ứng dụng như MySQL, Apache,
Squid.
d. Cacti
Cho cuộc sống đơn giản hơn
e.
f.
g.
h.
i.
CÔNG TY CỔ PHẦN GIẢI PHÁP THANH TOÁN VN-VNPAY
Toà nhà 22 Phố Láng Hạ, Quận Đống Đa, TP Hà Nội
Điện thoại: (04)776 4668 Fax: (04) 776 4666
Phần mềm Cacti có nhiều điểm rất giống với Munin. Điểm khác nhau là ở chỗ Cacti
cho phép định dạng lại các dữ liệu đồ thị và xem dữ liệu trong 1 đoạn thời gian tùy ý.
Trong khi Munin, các dữ liệu đồ thị chỉ được hiển thị dưới dạng theo ngày, tuần,
tháng, hoặc năm. Cacti cũng có thể đưa ra tổng hợp dữ liệu dưới dạng 2 giờ gần
nhất, 4 giờ gần nhất, 6 tháng gần đây nhất, … có thể chọn và zoom vào vùng dữ liệu
trong đồ thị muốn xem.
Nagios
Nagios được xem như là một phần mềm “tiêu chuẩn” trong việc giám sát hạ tầng
CNTT. Nagios hơi “khó” trong việc cài đặt và cấu hình, tuy nhiên nó rất nhiều tính
năng mà các phần mềm khác không thể có được, kể cả các phần mềm thương mại
nổi tiếng dành cho các quản trị viên. Nagios hỗ trợ giám sát nhiều host, service khác
nhau cùng lúc và gởi cảnh báo thông qua email, hoặc SMS. Giống như Monit, nó có
thể cấu hình để tự động đưa ra các hành động đáp ứng (được định nghĩa trước) với
các sự cố xảy ra.
Zabbix
Zabbix là một công cụ có khả năng giám sát hiệu năng máy chủ, các ứng dụng web,
CSDL, và các thiết bị mạng. Zabbix được thiết kế linh động cho nhiều môi trường
khác nhau, từ nhỏ đến lớn. Zabbix hoàn toàn không có phiên bản thương mại.
Observium
Observium hỗ trợ tự động phát hiện các thiết bị mạng trong hệ thống, tìm kiếm các
thiết bị bạn quan tâm muốn giám sát. Tính năng này có thể so sánh với việc bằng
cách nào phần mềm/phần cứng wifi của laptop có thể tìm ra các tín hiệu wifi xung
quanh. Observium cung cấp các đồ thị chi tiết, có thể cài đặt song song với Nagios.
Zenoss
Zenoss là một phiên bản nguồn mở miễn phí của công cụ giám sát máy chủ thương
mại Zenoss Enterprise, được viết bởi ngôn ngữ Python. Công cụ này hỗ trợ định
dạng các plugin của Nagios, vì vậy rất nhiều plugins của Nagios có thể được sử dụng
bởi Zenoss. Một trong những điểm mạnh của Zenoss là đầy đủ tính năng nhưng giao
diện người dùng quản trị đơn giản.
Collectd
Collectd là phần mềm tương tự như Munin và Cacti ở chỗ dữ liệu được thu thập và
hiển thị ở dạng đồ thị. Phần mềm này được thiết kế tiêu hao ít tài nguyên, đặc biệt
hữu hiệu cho các hệ thống low-end và hệ thống nhúng (embedded systems). Nó có
thể thu thập dữ liệu mỗi 10s mà không làm trở ngại đến các việc xử lý các tiến trình
xử lý của máy chủ. Các extension của phần mềm này có thể viết bằng C, Perl, hoặc
Java.
Cho cuộc sống đơn giản hơn
j.
CÔNG TY CỔ PHẦN GIẢI PHÁP THANH TOÁN VN-VNPAY
Toà nhà 22 Phố Láng Hạ, Quận Đống Đa, TP Hà Nội
Điện thoại: (04)776 4668 Fax: (04) 776 4666
Argus
Argus tập trung vào việc giám sát các thiết bị mạng, hỗ trợ cả Ipv4 và Ipv6. Phần
mềm này có một quy trình cảnh báo thú vị: sau khi cảnh báo mà sự cố vẫn không
được giải quyết trong một khoảng thời gian nhất định (ví dụ network administrator
đang ở nhà), cảnh báo này sẽ được gởi đến cho một người khác.
3. Đánh giá hệ thống Nagios
Không giống như nhiều công cụ giám sát khác, Nagios không bao gồm bất kỳ cơ chế nội
bộ nào để kiểm tra tình trạng của các máy chủ và các dịch vụ trên mạng. Thay vào đó,
Nagios dựa trên các chương trình bên ngoài (gọi là plugin) để làm tất cả những công việc
đó. Các plugin là các chương trình được viết bằng C/C++, Perl, Ruby, Python, PHP, C#,
Java ở dạng shell scripts hay đã biên dịch ra file thực thi. Như vậy tuỳ theo việc cần giám
sát đối tượng nào thì ta sẽ viết một plugin để thực hiện thu thập thông tin. Hiện tại có
thể tham khảo cộng đồng mã nguồn mở hàng trăm ngàn người phát triển và hỗ trợ
plugin cho Nagios.
Có khả năng kết hợp với nhiều công cụ khác để thực hiện các giải pháp tổng thể như:
- Giải pháp phòng chống tấn công và xâm nhập an ninh mạng triển khai Nagios và
ipTables
- Giải pháp phát hiện và ngăn chặn giao dịch giả mạo.
- Giải pháp tự động chuyển dịch vụ sang hệ thống dự phòng khi hệ thống chính lỗi
- …
Nagios hiện đang được nhiều
các tổ chức tài chính ngân hàng
sử dụng, những đơn vị có hệ
thống CNTT lớn.
Liên tục từ các năm 2006 đến
2014 Nagios được các diễn
đàn, tạp chí CNTT lớn
(LinuxQuestions.org,
LinuxJournal.com,
SourceForge.net,
InfoWorld.com,
InformationWeek.com ) bình
Figure 1: Nguồn />chọn là Ứng dụng giám sát của
năm, Ứng dụng giám sát tốt nhất.
Cho cuộc sống đơn giản hơn
CÔNG TY CỔ PHẦN GIẢI PHÁP THANH TOÁN VN-VNPAY
Toà nhà 22 Phố Láng Hạ, Quận Đống Đa, TP Hà Nội
Điện thoại: (04)776 4668 Fax: (04) 776 4666
4. Đề xuất triển khai hệ thống Nagios
Được sự chỉ đạo của BĐH Khối và sau thời gian 2 tháng nghiên cứu và triển khai thử
nghiệm trên một số Server và ứng dụng thực tế, Tôi đánh giá hệ thống Nagios hoàn toàn
có thể đáp ứng được nhu cầu giám sát và cảnh báo hệ thống ứng dụng, dịch vụ hiện tại
của công ty với các ưu điểm như:
Cách thức giám sát đa dạng đáp ứng hầu hết nhu cầu
Cơ chế xác định vấn đề tốt: State, State type, Flapping
Cơ chế cảnh báo thông minh: Contact; Timeperiod; Schedule Downtime;
Response; Escalation - cảnh báo theo cấp độ; Parent; Dependencies
Tuỳ biến plugin để giám sát bất kỳ loại ứng dụng dịch vụ gì kể cả các ứng dụng
private
Như vậy với việc triển khai Nagios để giám sát và cảnh báo hoạt động của hệ thống ứng
dụng và dịch vụ sẽ mang lại các lợi ích:
Phát hiện ra sự cố sớm nhất
Xác định được vấn đề một cách nhanh nhất
Báo cáo giám sát chất lượng định kỳ
5. Kế hoạch triển khai
Bước đầu triển khai giám sát các ứng dụng dịch vụ và Database.
- Giám sát Log file ứng dụng: Telcos, Banks
o Counter được số lượng giao dịch (thành công, không thành công, timeout)
theo phút: thể hiện theo biểu đồ realtime, phát hiện ngay lập tức khi số
lượng giao dịch thay đổi tăng/giảm đột biến và đưa ra cảnh báo
o Phát hiện các log bất thường như mất kết nối, lỗi dịch vụ
o Template đăng ký giám sát & cảnh báo mẫu 1 (cuối file)
- Giám sát file CDR
o Giám sát việc xuất và đấy file CDR sang Telco, cảnh báo khi có bất thường
o Template đăng ký giám sát & cảnh báo mẫu 2 (cuối file)
- Giám sát cổng dịch vụ của đối tác cung cấp cho VNPAY
o Kiểm tra các URL WebService/API để đảm bảo các URL đó còn response.
o Kiểm tra các port TCP để đảm bảo khả năng dịch vụ đối tác còn hoạt động.
o Kịp thời nhận biết và thông báo đối tác xử lý
- Giám sát Database
o Giám sát các thông số hoạt động của Database: Connected User, Connection
Time, Session Usage, Datafiles I/O traffic, Tablespace, Sql Runtime… và cảnh
báo khi vượt ngưỡng xác định.
Cho cuộc sống đơn giản hơn
-
CÔNG TY CỔ PHẦN GIẢI PHÁP THANH TOÁN VN-VNPAY
Toà nhà 22 Phố Láng Hạ, Quận Đống Đa, TP Hà Nội
Điện thoại: (04)776 4668 Fax: (04) 776 4666
o Template đăng ký giám sát & cảnh báo mẫu 3 (cuối file)
Đưa ra báo cáo định kỳ về chất lượng dịch vụ (SLA)
o Availability – Mức độ sẵn sàng của dịch vụ
o Báo cáo SLA
o Capacity Planning
o Báo cáo trạng thái dịch vụ 24h qua
o Thống kê các cảnh báo 24h qua
6. Một số biểu đồ thực tế
Các biểu đồ realtime có thể show trên màn hình TV để theo dõi.
Figure 2: Dashboard
Cho cuộc sống đơn giản hơn
CÔNG TY CỔ PHẦN GIẢI PHÁP THANH TOÁN VN-VNPAY
Toà nhà 22 Phố Láng Hạ, Quận Đống Đa, TP Hà Nội
Điện thoại: (04)776 4668 Fax: (04) 776 4666
Figure 3: Biểu đồ realtime giao dịch Topup
Figure 4: Biểu đồ realtime giao dịch VinaphoneTopup successed/failed
Cho cuộc sống đơn giản hơn
CÔNG TY CỔ PHẦN GIẢI PHÁP THANH TOÁN VN-VNPAY
Toà nhà 22 Phố Láng Hạ, Quận Đống Đa, TP Hà Nội
Điện thoại: (04)776 4668 Fax: (04) 776 4666
Figure 5: Biểu đồ phát hiện dấu hiệu warning trong log file
Figure 6: Số lượng mail gửi/nhận trên server mail vnpay
Cho cuộc sống đơn giản hơn
CÔNG TY CỔ PHẦN GIẢI PHÁP THANH TOÁN VN-VNPAY
Toà nhà 22 Phố Láng Hạ, Quận Đống Đa, TP Hà Nội
Điện thoại: (04)776 4668 Fax: (04) 776 4666
Figure 7: Biểu đồ nhiệt độ phòng máy
Figure 8: Điện áp Vào/Ra của UPS
Cho cuộc sống đơn giản hơn
CÔNG TY CỔ PHẦN GIẢI PHÁP THANH TOÁN VN-VNPAY
Toà nhà 22 Phố Láng Hạ, Quận Đống Đa, TP Hà Nội
Điện thoại: (04)776 4668 Fax: (04) 776 4666
TEMPLATE MẪU 1
Giám sát & cảnh báo ứng dụng (Logfile)
STT
1
2
3
4
5
6
7
8
9
10
11
12
13
Tên
HOST
OS
Tên dịch vụ
Đối tác
Logfile
Cổng kết nối đối tác
Mẫu log giao dịch thành công
x
Mẫu log gdịch không thành công
y
Mẫu log lỗi dịch vụ
z
Contacts
Mô tả
IP or Hostname
Hệ điều hành
Tên đối tác kết nối
Đường dẫn log file local
URL hoặc TCP(IP:Port)
Cảnh báo khi số giao dịch thành công < x
Cảnh báo khi số giao dịch không thành công > y
Cảnh báo khi số lỗi > z
Contact nhận cảnh bảo (email;mobile)
TEMPLATE MẪU 2
Giám sát & cảnh báo gửi file CDR
STT
1
2
3
4
5
6
7
8
Tên
HOST
OS
Tên Telco
Thư mục Outbox
t1
Thư mục Archive
t1
Contacts
Mô tả
IP or Hostname
Hệ điều hành
Thư mục file CDR chờ gửi
Cảnh báo khi thời gian từ khi xuất file đến hiên tại > t1
Thư mục lưu trữ file CDR
Số lượng file trong t1 phút phải có; cảnh báo khi it hơn
Contact nhận cảnh bảo (email;mobile)
TEMPLATE MẪU 3
Giám sát & cảnh báo Database
STT
1
2
3
4
5
6
Tên
HOST
OS
Database
Username/password
Instance/ServiceName
Contacts
Mô tả
IP or Hostname
Hệ điều hành
Oracle; MsSQL;…
Tài khoản để giám sát DB
Contact nhận cảnh bảo (email;mobile)