zabbix基于mysql的安装部署,以及实现zabbix的监控功能

关于zabbix

        zabbix(音同 za:bix)是一个基于WEB界面的提供分布式系统监视以及网络
监视功能的企业级的开源解决方案。
        zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供
灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。zabbix
由2部分构成,zabbix server与可选组件zabbix agent。

先封装7.3级的虚拟机

环境:
server1(172.25.44.11) : server端(7.3版)
server2 (172.25.44.2): agent端  (6.5版)

1.基于mysql的zabbix搭建

[root@server1 ~]# ls
 php-mbstring-5.4.16-42.el7.x86_64.rpm
fping-3.10-1.el7.x86_64.rpm          zabbix-server-mysql-3.4.6-1.el7.x86_64.rpm
iksemel-1.4-2.el7.centos.x86_64.rpm  zabbix-web-3.4.6-1.el7.noarch.rpm
php-bcmath-5.4.16-42.el7.x86_64.rpm  zabbix-web-mysql-3.4.6-1.el7.noarch.rpm
[root@server1 ~]# rm -fr anaconda-ks.cfg 
[root@server1 ~]# yum install * -y
[root@server1 ~]# cd /etc/zabbix/
[root@server1 zabbix]# ls
web  zabbix_server.conf
[root@server1 zabbix]# yum install mariab-server -y
[root@server1 zabbix]# systemctl start mariadb
[root@server1 zabbix]# mysql_secure_installation 

这里写图片描述
这里写图片描述

[root@server1 zabbix]# mysql -p
Enter password: 
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
    Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by  'westos';
    Query OK, 0 rows affected (0.00 sec)
[root@server1 zabbix]# cd /usr/share/doc/zabbix-server-mysql-3.4.6/
[root@server1 zabbix-server-mysql-3.4.6]# ls
    AUTHORS  ChangeLog  COPYING  create.sql.gz  NEWS  README
[root@server1 zabbix-server-mysql-3.4.6]# zcat create.sql.gz | mysql -u zabbix -p  zabbix

Enter password: 
[root@server1 zabbix-server-mysql-3.4.6]# cd /etc/zabbix/
[root@server1 zabbix]# ls
web  zabbix_server.conf
[root@server1 zabbix]# vim zabbix_server.conf 
        125 DBPassword=westos
        132 DBSocket=/var/lib/mysql/mysql.sock

[root@server1 zabbix]# ll /var/lib/mysql/mysql.sock 
        srwxrwxrwx 1 mysql mysql 0 8月  14 16:05 /var/lib/mysql/mysql.sock
[root@server1 zabbix]# cd /etc/httpd
[root@server1 httpd]# ls
        conf  conf.d  conf.modules.d  logs  modules  run
[root@server1 httpd]# cd conf.d/
[root@server1 conf.d]# vim zabbix.conf 
        19         php_value date.timezone Asia/Shanghai
[root@server1 conf.d]# systemctl start zabbix-server
[root@server1 conf.d]# systemctl start httpd
[root@server1 conf.d]# getenforce
        Disabled
[root@server1 conf.d]# iptables -L
        Chain INPUT (policy ACCEPT)
        target     prot opt source               destination         

        Chain FORWARD (policy ACCEPT)
        target     prot opt source               destination         

        Chain OUTPUT (policy ACCEPT)
        target     prot opt source               destination         
[root@server1 conf.d]# cd
[root@server1 ~]# yum install zabbix-agent-3.4.6-1.el7.x86_64.rpm  -y
[root@server1 ~]# systemctl start zabbix-agent
#打开网页测试

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

#这里的登陆密码是在上边文件里写的

这里写图片描述

#点击人头,修改密码和语言

这里写图片描述

#退出去,用新密码重新登陆

这里写图片描述
这里写图片描述

#启用zabbix-server,点击红色的‘已停用’,使之变为‘已启用’

这里写图片描述

这里写图片描述

#状态必须为已启用

这里写图片描述

#客户端:这台虚拟机是6.5版本的
[root@server2 ~]# ls
        zabbix-agent-3.4.6-1.el6.x86_64.rpm

[root@server2 ~]# rpm -ivh zabbix-agent-3.4.6-1.el6.x86_64.rpm 
        warning: zabbix-agent-3.4.6-1.el6.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
        Preparing...                ########################################### [100%]
        1:zabbix-agent           ########################################### [100%]
