zoukankan      html  css  js  c++  java
  • zabbix4.0搭建

    一.准备工作

    1.yum国内源的安装与更新

    1.1 备份原repo文件

    cd /etc/yum.repos.d/ 
    mkdir repo_bak 
    mv *.repo repo_bak
    

    1.2 在centos中配置网易和阿里的开源镜像

    wget http://mirrors.aliyun.com/repo/Centos-7.repo
    wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
    

    1.3 清除系统缓存并生成新的yum缓存

    yum clean all
    yum makecache
    

    1.4 安装epel源

    yum -y install epel-release

    1.5 下载安装阿里开源镜像提供的epel

    wget http://mirrors.aliyun.com/repo/epel-7.repo

    1.6 再次清除系统缓存并生成新的yum缓存

    yum clean all
    yum makecache
    

    1.7 查看系统可用的yum源和所有yum源

    yum repolist enable
    yum repolist all
    

    1.8 升级系统到最新

    yum update -y

    2.关闭防火墙

    2.1 关闭selinux

    vi /etc/selinux/config
    #将SELINUX=enforcing改为disabled
    getenforce #检测selinux是否关闭
    

    2.2 关闭防火墙

    firewall-cmd --state #查看防火墙状态
    systemctl stop firewalld.service #临时关闭防火墙
    systemctl disable firewalld.service #禁止firewall开机启动
    

    3. 安装依赖环境

    yum install -y httpd php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mhash

    4. 编辑httpd --可选

    vi /etc/httpd/conf/httpd.conf
    ServerName www.zabbixtest.com
    DirectoryIndex index.html index.php
    

    5. 编辑配置php,配置中国时区

    vi /etc/php.ini
    date.timezone = Asia/Shanghai
    

    6. 启动httpd

    systemctl start httpd #开机启动httpd
    systemctl enable httpd
    

    7. mysql数据库安装和配置

    7.1 安装mysql5.7

    wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
    rpm -ivh mysql57-community-release-el7-10.noarch.rpm
    yum install mysql-server
    

    注意:安装完mysql以后不要启动mysql,我们需要修改mysql的数据存储路径和日志存储路径

    7.2 修改mysql数据存储路径

    #创建数据存储目录并修改权限
    mkdir /data/mysql
    chown -R mysql /data/mysql
    chgrp -R mysql /data/mysql
    chmod -R g+rw /data/mysql
    #修改配置文件
    vim /etc/my.cnf
    [mysqld]
    datadir=/data/mysql
    socket=/data/mysql/mysql.sock
    [client]
    socket=/data/mysql/mysql.sock
    

    如果安装完mysql,mysql已经启动,默认的数据存储路径是/var/lib/mysql/,修改存储路径需要先停止mysql并且将原路径下的文件复制到新的路径下,操作方式如下:

    #查看mysql的datadir路径
    mysql -u root -p
    show variables like '%dir%';
    #停止mysql
    systemctl stop mysqld
    #创建数据存储目录,将原路径下的文件复制到新的路径下并修改权限
    mkdir /data/mysql
    cp -r /var/lib/mysql/* /data/mysql/
    chown -R mysql /data/mysql
    chgrp -R mysql /data/mysql
    chmod -R g+rw /data/mysql
    #修改配置文件
    vim /etc/my.cnf
    [mysqld]
    datadir=/data/mysql
    socket=/data/mysql/mysql.sock
    [client]
    socket=/data/mysql/mysql.sock
    

    7.3 修改mysql日志存储路径

    #创建日志存储目录并修改权限
    mkdir /log/mysql
    
    chown -R mysql mysql
    chgrp -R mysql mysql
    chmod -R g+rw mysql mysql
    
    vim /etc/my.cnf
    log-error=/log/mysql/mysqld.log
    

    7.4 启动mysql

    以上操作完成以后可以启动mysql

    systemctl start mysql #开机启动mysql
    systemctl enable mysql
    ss -anplt | grep httpd #监听80端口
    ss -anplt | grep mysql #监听3306端口
    

    7.5 初始化mysql数据库,并修改root密码

    grep "password" /var/log/mysqld.log

    查看默认密码

    7.5.1 修改mysql password的方法

    1.mysqladmin -u用户名 -p旧密码 password 新密码

    mysqladmin -u root -p 123456 password EZsvs@123

    2.使用默认密码登陆mysql后使用命令mysql> set password for 用户名@localhost = password('新密码');修改密码

    set password for root@localhost = password('EZsvs@123');

    3.用UPDATE直接编辑user表

    首先登录MySQL。

    mysql> use mysql;
    mysql> update user set password=password('EZsvs@123') where user='root' and host='localhost';
    mysql> flush privileges; 
    

    7.5.2 创建zabbix库和用户

    mysql -u root -p #root用户登录数据库
    CREATE DATABASE zabbix character set utf8 collate utf8_bin; # 创建zabbix数据库(中文编码格式)
    GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'ZAbbix@123'; #授予zabbix用户zabbix数据库的所有权限,密码zabbix
    flush privileges; #刷新权限
    exit
    

    7.5.2 为保证zabbix用户也可以登录数据库,若出现本地无法登录情况,解决方式如下:

    mysql -u root -p  #使用root账户登录数据库;
    select user,host from mysql.user;   #有空用户名称占用导致本地无法登录远程可登录
    drop user ''@localhost;  #删除空用户
    

    二.zabbix-server的安装和配置

    1. 安装依赖

    1.1 安装依赖包和组件

    yum -y install net-snmp net-snmp-devel curl curl-devel libxml2 libxml2-devel libevent-devel.x86_64 javacc.noarch  javacc-javadoc.noarch javacc-maven-plugin.noarch javacc*
    yum install php-bcmath php-mbstring -y #安装php支持zabbix组件
    

    1.2 安装zabbix源

    rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm #会自动生成yum源文件,保证系统可以上网
    
    yum-config-manager --enable rhel-7-server-optional-rpms
    

    1.3 安装zabbix组件

    1.3.1 安装zabbix-server

    yum install zabbix-server-mysql zabbix-web-mysql -y

    1.4 导入数据库

    1.4.1 使用 MySQL 来导入 Zabbix server 的初始数据库 schema 和数据

    zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p ZAbbix@123

    1.5 配置mysql数据库

    1.5.1 为zabbix-server配置mysql数据库

    编辑zabbix_server.conf文件

    vi /etc/zabbix/zabbix_server.conf
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=zabbix
    DBSocket=/data/mysql/mysql.sock
    LogFile=/log/zabbix/zabbix_server.log
    

    1.6 zabbix前端配置

    vi /etc/httpd/conf.d/zabbix.conf
    php_value date.timezone Asia/Shanghai
    

    1.7 启动zabbix进程

    systemctl start zabbix-server
    systemctl enable zabbix-server
    

    1.8 zabbix web端配置

    登录http://localhost/zabbix/

    初始用户名:Admin

    密码:zabbix

    初次配置会检查zabbix环境是否符合要求,依照页面要求检查完毕后进入zabbix监控管理页面
    至此,zabbix-server的安装和配置已经完毕

    三.zabbix-proxy安装和配置

    1. 安装依赖

    1.1 安装依赖包和组件

    yum -y install net-snmp net-snmp-devel curl curl-devel libxml2 libxml2-devel libevent-devel.x86_64 javacc.noarch  javacc-javadoc.noarch javacc-maven-plugin.noarch javacc*
    yum install php-bcmath php-mbstring -y #安装php支持zabbix组件
    

    1.2 安装zabbix源

    rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm #会自动生成yum源文件,保证系统可以上网
    
    yum-config-manager --enable rhel-7-server-optional-rpms
    

    1.3 安装zabbix组件

    1.3.1 安装zabbix-server

    yum install zabbix-proxy-mysql -y

    2.导入zabbix proxy的初始数据库schema和数据

    zcat /usr/share/doc/zabbix-proxy-mysql-4.0.11/schema.sql.gz | mysql -u zabbix -p ZAbbix@123

    3.为zabbix-proxy配置mysql数据库

    修改zabbix-proxy.conf配置文件

    vi /etc/zabbix/zabbix-proxy.conf
    Server=192.168.4.67    #同步指向的server端的IP,非本地IP。可以是server端的主机域名,但要确保proxy端解析server的域名,并且网络可达
    Hostname=zabbix-proxy-01  #proxy本地的名称,此名称需要与将来在server端的WEB页面上的代理程序名称一致,名称自定义
    DBHost=localhost            
    DBName=zabbix   
    DBUser=zabbix                
    DBPassword=ZAbbix@123
    DBPort=3306
    DBSocket=/data/mysql/mysql.sock
    LogFile=/log/zabbix/zabbix_proxy.log
    

    4. 运行以下命令启动zabbix-proxy进程

    systemctl start zabbix-proxy
    systemctl enable zabbix-proxy
    

    5. 在zabbix-server web页面端进行配置agent代理程序

    填写proxy的名称及地址

    avatar

    在配置监控主机的时候,选择proxy即可

    avatar

    四. zabbix-agent的安装和配置

    1. 安装zabbix-agent

    yum install zabbix-agent -y

    2. 配置zabbix-agent

    安装完成后配置文件一般在 /etc/zabbix/zabbix_agentd.conf,打开把里面内容全部清空然后加入

    PidFile=/var/run/zabbix/zabbix_agentd.pid
    LogFile=/log/zabbix/zabbix_agentd.log  #错误日志
    LogFileSize=0
    ListenPort=10050  #启动监听端口
    StartAgents=3 #被动模式下选择,主动模式则为0
    ListenIP=0.0.0.0 #监听所有IP
    Server=192.168.4.67 #被动模式下必填,将zabbix-server端的ip填入
    #ServerActive=192.168.4.67 #主动模式下填写
    Hostname=zabbix-agent-01 #本机的hostname,此值必须与zabbix的网页上创建的主机名一致即可
    Include=/etc/zabbix/zabbix_agentd.d/
    

    3. 启动zabbix-agent

    systemctl start zabbix-agent
    systemctl enable zabbix-agent
    

    五. 问题及处理方法

    1 导入mysql数据报错ERROR 1046 (3D000) at line 1 No database selected

    解决办法:

    1.先把原始的数据库压缩包备份

    cp /usr/share/doc/zabbix-server-mysql-4.0.9/create.sql.gz create.sql.gz-backup
    cd /usr/share/doc/zabbix-server-mysql-4.0.9/
    

    2.解压数据库
    gunzip create.sql.gz

    3.安装nano编辑数据库信息
    yum -y install nano

    用nano打开编辑数据库信息
    nano create.sql

    在第一行加上

    USE zabbix;

    4.用gzip命令把create.sql文件压缩成.gz格式

    gzip create.sql

    5.然后重新导入MySQL数据库即可

    zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p

    2. 中文乱码问题

    在windows的C:WindowsFonts目录中找个字体SIMFANG.TTF
    将后缀改成小写ttf并复制到/usr/share/zabbix/assets/fonts目录下

    mv SIMFANG.TTF /usr/share/zabbix/assets/fonts/SIMFANG.ttf

    修改defines.inc.php配置文件
    vim /usr/share/zabbix/include/defines.inc.php

    修改这两个地方(大概是69行和114行)

    define('ZBX_FONT_NAME', 'SIMFANG');
    define('ZBX_GRAPH_FONT_NAME',           'SIMFANG'); // font file name
    

    刷新页面

  • 相关阅读:
    JS中利用正则表达式提取一个字符串中的子字符串的方法
    Xcode的环境变量列表
    在未安装Visual Studio 2012的服务器上使用MSBuild以文件系统方式发布ASP.NET MVC系统
    使Web API支持二级实体操作,兼对RESTFul风格API设计的疑惑。
    忽略大小写的字符串包含测试
    Entity Framework里不用查询直接更新的办法
    iOS里生成灰化(黑白)图像
    微信小程序开发调试工具
    微信小程序产品定位及功能介绍
    微信小程序DEMO初体验
  • 原文地址:https://www.cnblogs.com/Doc-Yu/p/12084900.html
Copyright © 2011-2022 走看看