操作系统:

[root@mysql ~]# cat /etc/redhat-release

CentOS Linux release 7.5.1804 (Core)

Mysql :     版本5.7.23  192.168.75.251

Zabbix Server:版本3.4.12  192.168.75.250

一、安装Mysql

1.1下载mysql

关闭防火墙

# systemctl   stop firewalld

# systemctl   disable  firewalld

vi /etc/selinux/config

SELINUX=enforcing 改为 SELINUX= disabled

Centos7 默认数据库为mariadb ,先卸载

rpm –qa |grep   mariadb

mariadb-libs-5.5.56-2.el7.x86_64

rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

这个版本需要boost 1.9,也要下载

[root@mysql soft]# ll

total 132444

-rw-r--r-- 1 root root 83709983 Aug 10 10:26 boost_1_59_0.tar.gz

-rw-r--r-- 1 root root 51907462 Aug 10 10:26 mysql-5.7.23.tar.gz

添加mysql用户,

groupadd mysql

useradd -g mysql -s /sbin/nologin mysql

1.2安装依赖包

yum install -y cmake bison bison-devel libaio-devel gcc gcc-c++ git  ncurses-devel

1.3编译

解压mysql ,把boost的压缩版放到解压后的mysql目录内

tar xzvf mysql-5.7.23.tar.gz

mv boost_1_59_0.tar.gz   mysql-5.7.23

进入MySQL源文件目录,新建configure做为编译目录,并进入该目

cd mysql-5.7.23

mkdir  configure

cd configure

使用cmake进行生成编译环境,

cmake .. -DBUILD_CONFIG=mysql_release \

-DINSTALL_LAYOUT=STANDALONE \

-DCMAKE_BUILD_TYPE=RelWithDebInfo \

-DENABLE_DTRACE=OFF \

-DWITH_EMBEDDED_SERVER=OFF \

-DWITH_INNODB_MEMCACHED=ON \

-DWITH_SSL=bundled \

-DWITH_ZLIB=system \

-DWITH_PAM=ON \

-DCMAKE_INSTALL_PREFIX=/var/mysql/ \

-DINSTALL_PLUGINDIR="/var/mysql/lib/plugin" \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_EDITLINE=bundled \

-DFEATURE_SET=community \

-DCOMPILATION_COMMENT="MySQL Server (GPL)" \

-DWITH_DEBUG=OFF \

-DWITH_BOOST=..

安装

make && make install

修改配置文件

vim /etc/my.cnf

[mysqld]

datadir=/var/lib/mysql

socket=/var/mysql/mysql.sock

port=3306

log_error=/var/mysql/log/error.log

basedir=/var/mysql/

[client]

socket=/var/mysql/mysql.sock

chown  mysql.mysql   /etc/my.cnf

创建日志文件

mkdir -p /var/mysql/log

touch /var/mysql/log/error.log

touch /var/mysql/mysql.sock

chown  -R mysql.mysql  /var/mysql/

1.4初始化

#/var/mysql/bin/mysqld  --initialize --user=mysql

查看数据文件是否生成

#ll /var/lib/mysql

total 110628

-rw-r----- 1 mysql mysql       56 Aug 10 11:06 auto.cnf

-rw-r----- 1 mysql mysql      417 Aug 10 11:06 ib_buffer_pool

-rw-r----- 1 mysql mysql 12582912 Aug 10 11:06 ibdata1

-rw-r----- 1 mysql mysql 50331648 Aug 10 11:06 ib_logfile0

-rw-r----- 1 mysql mysql 50331648 Aug 10 11:06 ib_logfile1

drwxr-x--- 2 mysql mysql     4096 Aug 10 11:06 mysql

drwxr-x--- 2 mysql mysql     8192 Aug 10 11:06 performance_schema

drwxr-x--- 2 mysql mysql     8192 Aug 10 11:06 sys

查看日志文件是否生成

# ll  /var/mysql/log

临时密码生成放在  error.log中

# cat /var/mysql/log/error.log

2018-08-10T03:06:22.922254Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

2018-08-10T03:06:24.600401Z 0 [Warning] InnoDB: New log files created, LSN=45790

2018-08-10T03:06:24.853258Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.

2018-08-10T03:06:24.915246Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 5dbf9eac-9c4a-11e8-8768-000c29a48522.

2018-08-10T03:06:24.916709Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.

2018-08-10T03:06:24.917772Z 1 [Note] A temporary password is generated for root@localhost: NS0+>RzwvHWl

1.5启动

修改初始密码、修改环境变量

从模板文件中复制启动文件:

cp /var/mysql/support-files/mysql.server /etc/init.d/mysqld

修改启动文件:

