一.zabbix监控安装配置实现对本机的监控
监控端ip 192.168.1.11
被监控端ip 192.168.1.12
1.zabbix相关包的安装
1)zabbix的仓库源配置
root@ubuntu1804:~# wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-2+bionic_all.deb
2)安装zabbixx-release_4.0-2+bionic_all.deb
root@ubuntu1804:~# dpkg -i zabbix-release_4.0-2+bionic_all.deb
3)更新软件
root@ubuntu1804:~#apt update
4)安装zabbix服务端、前端、客户端
root@ubuntu1804:~# apt -y install zabbix-server-mysql zabbix-frontend-php zabbix-agent
2.数据库初始化
1)创建zabbix数据库,以及添加zabbix授权用户
mysql> create database zabbix character set utf8 collate utf8_bin; #创建一个zabbix数据库
mysql> grant all privileges on zabbix.* to [email protected] identified by 'zabbix'; #创建一个zabbix授权用户
mysql> quit;
2)zabbix数据库初始化,导入zabbix必要的数据表格
root@ubuntu1804:/data# zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -pzabbix -h192.168.1.11 zabbix
3)修改mysql数据库的监听IP
root@ubuntu1804:/data# grep "127.0.0.1" /etc/mysql/ -R
/etc/mysql/mariadb.conf.d/50-server.cnf:bind-address = 127.0.0.1
root@ubuntu1804:~# sed -i "s/127.0.0.1/192.168.1.11/" /etc/mysql/mariadb.conf.d/50-server.cnf
3.修改zabbix配置文件
1)修改zabbix_server.conf服务端配置文件,填写连接的数据库信息
root@ubuntu1804:~#vim /etc/zabbix/zabbix_server.conf
……
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBHost=192.168.1.11
……
2)查看PHP版本,从而对应php版本修改时区
root@ubuntu1804:~# ph
phar phar7.2 phar.phar phar.phar7.2 php php7.2 phpdismod phpenmod phpquery
3)修改apache.conf配置文件,更改时区为上海
root@ubuntu1804:~#vim etc/zabbix/apache.conf
php_value date.timezone Asia/Shanghai
4.重启本机的所有服务
root@ubuntu1804:~#systemctl restart zabbix-server zabbix-agent apache2
root@ubuntu1804:~#systemctl enable zabbix-server zabbix-agent apache2
5.进入浏览器页面访问
1)无报错进行下一步
2)填写所连接数据库信息
/usr/share/zabbix/conf/zabbix.conf.php 为前端连接数据库的信息的路径,后期需要更改可以直接在此文件更改
3)登录账号,默认密码为zabbix,用户名为Admin
4)进去页面后默认是英文页面
5)安装中文包,是仪表盘显示为中文界面
root@ubuntu1804:~# apt-get install language-pack-zh*
6)添加中文包配置到environment中
root@ubuntu1804:~# vim /etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh:en_US:en"
7)使配置生效并选择中文字符
root@ubuntu1804:~# dpkg-reconfigure locales
8)再次登录zabbix的web端
9)点击人头图标进行设置页面显示语言类型
10)语言选择中文,在点击更新
11)此时仪表盘页面显示为中文界面
12)在查看监控项时,显示乱码,默认不支持中文,需要更改图形显示默认的字体为中文
13)修改字体的的配置文件defines.inc.php
root@ubuntu1804:~#vim /usr/share/zabbix/include/defines.inc.php
14)默认英文字体存放的路径
root@ubuntu1804:~# find /usr/share/ -name graphfont*
/usr/share/zabbix/assets/fonts/graphfont.tt
15)在windows找到fonts字体文件夹:c\system\fonts\
16)再将中文字体文件添加到此目录下,后缀必须改为ttf,否则无法识别
root@ubuntu1804:/usr/share/zabbix/assets/fonts# ls
graphfont.ttf STSONG.ttf
17)在修改配置文件defines.inc.php,将graphfont英文字体为中文,在查看图形
root@ubuntu1804:/usr/share/zabbix/include# vim defines.inc.php
……
define('ZBX_GRAPH_FONT_NAME', 'STSONG'); // font file name
……
define('ZBX_FONT_NAME', 'STSONG');
18)再次查看监控图形,此时乱码消失看到中文字体
二.实现对其他远程主机的监控
1.在远程主机安装zabbix客户端
root@ubuntu1804:~# apt install zabbix-agent -y
2.在远程主机修改配置文件并启动服务
root@ubuntu1804:~# systemctl start zabbix-agent
root@ubuntu1804:~# vim /etc/zabbix/zabbix_agentd.conf
……
Server=192.168.1.11 #改为监控此主机的服务主机的ip
Hostname=192.168.1.12 #本机的主机名,为了方便区分直接使用本机的ip地址
3.重新启动zabbix-agent服务
root@ubuntu1804:~# systemctl restart zabbix-agent
4.在监控端的web页面添加被监控的主机
1)添加一个主机
2)在添加一个模板,更新
3)此时被监控的主机添加成功
4)返回仪表盘,点击图形选项 ,查看被监控主机的cpu负载图形
5)查看本机的内存使用情况
6)安装zabbix-get命令包
root@ubuntu1804:~# apt-get install zabbix-get -y
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
zabbix-get 已经是最新版 (1:4.0.10-1+bionic)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 227 个软件包未被升级。
7)用zabbix_get命令检查是否能够获取键值对的值
root@ubuntu1804:~# zabbix_get -s 192.168.1.13 -p 10050 -k "vm.memory.size[available]"
1495130112 #可用的内存大小
root@ubuntu1804:~# zabbix_get -s 192.168.1.13 -p 10050 -k "agent.ping"
1 #是否能ping通,数值1表示可以ping通,证明zabbix监控端与被监控端成功建立连接
三.zabbix实现对tomcat的监控
监控端ip 192.168.1.14
被监控端tomcat服务ip 192.168.1.13
1.在监控端
1)安装Javagateway包,此包为zabbit监控和tomcat的连接中间件
root@ubuntu1804:~# apt install zabbix-java-gateway -y
2)修改java-gateway配置文件的主要参数
vim /etc/zabbix/zabbix_java_gateway.conf
LISTEN_IP="192.168.1.14"
LISTEN_PORT=10052
START_POLLERS=10
TIMEOUT=30
3)修改zabbix服务端的配置文件,添加与java-gateway相对应的选项
vim /etc/zabbix/zabbix_server.conf
JavaGateway=192.168.1.14
JavaGatewayPort=10052
StartJavaPollers=20
Timeout=30
4)重新启动所有服务配置生效
systemctl restart zabbix-java-gateway
systemctl restart zabbix-server
systemctl zabbix-agent apache2
2.被监控制端
1)准备好tomcat和jdk的二进制压缩包
root@ubuntu1804:~# ls /data/
apache-tomcat-8.5.42.tar.gz jdk-8u211-linux-x64.tar.gz
2)将tomcat和jdk的二进制压缩包接要到指定目录下
root@ubuntu1804:/data# tar xvf apache-tomcat-8.5.42.tar.gz -C /app/
root@ubuntu1804:/data# tar xvf jdk-8u211-linux-x64.tar.gz -C /app/
3)创建软连接
root@ubuntu1804:/app# ln -sv apache-tomcat-8.5.42 tomcat
root@ubuntu1804:/app# ln -sv jdk1.8.0_211 jdk
4)配置jdk和tomcat的相关的环境变量,放到文件最底端
root@ubuntu1804:~# vim /etc/profile
export JAVA_HOME=/app/jdk
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib/:$JRE_HOME/lib
export TOMCAT_HOME=/app/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$TOMCAT_HOME/bin
5)生效环境变量
root@ubuntu1804:~#source /etc/profile
6)x修改tomcat脚本启动文件,配置与java-gateway远程连接
root@ubuntu1804:~# vim /app/tomcat/bin/catalina.sh
……
# use nohup so that the Tomcat process will ignore any hangup
# signals. Default is "false" unless running on HP-UX in which
# case the default is "true"
# -----------------------------------------------------------------------------
CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote #启动远程连接
-Dcom.sun.management.jmxremote.port=12345 #默认启动端口
-Dcom.sun.management.jmxremote.authenticate=false #不使用用户连接密码
-Dcom.sun.management.jmxremote.ssl=false #不使用ssl认证
-Djava.rmi.server.hostname=192.168.1.13" #指定为本地主机的ip
…….
7)启动tomcat服务
root@ubuntu1804:~# catalina.sh start
8)查看监听端口,验证相关服务是否都启动
root@ubuntu1804:~# ss -tnlp
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 1 [::ffff:127.0.0.1]:8005 *:*
users:(("java",pid=5862,fd=78))
LISTEN 0 100 *:8009 *:*
users:(("java",pid=5862,fd=57))
LISTEN 0 100 *:8080 *:*
users:(("java",pid=5862,fd=53))
ISTEN 0 50 *:12345 *:*
users:(("java",pid=5862,fd=20))