小白都能看懂的linux系统下安装配置zabbix

lili666 lili666     2022-12-15     335

关键词:

实验环境:

操作系统:Centos 7.6

服务器ip:192.168.10.100

运行用户:root

网络环境:Internet

Zabbix是一个基于web界面的提供分布式系统监控及网络功能的企业级的开源监控工具,做为一个企业运维人员来说,zabbix可以给企业和运维人员带来很大的帮助,zabbix是一个功能非常强大、跨平台、开源的企业级运维管理系统,由2部分构成:zabbix服务端和客户端(agentd),也可以通过系统自带的SNMP来采集数据。

 技术图片

Zabbix可以部署在Windows、Linux、unix、MAC OS等平台上,可以监控任何网络设备、操作系统、中间件、数据库等,做为一个企业的运维技术人来说,监控是非常重要的,确保线上业务能够稳定运行,企业线上运行的和服务器网络设备等多不少,所以,我们可以通过监控发现服务器故障,方便运维人员技术发现问题和解决问题,并且可以通过企业微信、企业QQ、企业钉钉、短信实现报警功能,有故障可以及时的通过管理员;开源的监控系统还有nagios、cacti、ganglia,我们在这里只详细的介绍zabbix监控,不过要想搭建zabbix监控系统还是需要有Linux技术,要有对Linux有所了解并且熟悉一些常见的命令及配置,现在企业运维也是必不可少的,如果想往运维方向发展的可以去了解下《Linux就该这么学》这边教程,里面的内容非常详细,比较适合初学者,如果觉得自己有Linux基础可以参考下面的安装步骤,通过源码来编译部署并配置zabbix企业运维监控系统。

 

1、install php              //通过yum源安装php及一些与php相关的库

# yum install php.x86_64 php-cli.x86_64 php-fpm php-gd php-json php-ldap php-mbstring php-mysqlnd php-xml php-xmlrpc php-opcache php-simplexml php-bcmath.x86_64 -y

 

2、install database         //yum源安装MySQL(Mariadb)数据库服务端和客户端

# yum install mariadb.x86_64 mariadb-devel.x86_64 mariadb-server.x86_64 -y

# systemctl start mariadb.service                       //启动数据库

 

3、初始化数据库

[[email protected] ~]# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB

      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we‘ll need the current

password for the root user.  If you‘ve just installed MariaDB, and

you haven‘t set the root password yet, the password will be blank,

so you should just press enter here.

 

Enter current password for root (enter for none):

OK, successfully used password, moving on...

 

Setting the root password ensures that nobody can log into the MariaDB

root user without the proper authorisation.

 

Set root password? [Y/n] y

New password:

Re-enter new password:

Password updated successfully!

Reloading privilege tables..

 ... Success!

 

By default, a MariaDB installation has an anonymous user, allowing anyone

to log into MariaDB without having to have a user account created for

them.  This is intended only for testing, and to make the installation

go a bit smoother.  You should remove them before moving into a

production environment.

 

Remove anonymous users? [Y/n] y

 ... Success!

 

Normally, root should only be allowed to connect from ‘localhost‘.  This

ensures that someone cannot guess at the root password from the network.

 

Disallow root login remotely? [Y/n] n

 ... skipping.

 

By default, MariaDB comes with a database named ‘test‘ that anyone can

access.  This is also intended only for testing, and should be removed

before moving into a production environment.

 

Remove test database and access to it? [Y/n] n

 ... skipping.

 

Reloading the privilege tables will ensure that all changes made so far

will take effect immediately.

 

Reload privilege tables now? [Y/n] y

 ... Success!

 

Cleaning up...

 

All done!  If you‘ve completed all of the above steps, your MariaDB

installation should now be secure.

 

Thanks for using MariaDB!

 

3、install apache           //yum源安装apache

# yum install httpd.x86_64 -y

4、install zabbix_server             //源码安装zabbix服务端和客户端

# tar -zxvf zabbix-3.4.9.tar.gz && cd zabbix-3.4.9

# groupadd zabbix && useradd -g zabbix Zabbix            //创建zabbix用户及组

#./configure --prefix=/usr/local/zabbix user=zabbix group=zabbix --enable-server --enable-agent --enable-proxy --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2                  //配置编译

# make install                       //编译通过后安装zabbix server

 

5、创建zabbix数据库及zabbix数据库用户并授权

[[email protected] ~]# mysql -u root -p Enter password:  Welcome to the MariaDB monitor. Commands end with ; or \\g. Your MariaDB connection id is 10 Server version: 5.5.47-MariaDB MariaDB Server Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others. Type ‘help;‘ or ‘\\h‘ for help. Type ‘\\c‘ to clear the current input statement.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 [email protected] IDENTIFIED BY "password";

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;Q

uery OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> exit Bye

 

 技术图片

 

6、导入zabbix默认数据库:

#cd /root/zabbix-3.4.9/database/mysql

# mysql -uroot -p zabbix < schema.sql && mysql -uroot -p zabbix < images.sql && mysql -uroot -p zabbix < data.sql

 