[root@server2 ~]# cd /etc/zabbix/
[root@server2 zabbix]# vim zabbix_agentd.conf 
        97 Server=172.25.44.11
        137 ServerActive=172.25.44.11
        148 Hostname=server2   #本机名称,此处的目的是写本机解析
[root@server2 zabbix]# /etc/init.d/zabbix-agent start
        Starting Zabbix agent:                                     [  OK  ]
添加客户端
1.自动发现



#启用

这里写图片描述
这里写图片描述

#点击Local network添加网段

这里写图片描述
这里写图片描述

#网段添加成功

这里写图片描述

   因为自动发现是随机的每个隔一个小时发现一次,我的自动发现没有发现我
   的客户端,下面我就采用手动添加的方式把我的客户端(server2)添加进去

2.手动添加
#点击创建主机

这里写图片描述
这里写图片描述

#点击模块,添加模块

这里写图片描述
这里写图片描述
#添加成功
这里写图片描述

3.自主注册(因为上面已经手动添加成功,所以要先删除刚才添加的ser er2)

#点击创建动作

这里写图片描述

#添加名称

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

#点击启用

这里写图片描述
这里写图片描述

[root@server2 zabbix]# netstat -antlp
/rpc.statd       
        tcp        0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      1956/zabbix_agentd  

#添加Api
[root@server2 zabbix]# cd
[root@server2 zabbix]# vim zabbix-api.sh

这里写图片描述

[root@server2 ~]# chmod +x zabbix-api.sh 
[root@server2 ~]# ./zabbix-api.sh 
{
    "id": 1, 
    "jsonrpc": "2.0", 
    "result": "10655b7f55511512c73ab6060069c833"
}
[root@server2 ~]# vim zabbix-api.sh 

这里写图片描述

    [root@server2 ~]# ./zabbix-api.sh 

这里写图片描述

#用api删除:
[root@server2 ~]# vim zabbix-api.sh

这里写图片描述

[root@server2 ~]# ./zabbix-api.sh 

这里写图片描述

查看网页就会删除

#

用api添加:
[root@server2 ~]# vim zabbix-api.sh

这里写图片描述

[root@server2 ~]# ./zabbix-api.sh 

这里写图片描述

[root@server2 ~]#  yum install httpd
[root@server2 ~]#  /etc/init.d/httpd start
Starting httpd: 
[root@server2 ~]#  cd /var/www/html/
[root@server2 html]#  vim index.html

查看网页就会添加成功

#

2.添加nginx监控

[root@server2 ~]# rpm -ivh nginx-1.8.0-1.el6.ngx.x86_64.rpm
[root@server2 ~]# cd /etc/nginx/
[root@server2 nginx]# ls
        conf.d          koi-utf  mime.types  scgi_params   win-utf
        fastcgi_params  koi-win  nginx.conf  uwsgi_params
[root@server2 nginx]# cd conf.d/
[root@server2 conf.d]# ls
        default.conf  example_ssl.conf
[root@server2 conf.d]# vim default.conf 
         12     location / status {
         13         stub_status   on;
         14         access_log    off;
         15         allow 127.0.0.1;
         16         deny all;
         17     }
[root@server2 conf.d]# nginx -t
        nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
        nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@server2 ~]# /etc/init.d/nginx  restart 

[root@server2 ~]# curl http://127.0.0.1/status
    Active connections: 1 
    server accepts handled requests
     1 1 1 
    Reading: 0 Writing: 1 Waiting: 0 
[root@server2 ~]# curl -s http://127.0.0.1/status | grep Active
        Active connections: 1 
[root@server2 ~]# curl -s http://127.0.0.1/status | grep Active | awk '{print $3}'
        1
[root@server2 ~]# curl -s  http://127.0.0.1/status | grep Active | awk '{print $NF}'   #NF表示最后一列,也可使用$3
        1

[root@server2 ~]# cd /etc/zabbix/
[root@server2 zabbix]# ls
zabbix_agentd.conf  zabbix_agentd.d
[root@server2 zabbix]# cd zabbix_agentd.d/
[root@server2 zabbix_agentd.d]# ls
userparameter_mysql.conf
[root@server2 zabbix_agentd.d]# cp userparameter_mysql.conf userparameter_nginx.conf 
[root@server2 zabbix_agentd.d]# vim userparameter_nginx.conf 


    UserParameter=nginx.active,curl -s http://127.0.0.1/status  | grep Active | awk '{print $3}'
