安装grafana和插件
配置zabbix数据源
导入模版
查看数据
1.安装grafana
wget https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm/Packages/grafana-10.0.0-1.x86_64.rpm
[root@rocky8 apps]# yum install grafana-10.0.0-1.x86_64.rpm
[root@rocky8 apps]# systemctl start grafana-server.service
修改为中文
[root@rocky8 apps]# vi /etc/grafana/grafana.ini
default_language = zh-Hans
[root@rocky8 apps]# systemctl restart grafana-server.service
访问
http://192.168.1.250:3000/
列出插件版本
[root@rocky8 apps]# grafana-cli plugins list-versions alexanderzobnin-zabbix-app
4.4.1
4.4.0
安装插件
[root@rocky8 apps]# grafana-cli plugins install alexanderzobnin-zabbix-app 4.4.1
重启
systemctl restart grafana-server.service
安装插件的目录
ll /var/lib/grafana/plugins/alexanderzobnin-zabbix-app/
开启zabbix插件
添加数据源
在granfana上添加zabbix的解析 192.168.1.150 zabbix.luo.com
http://zabbix.luo.com/api_jsonrpc.php #zabbix是通过nginx安装的不用加zabbix
填写zabbix用户名密码,测试成功
Admin
zabbix
2.导入模版
导入官网的其它 Grafana 模板
https://grafana.com/grafana/dashboards
模板ID 5363
自定义面板
自定义cpu时间
选择仪表盘保存的文件夹
自定义重cpu时间
自定义内存
选择zabbix server ,主机等,选择饼图
命名标题
标签选择
显示百分比和值
自定义变量
组
host
保存
编辑仪表板,group改为 g r o u p , h o s t 改为 group,host 改为 group,host改为host保存,就可以选择组和主机查看
查看
导出
zabbix优化
当遇到问题时在优化,不要一上来就优化,可能导致启不来
优化zabbix缓存
CacheSize=128M#调大
修改zabbix进程导致zabbix一直重启
StartDBSyncers=400 #启动多少个线程和数据库连接
StartPollersUnreachable=1000 #用于设置当Zabbix服务器无法连接到被监控主机时,启动的不可达性轮询的数量。
进程加大,可能会导致数据库连接过多,超过最大值,导致Zabbix 无法启动,解决方案,加大数据库的连接数
#注意:如果无法启动,可能是数据库连接数不足
[root@zabbix-server ~]#tail /var/log/zabbix/zabbix_server.log
1367396:20230906:222534.347 [Z3001] connection to database ‘zabbix’ failed: [1040] Too many connections
1367396:20230906:222534.347 Cannot connect to the database. Exiting…
1367399:20230906:222534.350 server #189 started [trapper #4]
1367068:20230906:222534.353 HA manager has been paused
1367400:20230906:222534.354 server #190 started [trapper #5]
1367398:20230906:222534.358 [Z3001] connection to database ‘zabbix’ failed: [1040] Too many connections
查看数据库连接
mysql> show status like ‘Threads%’;
当zabbix进程过多,mysql默认连接数151,修改mysql数据库连接数
root@server02:~# vi /etc/mysql/mysql.conf.d/mysqld.cnf
max_connections = 1000
查看修改后的值
ysql> select @@max_connections;
±------------------+
| @@max_connections |
±------------------+
| 1000 |
±------------------+
1 row in set (0.00 sec)
修改数据库参数后数据库变为只读
1372996:20230906:223235.053 [Z3005] query failed: [1290] The MySQL server is running with the --read-only option so it cannot execute this statement [select ha_nodeid,name,status,lastaccess,address,port,ha_sessionid from ha_node order by ha_nodeid for update]
mysql> show global variables like '%read_only%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| innodb_read_only | OFF |
| read_only | ON |
| super_read_only | OFF |
| transaction_read_only | OFF |
+-----------------------+-------+
4 rows in set (0.00 sec)mysql> set global read_only = 0;
修改mysql配置文件添加
read_only = 0打开的文件数太多,优化参考https://www.programminghunter.com/article/88832382383/
zabbix_server [1374128]: failed to open log file: [24] Too many open files
zabbix_server [1374128]: failed to write [cannot accept incoming IPC connection: [24] Too many open files] into log file
1374143:20230906:223937.970 executing housekeeperzabbix不能重启 pkill -9 zabbix_serverroot@server02:~# lsof -u zabbix|wc -l
90537cat vim /etc/security/limits.conf
zabbix soft nofile 1024000
zabbix hard nofile 1024000
zabbix soft soft 1024000
zabbix hard soft 1024000
* soft nofile 655350
* hard nofile 655350
* soft nproc 655350
* hard nproc 655350 `/etc/systemd/system.conf` 和 `/etc/systemd/user.conf` 是 systemd 服务管理器的配置文件。`DefaultLimitCORE=infinity` 设置了进程的核心文件大小限制为无限制,即不限制核心文件大小。`DefaultLimitNOFILE=100000` 设置了进程的文件描述符限制为 100,000,表示允许每个进程打开的最大文件数为 100,000。`DefaultLimitNPROC=100000` 设置了进程的最大进程数限制为 100,000,表示允许系统上同时运行的最大进程数为 100,000。这些配置项可以用于调整系统中进程的资源限制,以满足特定应用程序的需求。
`/etc/security/limits.conf` 文件是 Linux 系统中影响用户资源限制的配置文件,而 `/etc/systemd/system.conf` 和 `/etc/systemd/user.conf` 是 systemd 服务管理器的全局配置文件。区别包括:1. 作用范围:`/etc/security/limits.conf` 是针对用户级别的配置,可以设置单个用户或用户组的资源限制;而 `/etc/systemd/system.conf` 和 `/etc/systemd/user.conf` 是针对整个系统或用户的全局配置。2. 配置方式:`/etc/security/limits.conf` 使用类似于 `[user/group] soft/hard resource value` 的语法来指定资源限制;而 `/etc/systemd/system.conf` 和 `/etc/systemd/user.conf` 使用 `key=value` 的方式来设置资源限制。3. 优先级:`/etc/security/limits.conf` 的配置优先级高于 `/etc/systemd/system.conf` 和 `/etc/systemd/user.conf`。当使用 systemd 管理服务时,系统会同时应用这两组配置,但 `/etc/security/limits.conf` 的配置会覆盖 systemd 的配置。总的来说,`/etc/security/limits.conf` 更关注用户级别的资源限制,而 `/etc/systemd/system.conf` 和 `/etc/systemd/user.conf` 更关注系统级别的资源限制。可以根据具体需求来选择使用哪个配置文件进行资源限制的调整。修改
/etc/sysctl.conf
kernel.sem =500 64000 64 128
fs.file-max = 6553600`/etc/sysctl.conf` 是一个系统配置文件,用于设置内核参数和调整内核行为。
在 `/etc/sysctl.conf` 中的配置可以通过 `sysctl` 命令加载到内核中。
`kernel.sem = 500 64000 64 128` 是一个内核信号量的参数配置,具体含义如下:
- `500`:表示信号量集合的数量。
- `64000`:表示每个信号量集合中的信号量数量。
- `64`:表示信号量的操作数目(可以同时进行的动作数)。
- `128`:表示有多少个系统中的进程可以建立信号量。
`fs.file-max = 6553600` 是一个文件描述符的参数配置,它设置了系统可以打开的文件描述符的最大数量为 6553600。文件描述符是操作系统用于跟踪和管理打开文件的标识符。
这些配置可以通过编辑 `/etc/sysctl.conf` 文件来进行调整,并使用 `sysctl -p` 命令使配置生效。
zabbix配置文件
StartIPMIPollers=0 #初始化启动时,启动IPMI子进程轮询器的数量,数量越多,则服务端吞吐能力越强,对系统资源消耗越大 , 主要用于IPMI技术用于获取硬件状态场景。
StartDiscoverers=1 #设置用于自动发现主机的线程数量,若单台代理所管理机器超过500台,可以考虑加大此数值(仅适用于直接AGENT场景)!!!! 1.8.5以前最大数值为255
zabbix高可用
zabbix server 高可用 :keepalived, zabbix6.0自带高可用
mysql 主从
添加1台需要监控的主机流程是什么?
agent 创建监控项,在/etc/zabbix/zabbix_agent2.d目录下创建*.conf的监控项配置文件,UserParameter=监控项,命令 ,重启agent,zabbix server 通过 zabbix_get -s agent的ip -t 监控项测试是否返回值
zabbixserver 创建模板,之前有模版可以用之前的模板,在模版中创建监控项并测试
添加100台需要监控的主机如何实现?
简述zabbix的部署架构和工作原理(或者其他监控报警系统)
有100个机器内存大小不一致想获取内存监控项,然后超过某个指标将报警,如何操作
Zabbix 如何添加自定义监控,有哪些告警方式,如何实现
Zabbix监控哪些指标?
Zabbix有过哪些报警,你怎么处理的?
Zabbix都监控那些服务,监控项都有那些?
Zabbix主动和被动模式什么区别?
Zabbix监控脚本怎么写?
Zabbix出现 0ut Of Memory,将原本2G内存加到8G还是Out 0f Memory
Zabbix出现 0ut Of Memory,将原本2G内存加到8G还是Out 0f Memory
缓存太少,修改配置文件增大缓存
添加100台需要监控的主机如何实现?
自动注册