7、编辑默认安装配置文件

# vim /usr/local/etc/zabbix_server.conf  

# vim /usr/local/zabbix/etc/zabbix_server.conf

ListenPort=10051                     //监听端口

DBHost=localhost                     //数据库服务器

DBName=Zabbix                        //数据库名

DBUser=Zabbix                        //数据库用户名

DBPassword=password         //数据库密码

 

8、编辑并配置zabbix启动脚本,并设置开机自动启动

#cd /root/zabbix-3.4.9/misc/init.d/tru64

# cp -r /root/zabbix-3.4.9/misc/init.d/tru64/zabbix_* /etc/init.d/

# chmod +x /etc/init.d/zabbix* 

#chown -R zabbix:zabbix /usr/local/zabbix

# cp -r /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/

#/etc/init.d/zabbix_server restart

#/etc/init.d/zabbix_agentd restart

 

9、拷贝zabbix web端文件到apache根目录下面

#cd /root/zabbix-3.4.9/frontends/

# mkdir -p /var/www/html/zabbix/

#cp -ra php/* /var/www/html/zabbix/

 

10、访问web端

http://ip/zabbix

 

错误如下:

l   Minimum required size of PHP post is 16M (configuration option "post_max_size").

l   Minimum required limit on execution time of PHP scripts is 300 (configuration option "max_execution_time").

l   Minimum required limit on input parse time for PHP scripts is 300 (configuration option "max_input_time").

l   Time zone for PHP is not set (configuration parameter "date.timezone").

l   At least one of MySQL, PostgreSQL, Oracle or IBM DB2 should be supported.

l   PHP bcmath extension missing (PHP configuration parameter --enable-bcmath).

l   PHP mbstring extension missing (PHP configuration parameter --enable-mbstring).

l   PHP gd extension missing (PHP configuration parameter --with-gd).

l   PHP gd PNG image support missing.

l   PHP gd JPEG image support missing.

l   PHP gd FreeType support missing.

l   PHP xmlwriter extension missing.

l   PHP xmlreader extension missing.

 技术图片

 

技术图片

 

技术图片

 

 解决步骤:

#vim /etc/php.ini

post_max_size8M16M

max_execution_time30300

max_input_time60300

date.timezone = Asia/Shanghai

 

#systemctl restart httpd.service

 技术图片

 

技术图片

 

技术图片

 

技术图片

 

技术图片

 

 

 

 

 

先下载zabbix.conf.php配置文件,再把下载的zabbix.conf.php配置的配置文件上传到/var/www/html/zabbix/conf/目录下。

 

#systemctl restart httpd.service                     //重启apache 服务

 技术图片

 

11、管理员信息

user/password:Admin/Zabbix           //Zabbix 前端默认用户名和密码,如果是企业使用搭建成功后一定要修改密码,也可以把用户名修改这样安全些。

 

12、client install zabbix_agentd                        //源码编译安装zabbix_agentd客户端

#./configure --prefix=/usr/local/zabbix --enable-agent

# make install

 

13、修改agentd配置文件

# vim /usr/local/zabbix/etc/zabbix_agentd.conf

LogFile=/usr/local/zabbix/log/zabbix_agentd.log

EnableRemoteCommands=0

Server=192.168.10.100

ServerActive=192.168.10.100

Hostname=192.168.10.100

Timeout=30

实战篇:小白都能看懂的linux安装oracle数据库详细教程(代码片段)

作者简介作者:LuciferLiu,中国DBA联盟(ACDU)成员。目前主要从事OracleDBA工作,曾从事Oracle数据库开发工作,主要服务于生产制造,汽车金融等行业。现拥有OracleOCP,OceanBaseOBCA认证,擅长Oracle数据库运维... 查看详情

小白都能看懂的redis讲解--针对单个键操作集锦

1重命名键renamekeynewname可以对键重命名,下面的例子我们创建了一个key为name,value为luke的键值对。然后将name重命名为user,之后查询name就返回nil,而user是可以查到值的。127.0.0.1:6379>setnamelukeOK127.0.0.1:6379>getname"luke"127.0.0.1:6379&... 查看详情

小白都能看懂的实战教程手把手教你pythonweb全栈开发(day4)(代码片段)

大家好,我叫亓官劼(qíguānjié),这个《小白都能看懂的实战教程手把手教你PythonWeb全栈开发》是一个零基础的实战教程,手把手带你开发一套系统,带你了解Pythonweb全栈开发,目前正在连续更新中,... 查看详情

小白都能看得懂的教程一本教你如何在前端实现富文本编辑器(代码片段)

小白都能看得懂的教程一本教你如何在前端实现富文本编辑器博主博客文章内容导航(实时更新)更多优质文章推荐:收藏!最详细的Python全栈开发指南看完这篇你还不会Python全栈开发你来打我!!!一本教你如何在... 查看详情

小白都能看懂的实战教程手把手教你pythonweb全栈开发(day2)(代码片段)

