zoukankan      html  css  js  c++  java
  • 二、zabbix部署和管理

    二、zabbix部署和管理

    2.1、二进制安装

    官方安装文档:https://www.zabbix.com/documentation/4.0/zh/manual/installation/install/building_windows_agent_binaries

    硬件配置参考

    数据库端:
    1、安装数据库

    $ apt install mysql-server-5.7  mysql-client-core-5.7 -y
    $ systemctl start mysql
    $ systemctl enable mysql
    

    2、配置监听地址

    vim /etc/mysql/mysql.conf.d/mysqld.cnf
    
    bind-address            = 0.0.0.0
    
    $ systemctl restart mysql
    $ ss -ntl
    LISTEN           0                 80                                  0.0.0.0:3306
    

    创建数据库并创建授权访问用户

    mysql>  create database zabbix_server character set utf8 collate utf8_bin;
    
    mysql> grant all privileges on zabbix_server.* to zabbix@"%" identified by 'zabbix123';
    

    客户端验证数据库

    控制端导入数据库数据

    $ zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -pzabbix123 -h192.168.7.104 zabbix_server
    
    

    3、配置连接数据库配置

    $ vi /etc/zabbix/zabbix_server.conf
    DBHost=192.168.7.104
    DBName=zabbix_server
    DBUser=zabbix
    DBPassword=zabbix123
    
    

    3、启动服务

    $ systemctl start zabbix-server.service 
    $ systemctl enable zabbix-server.service 
    
    #查看日志是否有报错信息,没有则为成功
    $ ail /var/log/zabbix/*.log
    
    
    #查看端口10051是否开启
    $ ss -ntl
    LISTEN           0                 128                                    [::]:10051
    
    $ 重启apache2服务
    systemctl restart apache2
    
    

    验证访问

    新建zabbix访问目录

    $ mkdir /var/www/html/zabbix
    $ cp -a /usr/share/zabbix/* /var/www/html/zabbix/
    
    

    配置

    配合信息确认

    安装完成完成

    登录管理页面:

    默认账号:Admin

    默认密码:zabbix

    管理主页面

    配置中文界面

    Zabbix
    英文Ubuntu系统安装中文支持
    1、安装中文包
    apt-get install language-pack-zh*
    
    2、配置相关环境
    vim /etc/environment
    
    添加语言和编码的设置
    LANG="zh_CN.UTF-8"
    LANGUAGE="zh_CN:zh:en_US:en"
    
    我的配置文件
    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"
    ~                            
    3、重新设置本地配置
    dpkg-reconfigure locales
    

    选择中文即可

    2.2、源码安装

    安装依赖包

     apt-get  install   apache2 apache2-bin apache2-data apache2-utils fontconfig-config fonts-dejavu-core fping libapache2-mod-php   libapache2-mod-php7.2 libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libfontconfig1 libgd3 libiksemel3   libjbig0 libjpeg-turbo8 libjpeg8 liblua5.2-0 libodbc1 libopenipmi0 libsensors4 libsnmp-base libsnmp30 libsodium23 libssh2-1  libtiff5 libwebp6 libxpm4 php-bcmath php-common php-gd php-ldap php-mbstring php-mysql php-xml php7.2-bcmath php7.2-cli  php7.2-common php7.2-gd php7.2-json php7.2-ldap php7.2-mbstring php7.2-mysql php7.2-opcache php7.2-readline   php7.2-xml snmpd  ssl-cert ttf-dejavu-core      libmysqlclient-dev  libxml2-dev  libxml2 snmp  libsnmp-dev   libevent-dev  openjdk-8-jdk curl libcurl4-openssl-dev 
    
    

    编译安装zabbix

    tar -zxvf zabbix-4.0.12.tar.gz
    useradd zabbix
    cd zabbix-4.0.12/
    ./configure --prefix=/apps/zabbix 
        --enable-server 
        --enable-agent 
        --with-mysql 
        --with-net-snmp 
        --with-libcurl 
        --with-libxml2 
        --enable-java
    make 
    make install
    
    

    数据库创建

    $ apt install mysql-server-5.7  mysql-client-core-5.7 -y
    $ mysql_secure_installation
    
    2、修改监听端口
    vim /etc/mysql/mysql.conf.d/mysqld.cnf
    bind-address            = 0.0.0.0
    3、启动服务
     systemctl restart mysql
     systemctl enable msyql
     mysql_secure_installation 
     mysql -uroot -p123456
     
    4、创建数据库
    mysql> create database zabbix_server character set utf8 collate utf8_bin;
    
    mysql> grant all privileges on zabbix_server.* to zabbix@192.168.7% identified by 'zabbix123';
    
    mysql> flush privileges;
    

    服务器端进行数据库初始化

    /usr/local/src/zabbix-4.0.12/database/mysql目录下导入数据库文件进行初始化

    mysql -uzabbix -pzabbix123 -h192.168.7.102 zabbix_server < schema.sql
    
    mysql -uzabbix -pzabbix123 -h192.168.7.102 zabbix_server  < images.sql
    
    mysql -uzabbix -pzabbix123 -h192.168.7.102 zabbix_server < data.sql
    

    数据库验证

    配置连接数据库配置文件

    $ vim /apps/zabbix_server/etc/zabbix_server.conf
    DBHost=192.168.7.102
    DBName=zabbix_server
    DBUser=zabbix
    DBPassword=zabbix123
    

    复制php文件到访问目录中

     $ mkdir /var/www/html/zabbix
     $ cp -a /usr/local/src/zabbix-4.0.12/frontends/php/*  /var/www/html/zabbix/
    

    配置zabbix启动文件

    可从客户端直接下载apt zabbix,然后复制到服务端

    root@Zabbix-node1:~# cat /lib/systemd/system/zabbix-server.service 
    [Unit]
    Description=Zabbix Server (MySQL/MariaDB)
    Documentation=man:zabbix_server
    After=network.target mysql.service
    
    [Service]
    Type=simple
    User=zabbix
    Group=zabbix
    ExecStart=/usr/sbin/zabbix_server --foreground
    ExecReload=/usr/sbin/zabbix_server -R config_cache_reload
    Restart=on-abnormal
    
    [Install]
    WantedBy=multi-user.target
    
    
    #进行软链接
    $ ln -sv /apps/zabbix_server/sbin/zabbix_server /usr/sbin/
    # 启动服务
    $ systemctl enable zabbix-server.service
    $ systemctl start zabbix-server.service
    $ systemctl start apache2
    
    #验证10051和80端口是否开启
    ss -ntl | grep 10051
    

    访问zabbix的web界面

    根据报错信息修改成要求配置

    修改配置

    根据图中建议参数修改即可

    $ vim /etc/php/7.2/apache2/php.ini
    PHP option "post_max_size"        post_max_size=16M
    PHP option "max_execution_time"  max_execution_time = 300
    PHP option "max_input_time"    max_input_time=300 
    date.timezone =Asia/Shanghai
    
    #重启apache服务
    $ systemctl restart apache2
    

    全部显示ok后进行下一步

    连接数据库

    连接服务端并命名

    信息确认

    会报错一个确实配置文件

    将下载zabbix.conf.php文件放在/var/www/html/zabbix/conf即可,然后下一步

    登录:

    默认账号:Admin

    默认密码:zabbix

    web主页面

    增加中文界面

    Zabbix
    英文Ubuntu系统安装中文支持
    1、安装中文包
    apt-get install language-pack-zh*
    
    2、配置相关环境
    vim /etc/environment
    
    添加语言和编码的设置
    LANG="zh_CN.UTF-8"
    LANGUAGE="zh_CN:zh:en_US:en"
    
    我的配置文件
    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"
    ~                            
    3、重新设置本地配置
    dpkg-reconfigure locales
    

    两步都选择中文支持

    更新本地中文环境

    复制字体到/var/www/html/zabbix/assets/fonts中

    提取自己window主机字体

    提取楷体字体

    将默认字体修改成添加字体新名称

    $ vim /var/www/html/zabbix/include/defines.inc.php
      70 define('ZBX_GRAPH_FONT_NAME',           'simkai'); // font file name
     111 define('ZBX_FONT_NAME', 'simkai');
    
    # 重启web服务
    $ systemctl restart apache2
    

    刷新界面选择中文即可

    下载agent进行服务主机监控

    # wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-2+bionic_all.deb
    # dpkg -i zabbix-release_4.0-2+bionic_all.deb
    # apt update
    
    $ apt install zabbix-agent
    $ systemctl restart zabbix-agent.service
    $ systemctl enable zabbix-agent.service
    

    绿色即为成功

    查看监控主机数据,有监控到数据即为完成安装

    问题汇总:

    1、设置简单密码,违反mysql安全策略(mysql5.7)

    解决:

    1、解决办法调整MySQL密码验证规则,修改 policy 和 length 的值。
    2、MySQL 5.7 进行如下设置,即可解决问题:        
    mysql> set global validate_password_policy=0;
    mysql> set global validate_password_length=1;
    

    用户的基本信息

    2.3、zabbix基本管理

    2.3.1、 修改密码

    2.3.2、创建用户群组

    *为必填

    2.3.3、创建用户

    *为必填,别名就是登录名

    权限-用户类型:

    登录测试

    2.3.4、添加主机群组

    1、 配置(Configration) > 主机群组(Host groups) > 创建主机群组(Create host group)

    2、 输出组名(Group) > 添加(Add)

    2.3.5、添加主机

    Zabbix中的主机(Host)是一个你想要监控的网络实体(物理的,或者虚拟的)。Zabbix中,对于主机的定义非常灵活。它可以时一台物理服务器,一个网络交换机,一个虚拟机或者一些应用

    1、配置(Configuration) > 主机(Hosts), 查看已配置的主机信息 > 点击创建主机(Create host)以添加新的主机

    2、 添加信息

    3、 添加模板(Templates)

    4、验证、需要等待

    等不及,可到监控项、检查

    5、 ZBX绿了,表示主机正常监控

    2.3.6、添加监控

    1、选中一个主机、查看监控项(ltems)

    2、 创建监控项(Create item)

    3、添写信息
    名称:显示监控项的名称
    键值:要监控的项,可以点右边的选择来挑选
    信息类型:根据键值的返回值选择合适的类型

    4、 点击添加 、验证

    2.3.7、添加触发器

    1、选择一个主机、选择触发器

    2、创建触发器

    3、 填写名称、选择严重性、和表达式

    表达式

    触发器列表

    4、 测试,让CPU负载变高

    for i in `seq 1 $(cat /proc/cpuinfo |grep "physical id" |wc -l)`; do dd if=/dev/zero of=/dev/null & done
    

    5、查看报警

    监测 > 问题

    2.3.8、添加图形

    1、选择主机---》图形

    2、创建图形

    3、 添加监控项

    4、查看图形

    2.3.9、报警通知

    设置邮件报警

    1、创建媒介类型

    2、填写项

    3、查看报警媒介列表

    4、关联用户

    添加报警媒介用户信息

    用户列表

    2.3.10、创建动作

    1、创建动作

    2、添加触发动作

    3、 添加新操作

    恢复{TRIGGER.STATUS}, 服务器名:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
    
    告警主机:{HOSTNAME}
    告警主机IP地址:{HOST.IP}
    告警时间:{EVENT.DATE} {EVENT.TIME}
    告警等级:{TRIGGER.SEVERITY}
    告警信息: {TRIGGER.NAME}
    告警项目:{TRIGGER.KEY1}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
    事件ID:{EVENT.ID}
    

    4、验证,关闭zabbix-agent服务

    因为默认agent ping监控默认时间太久,可一更改下时间测试,然后主机的触发器调整即可

    报警邮件

    恢复邮件

    实现分级报警

    实现报警和恢复邮件通知

    1、实现报警通知

    "故障{TRIGGER.STATUS}:{HOSTNAME1}:{TRIGGER.NAME}"
    
    "报警主机:{HOSTNAME1}
    报警时间:{EVENT.DATE} {EVENT.TIME}
    报警等级:{TRIGGER.SEVERITY}
    报警信息:{TRIGGER.NAME}
    报警项目:{TRIGGER.KEY1}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态: {TRIGGER.STATUS}:{ITEM.VALUE1}
    

    2、实现恢复通知

    恢复{TRIGGER.STATUS}, 服务器名:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
    
    告警主机:{HOSTNAME}
    告警主机IP地址:{HOST.IP}
    告警时间:{EVENT.DATE} {EVENT.TIME}
    告警等级:{TRIGGER.SEVERITY}
    告警信息: {TRIGGER.NAME}
    告警项目:{TRIGGER.KEY1}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
    事件ID:{EVENT.ID}
    

    测试关闭nginx和恢复nginx

    关闭后通知

    恢复后通知

    2.3.11、agent主动模式监控类型

    1、全克隆模版

    2、克隆模版

    点击全克隆,下图搞错了

    3、修改模版名称

    修改名称 > 添加

    4、列表查看

    5、 修改成主动模式,点击监控项

    监控项>全选>批量更新

    6、修改类型

    7、 修改间隔时间,点击更新

    8、 点击自动发现规则

    9、 点击名称进入修改

    10、 修改成主动式,更新

    11、 箭头所指的地方都需要修改成主动式(监控项原型内还有多项)

    12、 添加新的主机,过程略

  • 相关阅读:
    JQ对JSON的增删改
    Debug编辑通过转Release找不到命名空间
    Codeforces Round #740(Div. 2)
    2021“MINIEYE杯”中国大学生算法设计超级联赛(10)
    2021“MINIEYE杯”中国大学生算法设计超级联赛(8)
    Codeforces Round #737 (Div. 2)
    2021“MINIEYE杯”中国大学生算法设计超级联赛(7)
    2021牛客暑期多校训练营8
    2021牛客暑期多校训练营7
    2021“MINIEYE杯”中国大学生算法设计超级联赛(6)
  • 原文地址:https://www.cnblogs.com/pansn/p/12602195.html
Copyright © 2011-2022 走看看