[root@server2 zabbix_agentd.d]# /etc/init.d/zabbix-agent start
            Starting Zabbix agent:                                     [  OK  ]
[root@server2 zabbix_agentd.d]# chkconfig zabbix-agent on





[root@server1 ~]# systemctl start mariadb 
[root@server1 ~]# systemctl  enable mariadb 
        Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[root@server1 ~]# systemctl start zabbix-server
[root@server1 ~]# systemctl  enable zabbix-server
        Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
[root@server1 ~]# systemctl start zabbix-agent
[root@server1 ~]# systemctl  enable zabbix-agent
        Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
[root@server1 ~]# rpm -ivh zabbix-get-3.4.6-1.el7.x86_64.rpm
[root@server1 ~]# zabbix_get -s 172.25.44.2 -p 10050  -k 'nginx.active'
    1
[root@server1 ~]# systemctl start httpd 
[root@server1 ~]# systemctl enable httpd 
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.

浏览器

点击监控项->创建监控项

这里写图片描述

#填写自定义名称,键值是server6文件userparameter_nginx.conf 中的名字

这里写图片描述
这里写图片描述

#点击图形->创建图形

这里写图片描述

#效果呈现

这里写图片描述

#添加其他监控项
[root@server2 zabbix_agentd.d]# vim userparameter_nginx.conf
      1 UserParameter=nginx.accepts,curl -s http://127.0.0.1/status  | awk NR    ==3 | awk '{print $1}'
      2 UserParameter=nginx.requests,curl -s http://127.0.0.1/status  | awk N    R==3 | awk '{print $2}'
      3 UserParameter=nginx.handled,curl -s http://127.0.0.1/status  | awk NR    ==3 | awk '{print $3}'

[root@server2 zabbix_agentd.d]# /etc/init.d/zabbix-agent restart
        Shutting down Zabbix agent:                                [  OK  ]
        Starting Zabbix agent:                                     [  OK  ]



[root@server1 conf.d]# zabbix_get -s 172.25.44.2 -p 10050  -k 'nginx.accepts'
74
[root@server1 conf.d]# zabbix_get -s 172.25.44.2 -p 10050  -k 'nginx.handled'
76
[root@server1 conf.d]# zabbix_get -s 172.25.44.2 -p 10050  -k 'nginx.requests'
76

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

#效果呈现

这里写图片描述

3.添加percona监控

[root@server1 ~]# rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm 
[root@server1 ~]# cd /var/lib/zabbix/
[root@server1 zabbix]# ls
    percona
[root@server1 zabbix]# cd percona/
[root@server1 percona]# ls
    scripts  templates
[root@server1 percona]# cd  scripts/
[root@server1 scripts]# ls
    get_mysql_stats_wrapper.sh  ss_get_mysql_stats.php
[root@server1 scripts]# cd /var/lib/zabbix/percona/templates/
[root@server1 templates]# ls
    userparameter_percona_mysql.conf
    zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml
[root@server1 templates]# cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d
[root@server1 templates]# cd /etc/zabbix/zabbix_agentd.d
[root@server1 zabbix_agentd.d]# ls
    userparameter_mysql.conf  userparameter_percona_mysql.conf
[root@server1 zabbix_agentd.d]# systemctl restart zabbix-agent
[root@server1 zabbix_agentd.d]# cd /var/lib/zabbix/percona/scripts/
[root@server1 scripts]# ls
        get_mysql_stats_wrapper.sh  ss_get_mysql_stats.php
[root@server1 scripts]# vim ss_get_mysql_stats.php.cnf
          1 <?php
          2 $mysql_user = 'root';
          3 $mysql_pass = 'westos';
[root@server1 scripts]# cd /tmp/
[root@server1 tmp]# ls
        ks-script-Zlfu8u
        systemd-private-6ea343c1b99f4e959734615629953fcb-httpd.service-OVBja8
        systemd-private-6ea343c1b99f4e959734615629953fcb-mariadb.service-GdOORo
        systemd-private-d4d96c98bd4047c5a5b5d9aab805c082-httpd.service-HfogtZ
        systemd-private-d4d96c98bd4047c5a5b5d9aab805c082-mariadb.service-lLXBvV
        yum.log
[root@server1 ~]# cd /etc/zabbix/zabbix_agentd.d
[root@server1 zabbix_agentd.d]# ls
userparameter_mysql.conf  userparameter_percona_mysql.conf
[root@server1 zabbix_agentd.d]# cat userparameter_percona_mysql.conf 