小白都能看懂的实战教程手把手教你PythonWeb全栈开发Flask(PythonWeb)实战系列之在线论坛系统第二讲这是小白都能看懂的实战教程手把手教你PythonWeb全栈开发的第二讲,如果文中有基础知识不太熟悉的话,可以看博主前几期... 查看详情

小白都能看懂的关于mixins机制的理解(代码片段)

前言​在学习Flutter源码的时候,看到各种复杂的mixin和on,为了便于后续Flutter的学习,这里有必要一起来份详细Dart的Mixin机制。什么是mixins首先看看官方文档的定义:Mixinsareawayofreusingaclass’scodeinmultipleclasshierarchie... 查看详情

小白都能看懂的关于mixins机制的理解(代码片段)

前言​在学习Flutter源码的时候,看到各种复杂的mixin和on,为了便于后续Flutter的学习,这里有必要一起来份详细Dart的Mixin机制。什么是mixins首先看看官方文档的定义:Mixinsareawayofreusingaclass’scodeinmultipleclasshierarchie... 查看详情

[图解]小白都能看懂的fasterr-cnn–原理和实现细节(代码片段)

Contents [hide]1 论文原文2 介绍3 Anchors3.1 如何确定一个anchor是正样本还是负样本?4 实现细节5 调试信息6 参考资料论文原文FasterR-CNN:TowardsReal-TimeObjectDetectionwithRegionProposalNetworks介绍  FasterRCNN由RossB.Girshick在2016年提出ÿ 查看详情

小白都能看懂的实战教程手把手教你pythonweb全栈开发(day5)(代码片段)

大家好,我叫亓官劼(qíguānjié),这个《小白都能看懂的实战教程手把手教你PythonWeb全栈开发》是一个零基础的实战教程,手把手带你开发一套系统,带你了解Pythonweb全栈开发,目前正在连续更新中,... 查看详情

小白都能看懂的实战教程手把手教你pythonweb全栈开发(day6)(代码片段)

大家好,我叫亓官劼(qíguānjié),这个《小白都能看懂的实战教程手把手教你PythonWeb全栈开发》是一个零基础的实战教程,手把手带你开发一套系统,带你了解Pythonweb全栈开发,目前正在连续更新中,... 查看详情

小白都能看懂的sql零基础入门,一文带你轻松学会增删改查!(代码片段)

作者简介作者:LuciferLiu,中国DBA联盟(ACDU)成员。目前从事OracleDBA工作,曾从事Oracle数据库开发工作,主要服务于生产制造,汽车金融等行业。现拥有OracleOCP,OceanBaseOBCA认证,擅长Oracle数据库运维开发&#... 查看详情

小白都能看懂的分布式事务与2pc

2PC通信原理分布式事务的原子性什么是2PC2PC提交事务的过程2PC的全局提交规则2PC通信架构集中式2PC通信架构分层2PC通信架构线性2PC通信架构故障恢复站点故障报文丢失总结分布式事务的原子性一提到到事务,一般就会想到它... 查看详情

小学生都能看懂的fft!!!

小学生都能看懂的FFT!!!前言在创新实践重心偷偷看了一天FFT资料后,我终于看懂了一点。为了给大家提供一份简单易懂的学习资料,同时也方便自己以后复习,我决定动手写这份学习笔记。食用指南:本篇受众:如标题所示... 查看详情

小学生都能看懂的残差网络

ResNet残差网络本文适用于初次接触残差网络的小白,只是为了对残差网络有着更好的入门的一篇文章。问题提出:所谓深度学习,大部分人都会认为准确率会随着卷积层的增加而增加,但是随着技术的增加,... 查看详情

小白都能看得懂的教程看完这篇还不会生成随机验证码图片,你来打我!!!(代码片段)

小白都能看得懂的教程一文教你实现生成随机图像验证码大家好,我叫亓官劼(qíguānjié),三本计算机在读,目前在积极准备21计算机考研中,同时也在学习后端开发,准备工作。不敢孤注一掷,... 查看详情

小白也能看懂的laravel核心概念讲解

自动依赖注入什么是依赖注入,用大白话将通过类型提示的方式向函数传递参数。实例1首先,定义一个类:/routes/web.phpclassBar{}假如我们在其他地方要使用到 Bar 提供的功能(服务),怎么办,直接传入参数即可:/routes/web.... 查看详情

零基础都能看懂的stlmap详解(代码片段)

🎈作者:Linux猿🎈简介:CSDN博客专家🏆,C/C++、面试、刷题、算法尽管咨询我,关注我,有问题私聊!🎈关注专栏:C/C++面试通关集锦 (优质好文持续更新中……)... 查看详情

小白也能看懂的dfs算法本质详解(代码片段)

DFS算法的本质引言DFS俗称深搜,是一种常见的算法模型我们通过借助函数递归和递归停止条件的运用实现对数据的高级枚举对于DFS算法而言,最重要的是如何去枚举数据,即如何去搜索?这是在运用DFS之前我们就应该思考的问题... 查看详情