vim /etc/init.d/mysqld

找到如下二行:

basedir=

datadir=

修改为:

basedir=/var/mysql/

datadir=/var/lib/mysql

更改权限

#chown  -R mysql.mysql  /var/mysql   /var/lib/mysql

启动

/etc/init.d/mysqld start

ln -s /var/mysql/bin/mysql /usr/bin

配置MySQL环境变量:

vim /root/.bash_profile

找到下面一行:

PATH=$PATH:$HOME/bin

修改为:

PATH=$PATH:$HOME/bin:/var/mysql/bin

利用上面生成的临时密码,登录

# mysql  –u root  –p  NS0+>RzwvHWl

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 6

Server version: 5.7.23

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

更改初始密码

mysql> alter user 'root'@'localhost' identified by '123456';

二、安装Zabbix Server

2.1 安装php

安装php7.1版本,zabbix3.0版本要求php5.4及以上。

先查看本地php版本

php -v

检查当前php的安装包

yum list installed | grep php

将本地php安装包卸载干净

yum remove php*

默认的yum源无法升级PHP,需要添加第三方yum源,我们选择webtatic库

rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

安装php7.1

yum install -y php71w

安装相关插件

yum install -y php71w-fpm php71w-opcache php71w-cli php71w-gd php71w-imap php71w-mysqlnd php71w-mbstring php71w-mcrypt php71w-pdo php71w-pecl-apcu php71w-pecl-mongodb php71w-pecl-redis php71w-pgsql php71w-xml php71w-xmlrpc php71w-devel mod_php71w   php71w-ldap   php71w-bcmath

修改PHP的配置参数

vim /etc/php.ini

date.timezone= Asia/Shanghai

max_execution_time = 300

post_max_size = 32M

memory_limit = 128M

mbstring.func_overload = 1

max_input_time = 300

Session调整权限,

chmod  -R 777 /var/lib/php/session/

2.2 安装zabbix

安装依赖包

yum -y install gcc* make  curl curl-devel net-snmp  net-snmp-devel perl-DBI httpd mariadb* mysql-devel libxml2-devel curl-devel unixODBC-devel net-snmp-devel OpenIPMI-devel openldap openldap-devel libevent-devel  java-devel  libssh2-devel

创建zabbix用户和组

groupadd zabbix

useradd -g zabbix zabbix

编译、安装

tar zxvf zabbix-3.4.12.tar.gz

cd zabbix-3.4.12/

./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --enable-ipv6 --with-mysql --with-net-snmp --with-libcurl --with-openipmi --with-unixodbc --with-ldap --with-ssh2 --enable-java

make && make install

chown  -R   zabbix.zabbix /usr/local/zabbix

修改zabbix配置文件

vi /usr/local/zabbix/etc/zabbix_server.conf

LogFile=/tmp/zabbix_server.log

DebugLevel=3

DBHost=192.168.75.251    #server和数据库分离的写法

DBName=zabbix

DBUser=zabbix

DBPassword=zabbix

DBSocket=/var/mysql/mysql.sock

DBPort=3306

StartPollers=10

Timeout=4

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts

LogSlowQueries=3000

CacheSize=1024M

后期配置文件的参数,根据需求做调整。

把zabbix程序包中的几个sql文件传到上面的mysql服务器,导入数据库文件

[root@zabbix ~]# cd /opt/soft/zabbix-3.4.12/database/mysql

[root@zabbix mysql]# ll

total 4876

-rw-r--r--. 1 1001 1001 2877497 Jul 30 19:41 data.sql

-rw-r--r--. 1 1001 1001 1978341 Jul 30 19:41 images.sql

-rw-r--r--. 1 1001 1001  134791 Jul 30 19:41 schema.sql

[root@zabbix mysql]# scp *  root@192.168.75.251:/opt/

下面在mysql(192.168.75.251)服务器上操作

#mysql -u root –p

Enter password:

创建zabbix数据库,字符集设置为utf8

mysql>create database zabbix character set utf8 collate utf8_bin;

在mysql数据库中创建zabbix用户,赋予zabbix用户对zabbix数据库的全部权限,允许zabbix服务器远程访问mysql

mysql>GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@192.168.75.250 IDENTIFIED BY 'zabbix';

mysql>GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost  IDENTIFIED BY 'zabbix';

mysql> flush privileges ;

mysql> show databases  ;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

| sys                |

| zabbix             |

+--------------------+

5 rows in set (0.00 sec)

导入数据文件,在控制台操作

#mysql   -u zabbix   -p zabbix <schema.sql

#mysql   -u zabbix   -p zabbix <images.sql

#mysql   -u zabbix   -p zabbix <data.sql

