Cacti sử dụng chức năng này để triển khai các báo cáo đồ thị được tùy chỉnh trên cơ sở chuỗi thời gian dữ liệu được tập hợp từ các thiết bị có khả năng SNMP khác nhau.. Tổng quan về Cact
Trang 1Network Management Systems: Cacti
Học viên: Phạm Văn Thịnh
Lớp: K17 Giáo viên: PGS TS Nguyễn Văn Tam
Tháng 7 - 2011
1
Trang 31 Tổng quan về Cacti
Cacti là gì?
-Cacti là một công cụ vẽ đồ thị và giám sát mạng
mã nguồn mở được viết trên PHP/MySQL
-Sử dụng công cụ RRDTool để lưu trữ dữ liệu và tạo
đồ họa, tập hợp dữ liệu định kỳ qua Net-SNMP (một bộ ứng dụng để triển khai SNMP)
-Ian Berry bắt đầu phát triển Cacti vào tháng 6/2001 Đưa ra thị trường bản công khai đầu tiên (version 0.6) vào ngày 21/11/2001 Nhanh chóng được phổ biến trong cộng đồng mã nguồn mở
-Thực chất là sử dụng PHP/MySQL để phát triển giao diện cho RRDTool (Round-robin database tool)
3
Trang 41 Tổng quan về Cacti (tt)
Tại sao người quản trị hệ thống nên chọn Cacti như một công cụ giám sát mạng?
- Đầu tiên, Cacti là một công cụ mã nguồn mở
-Dễ cài đặt (không cần là một chuyên viên giỏi hoặc sử dụng nhiều thời gian để cấu hình)
- Không cần nhiều công cụ điều kiện tiên quyết
- Có một giao diện web rất mềm dẻo được xây dựng với PHP/MySQL
Trang 51 Tổng quan về Cacti (tt)
Hoạt động của Cacti
-Hoạt động của Cacti được chia thành 3 nhiệm vụ khác nhau: truy tìm
dữ liệu, lưu trữ dữ liệu và biểu diễn dữ liệu
-Truy tìm dữ liệu (Data retrieval): Cacti truy tìm dữ liệu qua poller (một
chương trình được thực hiện vào một khoảng thời gian cố định như một dịch vụ lập lịch dưới các hệ điều hành khác nhau; được thiết lập trong bộ lập lịch hệ điều hành)
Cacti sử dụng SNMP để truy tìm dữ liệu từ các thiết bị ở xa các thiết bị
có khả năng sử dụng SNMP có thể được giám sát bởi Cacti
5
Trang 61 Tổng quan về Cacti (tt)
Hoạt động của Cacti (tt)
-Lưu trữ dữ liệu (Data storage): Cacti sử dụng RRDTool để lưu trữ dữ liệu.
RRD là một hệ thống để lưu trữ và thể hiện chuỗi thời gian dữ liệu được tập hợp từ các thiết bị có khả năng SNMP khác nhau Nó hợp nhất dữ liệu lịch sử trên cơ sở các hàm hợp nhất như AVERAGE, MINIMUM, MAXIMUM… để giữ cho kích thước lưu trữ là tối thiểu nhanh chóng và dễ dàng tạo các báo cáo, đồ thị từ các tệp RRD
-Biểu diễn dữ liệu (Data presentation): Đặc trưng quan trọng nhất của RRDTool
là chức năng vẽ đồ thị xây dựng sẵn Cacti sử dụng chức năng này để triển khai các báo cáo đồ thị được tùy chỉnh trên cơ sở chuỗi thời gian dữ liệu được tập hợp từ các thiết bị
có khả năng SNMP khác nhau
Có thể vẽ một hoặc nhiều mục trên 1 đồ thị
6
Trang 71 Tổng quan về Cacti (tt)
Kiến thức cơ bản về RRDTool
-Là một hệ thống vẽ đồ thị và ghi chép dữ liệu hiệu năng cao, được thiết
kế để điều khiển chuỗi thời gian dữ liệu (băng thông mạng, nhiệt độ phòng…) và để giám sát các thiết bị như routers, UPS…
-Cho phép người quản trị ghi chép và phân tích dữ liệu được tập hợp từ tất cả các loại nguồn dữ liệu (DS: data sources); dữ liệu này có khả năng trả lời các truy vấn SNMP
-Được viết bằng ngôn ngữ C và lưu trữ dữ liệu trong các tệp rdd.
+Số lượng bản ghi trong 1 tệp rdd đơn không bao giờ tăng (các bản ghi cũ được
xóa thường xuyên).
+Các lệnh để truy cập và thao tác tệp rdd: create, update, updatev, graph…
-Một số ngôn ngữ ràng buộc cho phép sử dụng trực tiếp RRDTool từ nó: Perl, Python, tcl, PHP và Ruby Cacti là ứng dụng được viết trên PHP.
7
Trang 81 Tổng quan về Cacti (tt)
RRDTool làm việc như thế nào?
- Tuân theo một thiết kế logic để thu nhận và xử lý dữ liệu được tập hợp từ các nguồn dữ liệu (DS).
- Các bước trong quy trình logic:
+Thu nhận dữ liệu: Lưu trữ dữ liệu trong CSDL luân chuyển vòng (RRD: Round Robin Database); nhận dữ liệu ở khoảng thời gian cố định (thiết lập bởi người quản trị hệ thống sử dụng ứng dụng poller).
+Hợp nhất dữ liệu: Khi tạo 1 RRD, người quản trị có thể định nghĩa khoảng thời gian nào việc hợp nhất nên xảy ra sử dụng các hàm hợp nhất (CF: Consolidation Functions) như AVERAGE, MINIMUM, MAXIMUM…
+Lưu trữ luân chuyển vòng (RRA: Round Robin Archives) dữ liệu đã được hợp nhất: Giá trị
dữ liệu hợp nhất được lưu trữ trong RRA; giữ tệp CSDL ở kích thước không đổi phân tích và xử
lý nhanh hơn.
+Dữ liệu không biết: Khi không có dữ liệu để lưu trữ thì lưu giá trị *UNKNOWN*.
+Vẽ đồ thị: Tạo ra các báo cáo dưới dạng đồ họa và số trên dữ liệu được lưu trữ trong RRD sử dụng các hàm xử lý đồ thị xây dựng sẵn.
8
Trang 92 Sử dụng đồ thị để quản trị mạng và
thiết bị
Tạo đồ thị
-Không cần người sử dụng cấu hình nhiều (có các mẫu dựng sẵn).
- Mỗi đồ thị lưu trữ các tập tham số khác nhau để điều khiển các khía cạnh khác nhau của mỗi đồ thị.
- Tạo đồ thị trên các mẫu có sẵn và các thiết bị.
Trang 102 Sử dụng đồ thị để quản trị mạng và
thiết bị (tt)
Thêm một thiết bị (tt)
- Một form mới được mở để thêm thiết bị mới.
-Hai trường đầu tiên, Description và Hostname để cấu hình mặc định.
-Các trường Notes và Disable Device có thể bỏ qua.
- Nếu mẫu host tồn tại trong drop-down, chắc chắn phải chọn mẫu Nếu không
chắc chắn chọn mẫu nào, có thể chọn Generic SNMP-enabled host.
10
Trang 112 Sử dụng đồ thị để quản trị mạng và thiết bị (tt)
Định nghĩa các trường thiết bị
- Mọi thiết bị được thêm vào đều có giá trị và thuộc tính khác nhau.
- Bảng sau làm rõ các thuộc tính của thiết bị.
11
Description Cung cấp cho host một cái tên có nghĩa Tên này sẽ được hiện trên cột đầu tiên của bảng hiển thị thiết bị.
Hostname Tên host đầy đủ điều kiện hoặc IP Sử dụng DNS để phân giải tên host (như linuxbox1.example.com).
Host Temple Mẫu host chịu trách nhiệm cho các loại dữ liệu cần được tổng hợp từ một loại host xác định.
Notes Các chú ý bổ sung cho host, những gì riêng cho host.
Disable Host Đánh dấu vào ô này để không cho phép tất cả việc kiểm tra đối với thiết bị.
Downed Device Detection
NONE: Không cho phép phát hiện thiết bị không hoạt động.
Ping và SNMP: Cho phép kiểm tra cả hai.
SNMP: Thực hiện kiểm tra SNMP.
Ping: Sử dụng phương thức ping.
Ping Method ICMP Ping: Thực hiện kiểm tra ICMP ICMP trên Linux/Unix yêu cầu quyền root.TCP Ping: Thực hiện kiểm tra TCP.
UDP Ping: Thực hiện kiểm tra UDP.
Ping Port Tùy chọn này chỉ có cho TCP và UDP Ping Định nghĩa số cổng ở đây và bảo đảm rằng firewall không block cổng đó.
Ping Timeout Value Giá trị này được đo bằng ms.
Ping Retry Count Định nghĩa mất bao lâu Cacti sẽ ping một host trước khi thất bại.
SNMP Version Version1: được hỗ trợ bởi hầu hết các thiết bị cho phép SNMP; không hỗ trợ bộ đếm 64 bit.Version 2: Còn được gọi là SNMPv2c Được hỗ trợ bởi hầu hết các thiết bị cho phép SNMP.
Version 3: hỗ trợ xác thực và mã hóa
……….
Trang 122 Sử dụng đồ thị để quản trị mạng và
thiết bị (tt)
Định nghĩa các trường thiết bị (tt)
- Sau khi tạo thiết bị, Cacti chuyển tới form tương tự với thông tin bổ sung Nếu thành công, màn hình thông tin thành công sẽ hiển thị.
12
Trang 132 Sử dụng đồ thị để quản trị mạng và
thiết bị (tt)
Định nghĩa các trường thiết bị (tt)
-Ở cuối của hình trước, có 2 tùy chọn: Associated Graph Temples và Associated
Data Queries.
- Nếu chọn mẫu host, có thể nhìn thấy một số mục trong cả 2 phần Nếu không chọn thì không nhìn thấy gì
-Để tạo đồ thị, tốt nhất là có tối thiểu 1 mục trong Associated Graph Temples và
Associated Data Queries.
13
Trang 142 Sử dụng đồ thị để quản trị mạng và thiết bị (tt)
Tạo một đồ thị cho thiết bị
- Có thể tạo từ 2 vị trí khác nhau:
1 Chọn New Graphs ở bên dưới Create.
2 Nếu vẫn ở trong chế độ chỉnh sửa thiết bị, chọn Create Graph for this Host.
14
Trang 152 Sử dụng đồ thị để quản trị mạng và
thiết bị (tt)
Tạo một đồ thị cho thiết bị (tt)
- Sau khi chọn, có thể thấy 1 form như sau (các tùy chọn có thể khác nhau dựa trên việc chọn thiết bị hoặc host nào từ drop-down box):
- Cần phải check các tùy chọn trong phần Graph Templates và Data Query; sau đó kích chuột
vào nút Create.
-Form khác nữa hiện ra để có thể chọn Legend Color và một số tùy chọn bổ sung Nhập xong chọn Create lần nữa để tạo đồ thị Sau đó, Cacti sẽ lập lịch việc tạo đồ thị cho thiết bị.
15
Trang 162 Sử dụng đồ thị để quản trị mạng và thiết bị (tt)
Tổ chức đồ thị
- Có thể được tổ chức dưới dạng cấu trúc cây phân cấp
- Mỗi cây đồ thị chứa nhiều nhánh hoặc không chứa nhánh nào.
- Nhánh hoặc chứa các host hoặc chứa các đồ thị riêng lẻ.
- Thậm chí mỗi nút của cây có thể có nhiều nhánh.
Có thể tổ chức đồ thị theo chức năng.
-Có thể truy nhập Graph Trees bên dưới Management.
-Trong trang Graph Trees, kích chuột vào nút add cho cây đồ thị mới.
- Nhập tên và chọn kiểu sắp xếp từ drop-down box.
16
Trang 172 Sử dụng đồ thị để quản trị mạng và
thiết bị (tt)
Tổ chức đồ thị (tt)
- Có 4 loại sắp xếp trong drop-down box:
+Manual Ordering: Mỗi đồ thị/ thiết bị được thêm có thể được sắp xếp lại thứ tự trong cây/
nhánh.
+Alphabetic Ordering: Mỗi đồ thị/ thiết bị được sắp xếp theo thứ tự abc.
+Numeric Ordering: Mỗi đồ thị/ thiết bị được sắp xếp bằng số.
+Natural Ordering: Sắp xếp theo kiểu vừa chữ vừa số đưa vào trong việc tăng dần số lượng
tài khoản.
Có thể chọn sắp xếp phù hợp với yêu cầu.
-Ví dụ sử dụng tên cây là LinuxBox 192.168.59.128 và kiểu sắp xếp Manual
Ordering.
17
Trang 182 Sử dụng đồ thị để quản trị mạng và
thiết bị (tt)
Tổ chức đồ thị (tt)
-Kích chuột trên Graph Trees bên dưới Management, có thể nhìn thấy LinuxBox
192.168.59.128 Kích chuột trên LinuxBox 192.168.59.128 để thêm đồ thị tới cây.
-Ấn Add để thêm host, header và đồ thị tới nút
18
Trang 192 Sử dụng đồ thị để quản trị mạng và
thiết bị (tt)
Tổ chức đồ thị (tt)
-Trong tùy chọn Tree Item Type có thể chọn loại mục của cây-host, header hoặc đồ thị.
-Thêm 2 header Server Stuff và Server Traffic Khi chạy sẽ thêm đồ thị tới cả 2 header.
-Kích chuột vào Add và màn hình sau xuất hiện.
19
Trang 202 Sử dụng đồ thị để quản trị mạng và
thiết bị (tt)
Tổ chức đồ thị (tt)
+Trong drop-down box Parent Item, chọn Server Stuff Trong Tree Item Type chọn Graph Trong
Graph chọn Cactibox-Disk Space- /dev/sda1 Trong Round Robin Archive chọn Hourly (1 Minute Average).
-Thêm các đồ thị bên dưới Server Stuff: Load Average, Logged in Users, Memory Usage,
Processes.
-Cuối cùng, thêm Traffic bên dưới Server Traffic Cây đồ thị LinuxBox 192.168.59.128 như
hình dưới.
20
Trang 212 Sử dụng đồ thị để quản trị mạng và thiết bị (tt)
Tổ chức đồ thị (tt)
-Xem đồ thị bằng cách chọn tab Graphs trên đỉnh
21
Trang 22- Là 1 phần của bộ giao thức TCP/IP.
- Giúp người quản trị mạng quản lý hiệu năng mạng, phát hiện và giải quyết các vấn đề
về mạng, lập kế hoạch phát triển mạng.
- Có 3 phiên bản: SNMPv1, SNMPv2 / SNMPv2c và SNMPv3.
-SNMP làm việc với Cacti như thế nào phụ thuộc phiên bản nào được chọn.
+ V1 giới hạn trên hầu hết các thiết bị nên tránh trừ khi không có lựa chọn nào khác.
+ Nếu muốn truy nhập tới tài nguyên nhiều hơn có thể chọn V2.
+ Chọn V3 cho việc triển khai bảo mật và xác thực.
- Cacti phát triển V3 đầy đủ từ phiên bản 0.8.7 trở đi.
- Nhóm phát triển Cacti khuyến nghị phiên bản 2c dễ sử dụng và hỗ trợ toàn bộ.
22
Trang 233 Tạo và sử dụng mẫu
Mỗi khi thêm thiết bị hoặc tạo đồ thị mới phải nhập các tham số
Nhập tham số bằng tay tuy linh hoạt nhưng không thân thiện với người dùng (luôn có khả năng xảy ra lỗi) Sử dụng mẫu có thể dễ dàng khắc phục được vấn đề này.
Trong Cacti, có thể:
- Sử dụng hoặc thêm các mẫu.
- Tạo các mẫu dùng riêng theo ý muốn.
- Nhập (import) các mẫu: cho phép chia sẻ các mẫu khác nhau giữa những người
sử dụng Cacti.
- Xuất (export) các mẫu: có thể xuất bất kỳ mẫu nào bên trong Cacti (đồ thị, dữ liệu, host, truy vấn dữ liệu).
Lưu ý: Chỉ có thể nhập các mẫu được tạo trên hệ thống có cùng phiên
bản hoặc phiên bản trước của Cacti
23
Trang 244 Quản trị người dùng
Cơ chế quản trị người dùng của Cacti cung cấp các chức năng để thêm, sửa và xóa người dùng (người sẽ có thể tạo hoặc xem đồ thị, truy nhập các khu vực khác nhau của Cacti)
Cung cấp 2 mức kiểm soát quyền: quyền lĩnh vực và quyền đồ thị
Mặc định có 2 người dùng: admin (có đầy đủ quyền) và guest (chỉ xem đồ thị và là người dùng không được xác thực) Mặc định từ version 0.8.7 trờ đi, guest
bị vô hiệu hóa (disabled).
Thêm người dùng: khá dễ dàng Tuy nhiên, Cacti không hỗ trợ nhóm để
cập nhật nhiều người dùng có thể sử dụng Batch Copy
Sửa người dùng: sửa chi tiết người dùng và các quyền.
Quyền lĩnh vực (Realm permissions): quản lý phần nào người dùng sẽ
truy nhập
Quyền đồ thị (Graph permissions): quản lý đồ thị, thiết bị, mẫu và cây nào
người dùng có thể xem
24
Trang 254 Quản trị người dùng (tt)
Các tùy chọn quản trị người dùng khác:
-Xóa người dùng: Xóa 1 người dùng đơn lẻ hoặc một số người dùng được chọn (Xóa tài
khoản và mọi cấu hình được lưu trữ cho người dùng).
-Sao chép người dùng: Khi tạo người dùng có tập đồ thị, thiết bị… phức tạp và muốn
người dùng mới có quyền giống như vậy nhưng không muốn thực hiện lại quá trình thiết lập các
quyền này, có thể sử dụng Copy User.
-Sao chép theo khối: Xét ví dụ người dùng westwing truy nhập để xem và sửa một số đồ thị
trong hệ thống Cacti Người quản trị muốn cung cấp quyền tương tự tới UserB và UserC (2 người dùng này đã tồn tại trên hệ thống) Để thực hiện, chọn UserB và UserC; sau đó chọn
Batch Copy; trong ví dụ này chọn Template User là westwing
25
Trang 26-Cacti sử dụng Net-SNMP để trích rút dữ liệu thô từ các thiết bị hỗ trợ
SNMP; sau đó sử dụng RRDTool để tạo đồ họa để chạy Cacti, hệ thống quản lý cần chạy Net-SNMP.
-Bộ ứng dụng Net-SNMP bao gồm:
+ Các ứng dụng dòng lệnh.
+ Một thư viện client chung.
+ Một trình duyệt MIB đồ họa sử dụng Perl/TK.
+ Một ứng dụng daemon dành cho việc nhận các cảnh báo SNMP (snmptrapd).
+ Một agent SNMP có khả năng mở rộng để đáp ứng quản trị các truy vấn (snmpd).
+ Các module Perl, C, Python và tập các API để xây dựng các ứng dụng ngoài.
26
Trang 276 Quản trị dữ liệu
-Để tạo đồ thị, Cacti cần tập hợp dữ liệu Dữ liệu được tập hợp bằng 2 phương thức:
+Phương thức nhập dữ liệu: là phương thức cơ bản để tập hợp dữ liệu
cho việc tạo đồ thị
+Phương thức truy vấn dữ liệu: cung cấp phương pháp dễ dàng để truy
vấn hoặc liệt kê dữ liệu dựa trên chỉ mục (index) Phổ biến nhất là trích rút danh sách giao diện mạng qua SNMP
-Mặc định, Cacti có kèm theo một số phương thức nhập dữ liệu và truy vấn dữ liệu.
-Có thể tạo ra các phương thức nhập dữ liệu và truy vấn dữ liệu mới.
27
Trang 297 Quản trị Cacti (tt)
•Backup
-Quá trình backup rất quan trọng đối với bất cứ sản phẩm phần mềm nào
-Quá trình backup của Cacti có 02 phần: backup tệp và backup cơ sở dữ liệu
+Backup tệp: backup đầy đủ (cả thư mục cacti) hoặc chỉ backup các tệp quan trọng (các
thư mục rra, resources, scripts).
+Backup cơ sở dữ liêu: Cacti hỗ trợ MySQL như một máy chủ CSDL Để backup dữ
liệu MySQL sử dụng lệnh mysqldump đi kèm với MySQL client.
•Khôi phục từ backup
-Quá trình khôi phục cũng có 02 phần: tệp và cơ sở dữ liệu
-Trước khi khôi phục cần bỏ các tệp Cacti cũ
29
Trang 30Tài liệu tham khảo
1.Dinangkur Kundu, S M Ibrahim Lavlu, Cacti 0.8
Network Monitoring, Packt Publishing, 2009.
2.Thomas Urban, Cacti 0.8 Beginner’s Guide, Packt
Publishing, 2011.
30