Cacti简介与使用

简介

cacti是用php写的,一个开源的网络监控工具,可以用于监控网络流量,并用图表化的方式呈现。

cacti将数据存储在MySQL里,同时还使用了RRDTool(Round Robin Database)即环状数据库。

cacti主要通过SNMP服务获取数据,用RRDTool存储数据和更新SNMP获取到的数据,需要时查看时可以查看RRDTool生成的图。MySQL则用于存储cacti用户信息模板等。

cacti的工作流程和架构如下:

image-20240422160421832

环状数据库

RRDTool就是环状数据库,形象的理解为数据库存储在一个环中,环是头尾相接的。写数据沿着环以此写,当写到最开始的数据时,直接覆盖,相当于开始了第二圈的写环操作。

通过docker-compose启动

docker-compose.yml文件内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
version: '3.5'
services:


cacti:
image: "smcline06/cacti"
container_name: cacti
domainname: example.com
hostname: cacti
ports:
- "80:80"
- "443:443"
environment:
- DB_NAME=cacti_master
- DB_USER=user
- DB_PASS=admin
- DB_HOST=db
- DB_PORT=3306
- DB_ROOT_PASS=admin
- INITIALIZE_DB=1
- TZ=America/Los_Angeles
volumes:
- cacti-data:/cacti
- cacti-spine:/spine
- cacti-backups:/backups
links:
- db


db:
image: "mariadb:10.3"
container_name: cacti_db
domainname: example.com
hostname: db
ports:
- "3306:3306"
command:
- mysqld
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
- --max_connections=200
- --max_heap_table_size=128M
- --max_allowed_packet=32M
- --tmp_table_size=128M
- --join_buffer_size=128M
- --innodb_buffer_pool_size=1G
- --innodb_doublewrite=ON
- --innodb_flush_log_at_timeout=3
- --innodb_read_io_threads=32
- --innodb_write_io_threads=16
- --innodb_buffer_pool_instances=9
- --innodb_file_format=Barracuda
- --innodb_large_prefix=1
- --innodb_io_capacity=5000
- --innodb_io_capacity_max=10000
environment:
- MYSQL_ROOT_PASSWORD=admin
- TZ=America/Los_Angeles
volumes:
- cacti-db:/var/lib/mysql

volumes:
cacti-db:
cacti-data:
cacti-spine:
cacti-backups:

登陆 http://localhost/cacti/auth_changepassword.php?ref=http://10.251.29.251/cacti/install/install.php,初次登陆时,用户名和密码都是admin

然后按照引导执行安装操作,安装完毕后页面如下:

image-20240422155442933

可视化机器的进出流量

如果想要可视化某一台机器的一些指标,首先需要确认被监控的机器是否安装了snmp服务,没有则需要进行安装。确保snmp在该机器上运行。

要想查看某一台机器的指标情况,首先需要创建新设备:

image-20240422175713376

输入主机名和描述,设备模板选择 Net-SNMP Device

image-20240422175815084

然后点击 为设备创建图形:

image-20240422175916660

因为我想监控进出网络数据包变化,拉到下面可以看到网卡列表。选择想要监控的网卡,图形类型选择 In/Out Bits:

image-20240422180044991

点击确认创建完毕后点击上方的 图形 按钮:

image-20240422180136427

可以查看流量变化(图上这个是我之前创建的,创建了好几个)。


》 我测试用的 10.251.29.251 这一台,提交时记得删除这一行文本。

密码我修改成了Ncl&123admin


Cacti简介与使用
https://nrbackback.github.io/2023/01/01/Cacti简介与使用/
作者
John Doe
发布于
2023年1月1日
许可协议