2.3 zabbix web部署

回到Zabbix Server主机操作。在上面已经安装好httpd , 创建apache下创建zabbix目录

mkdir /var/www/html/zabbix

拷贝zabbix包中的web界面到apache zabbix目录下

\cp–rf  /opt/soft/zabbix-3.4.12/frontends/php/* /var/www/html/zabbix/

配置web安全

chown -R apache.apache /var/www/html/zabbix

chmod a+x  /var/www/html/zabbix/conf/

拷贝zabbix包中服务启动脚本(server/agentd)到linux系统服务启动目录

cp  /opt/soft/zabbix-3.4.12/misc/init.d/fedora/core/zabbix_server  zabbix_agentd/etc/init.d/

修改/etc/init.d/zabbix_server和/etc/init.d/zabbix_agentd

BASEDIR=/usr/local修改成

BASEDIR=/usr/local/zabbix/

设置开机启动

systemctl   enable httpd

systemctl  enable zabbix_server

systemctl  enable zabbix_agentd

/etc/init.d/zabbix_server start

/etc/init.d/zabbix_agentd start

systemctl start httpd

2.4 web服务初始化

http://192.168.75.250/zabbix/setup.php

连接数据库设置,写mysql服务器所在机器,端口,数据库名称,用户、密码

三、安装Zabbix Proxy

首先,在proxy机器上安装mysql ,跟上面的安装步骤一样,只是在导入mysql文件时,只导入一个文件,

#mysql –uzabbix –p zabbix <schema.sql

安装依赖包

yum -y install gcc* make  curl curl-devel net-snmp  net-snmp-devel perl-DBI httpd mariadb* mysql-devel libxml2-devel curl-devel unixODBC-devel net-snmp-devel OpenIPMI-devel openldap openldap-devel libevent-devel java-devel  libssh2-devel

创建zabbix用户和组

groupadd zabbix

useradd -g zabbix zabbix

编译、安装

tar zxvf zabbix-3.4.12.tar.gz

cd zabbix-3.4.12/

./configure --prefix=/opt/server/zabbix_proxy --enable-proxy --enable-agent --enable-ipv6 --with-mysql --with-net-snmp --with-libcurl --with-openipmi --with-unixodbc --with-ldap --with-ssh2 --enable-java

make && make install

chown  -R   zabbix.zabbix /opt/server/zabbix_proxy

配置文件修改

Vi /usr/local/zabbix/etc/zabbix_proxy.conf

Server=192.168.75.250

ServerPort=10051

Hostname=zabbix_proxy

LogFile=/tmp/zabbix_proxy.log

DBHost=localhost        #因为mysql和proxy安装在同一台机器

DBName=zabbix

DBUser=zabbix

DBPassword=zabbix

DBSocket=/var/mysql/mysql.sock

ConfigFrequency=60

DataSenderFrequency=60

StartPollers=5

Timeout=4

LogSlowQueries=3000

启动proxy(要加入到开机自启)

#/opt/server/zabbix_proxy/sbin/zabbix_proxy-c /opt/server/zabbix_proxy/etc/zabbix_proxy.conf

systemctl  enable zabbix_proxy

四、启动zabbix_agentd客户端

同上,编译安装zabbix时,客户端也一起编译了,把/usr/local 下面的zabbix目录拷贝到客户端,

修改配置文件

vi /usr/local/zabbix/etc/zabbix_agentd.conf

Server=zabbix_proxy_IP            #建议所以客户端都挂在proxy上,扩展性强

Hostname=zabbix_agentd_hostname  #填写客户端的主机名

启动(要加入到开机自启)

/usr/local/zabbix/sbin/zabbix_agentd   -c   /usr/local/zabbix/etc/zabbix_agentd.conf

echo "/usr/local/agent/sbin/zabbix_agentd -c /usr/local/agent/etc/zabbix_agentd.conf" >> /etc/rc.local

五、Web管理

添加监控主机

选择主机监控模版

主机监控成功

Zabbix安装部署实践的更多相关文章

  1. 原创:CentOS 环境中 Zabbix 3.4 的安装部署实践

    IT管理工作中,如果没有对服务器.网络设备.服务.进程.应用等的监控,往往是用户发送问题报告后才知道出了问题.事后救火显得被动,不能从容面对问题. 才有了部署一套网络监控系统的想法,机缘巧合下结识了Z ...

  2. CentOS下Zabbix安装部署及汉化

    搭建环境:Centos6.5_x86_64,Zabbix2.4.5,epel 源 服务端: 1.安装开发软件包yum -y groupinstall "Development Tools&q ...

  3. 详解zabbix安装部署(Server端篇)

    原文:http://blog.chinaunix.net/uid-25266990-id-3380929.html Linux下常用的系统监控软件有Nagios.Cacti.Zabbix.Monit等 ...

  4. 【原创 Hadoop&Spark 动手实践 1】Hadoop2.7.3 安装部署实践

    目录: 第一部分:操作系统准备工作: 1. 安装部署CentOS7.3 1611 2. CentOS7软件安装(net-tools, wget, vim等) 3. 更新CentOS7的Yum源,更新软 ...

  5. Zabbix安装部署(CentOS系统下)

    zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统 ...

  6. zabbix安装部署(server部分)

    Linux下常用的系统监控软件有Nagios.Cacti.Zabbix.Monit等,这些开源的软件,可以帮助我们更好的管理机器,在第一时间内发现,并警告系统维护人员. 今天开始研究下Zabbix,使 ...

  7. 详解zabbix安装部署(Server端篇) (转)

    Linux下常用的系统监控软件有Nagios.Cacti.Zabbix.Monit等,这些开源的软件,可以帮助我们更好的管理机器,在第一时间内发现,并警告系统维护人员. 今天开始研究下Zabbix,使 ...

  8. Zabbix安装部署

    zabbix服务器端配置:(10.27.98.29服务器端) 1.安装lamp环境 yum -y install autoconf curl-devel gcc gcc-c++ httpd httpd ...

  9. zabbix 安装部署

    环境:CentOS7 机器 两台  分别为server 和 client zabbix下载网址:http://repo.zabbix.com 本次操作使用zabbix4.0 网址:http://rep ...

随机推荐

  1. Mysql 为什么要选择 B+Tree

    算法对比 二叉树 当我查找 8 的时候需要走五步 红黑树 当我查询8的时候需要四次 相对于二叉树有了一些优化 没有无限延伸.红黑树的深度会很深(深度不可控制) hash 数据量大的话 查询很快(不能范 ...

  2. Windows常用操作

    目录 查询IP地址 常用快捷键 显示文件后缀名 查询IP地址 1.进入到dos界面 2.输入命令: ipconfig 常用快捷键 快捷键 作用 win+E 打开计算机 win+R 打开运行 win+R ...

  3. Windows快捷方式绑马

    0x01前言 windows的shell32在处理控制面板程序的快捷方式文件时,存在一个漏洞,可以加载硬盘上的任意DLL文件,即可执行任意代码. 之前看到一款俄罗斯黑阔写的的快捷方式下载木马并运行的生 ...

  4. Meterpreter后渗透之信息收集

    在获得目标的Meterpreter shell后 进行信息收集是后渗透工作的基础 记录一下关于meterpreter 信息收集的使用 环境: kali linux 192.168.190.141 xp ...

  5. 动画讲解TCP

    前言 TCP 三次握手过程对于面试是必考的一个,所以不但要掌握 TCP 整个握手的过程,其中有些小细节也更受到面试官的青睐. 对于这部分掌握以及 TCP 的四次挥手,小鹿将会以动画的形式呈现给每个人, ...

  6. 前端知识点总结——jQuery(下)

    1. 排队和并发 1.并发: 多个css属性同时变化放在一个animate函数内的多个css属性默认并发变化 2.排队: 多个css属性先后变化对同一个元素,先后调用多个动画API,都是排队执行原理: ...

  7. 怎样快速找到某一行代码的git提交记录

    利用notepad++提高问题分析效率,以及快速找到某一行代码的git提交记录 1. 全目录搜索/替换 Notepad++是一款强大的文本编辑工具,当知道大概的关键词但不知道在哪个日志时可以使用not ...

  8. Vue学习系列(三)——基本指令

    前言 在上一篇中,我们已经对组件有了更加进一步的认识,从组件的创建构造器到组件的组成,进而到组件的使用,.从组件的基本使用.组件属性,以及自定义事件实现父子通讯和巧妙运用插槽slot分发内容,进一步的 ...

  9. 使用eclipse在tomcat中设置项目启动的虚拟路径

    很多时候我们在启动项目的时候都会在浏览器输入"localhost:+端口号+项目名称" 其实tomcat是可以省去这种麻烦的,通过设置项目的虚拟路径就可访问项目了 第一步 选择ec ...

  10. 深入全面探究有未经处理的异常: 0xC00000FD: Stack overflow(栈溢出)问题!

    这两天一直遇到标题上的问题,我相信很多朋友在执行代码的时候都会遇到这样的问题,我在网上也找了很多的资料解决这个问题,虽然有些方法能解决,但是总觉得总结的不是很全面,这里我自己在相对全面的总结一下,如果 ...