[root@server1 tmp]# yum install -y net-tools
[root@server1 tmp]# netstat  -antlp
tcp6       0      0 :::10050                :::*                    LISTEN      4013/zabbix_agentd  

这里写图片描述

[root@server1 ~]# vim ~zabbix/.my.cnf
          1 [client]
          2 user = root
          3 password = westos
[root@server1 zabbix_agentd.d]# systemctl restart zabbix-agent
[root@server1 tmp]# zabbix_get -s 127.0.0.1 -p 10050 -k 'MySQL.Threads-cached'
        0

#导入模版

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

#监控项变多

这里写图片描述

#给zabbix添加模版

这里写图片描述
这里写图片描述
这里写图片描述

4.添加java模块

[root@server1 ~]# rpm -ivh jdk-8u121-linux-x64.rpm 
[root@server1 ~]# tar zxf apache-tomcat-7.0.90.tar.gz -C  /usr/local/
[root@server1 ~]# cd /usr/local/
[root@server1 local]# ls
apache-tomcat-7.0.90  bin  etc  games  include  lib  lib64  libexec  sbin  share  src
[root@server1 local]# ln -s apache-tomcat-7.0.90/  tomcat
[root@server1 local]# cd tomcat/
[root@server1 tomcat]# ls
        bin           conf             lib      logs    README.md      RUNNING.txt  webapps
        BUILDING.txt  CONTRIBUTING.md  LICENSE  NOTICE  RELEASE-NOTES  temp         work
[root@server1 tomcat]# bin/startup.sh 
        Using CATALINA_BASE:   /usr/local/tomcat
        Using CATALINA_HOME:   /usr/local/tomcat
        Using CATALINA_TMPDIR: /usr/local/tomcat/temp
        Using JRE_HOME:        /usr
        Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
        Tomcat started.

[root@server1 tomcat]# netstat -antlp
        tcp6       0      0 :::8080                 :::*                    LISTEN      9157/java  
[root@server1 tomcat]# cd bin/
[root@server1 bin]# ls
bootstrap.jar                 configtest.bat    setclasspath.sh  tomcat-native.tar.gz
catalina.bat                  configtest.sh     shutdown.bat     tool-wrapper.bat
catalina.sh                   daemon.sh         shutdown.sh      tool-wrapper.sh
catalina-tasks.xml            digest.bat        startup.bat      version.bat
commons-daemon.jar            digest.sh         startup.sh       version.sh
commons-daemon-native.tar.gz  setclasspath.bat  tomcat-juli.jar
[root@server1 bin]# vim catalina.sh
        109 CATALNA_OPTS='Dcom.sun.management.jmxremote
        110         -Dcom.sun.management.jmxremote.port=8888
        111         -Dcom.sun.management.jmxremote.ssl=false
        112         -Dcom.sun.management.jmxremote.authenticate=false'
[root@server1 bin]# ./shutdown.sh 
        Using CATALINA_BASE:   /usr/local/tomcat
        Using CATALINA_HOME:   /usr/local/tomcat
        Using CATALINA_TMPDIR: /usr/local/tomcat/temp
        Using JRE_HOME:        /usr
        Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@server1 bin]# ./startup.sh
        Using CATALINA_BASE:   /usr/local/tomcat
        Using CATALINA_HOME:   /usr/local/tomcat
        Using CATALINA_TMPDIR: /usr/local/tomcat/temp
        Using JRE_HOME:        /usr
        Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
        Tomcat started.
[root@server1 bin]# netstat -antlp
        tcp6       0      0 :::8888                 :::*                    LISTEN      14923/java      
[root@server1 ~]# yum install zabbix-java-gateway-3.4.6-1.el7.x86_64.rpm       
[root@server1 ~]# cd /etc/zabbix/
[root@server1 zabbix]# systemctl start zabbix-java-gateway
[root@server1 zabbix]# netstat -antlp | grep 10052
        tcp6       0      0 :::10052                :::*                    LISTEN      16911/java   


[root@server1 zabbix]# vim zabbix_server.conf 
        262 JavaGateway=172.25.44.11
        270  JavaGatewayPort=10052
        278  StartJavaPollers=5
[root@server1 zabbix]# systemctl restart zabbix-server

这里写图片描述
这里写图片描述
这里写图片描述

#java模块成功添加

这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/wzt888_/article/details/81669042