首页 > 其他分享 >Zabbix的详细安装部署,及安装过程中遇到的问题及解决办法。

Zabbix的详细安装部署,及安装过程中遇到的问题及解决办法。

时间:2023-06-20 16:25:31浏览次数:43  
标签:解决办法 root zabbix server Zabbix mysql password 安装

Zabbix的详细安装部署

1.架构
Zabbix 由几个主要的功能组件组成,其职责如下所示。

SERVER

Zabbix server 是 Zabbix agent 向其报告可用性、系统完整性信息和统计信息的核心组件。是存储所有配置信息、统计信息和操作信息的核心存储库。

数据库

所有配置信息以及 Zabbix 收集到的数据都被存储在数据库中。

WEB 界面

为了从任何地方和任何平台轻松访问 Zabbix ,我们提供了基于 web 的界面。该界面是 Zabbix server 的一部分,通常(但不一定)和 Zabbix server 运行在同一台物理机器上。

PROXY

Zabbix proxy可以替 Zabbix server 收集性能和可用性数据。Zabbix proxy 是 Zabbix 环境部署的可选部分;然而,它对于单个 Zabbix server 负载的分担是非常有益的。

AGENT

Zabbix agents 部署在被监控目标上,用于主动监控本地资源和应用程序,并将收集的数据发送给 Zabbix server。
————————————————

2.安装

记得先安装vim编辑器、wget下载工具、:

yum -y install vim

yum -y install wget

yum -y install net-tools

netstat -tunpl 端口查看必备工具:安装net-tools

了解了架构,我们开始进行安装,首先安装zabbix的存储库:

1.所有机器关闭防火墙和selinux
setenforing 0 (修改配置文件关闭)
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
systemctl stop firewalld.service

2.准备两台机器,一台用做server,一台用做agent,mysql部署在server端的机器上。
server ip:192.168.8.139       host:zabbix-server

node ip:192.168.8.140       host:zabbix-agent (使用agent2客户端和snmp2 协议链接)

3.在192.168.8.139 安装zabbix的存储库
[root@zabbix-server ~]#rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
[root@zabbix-server ~]# yum clean all  #清除YUM缓存

 

如果出现下载失败,或者没有反应,可用手动下载下来后在安装

 

 

 

4.安装 Zabbix 服务器和代理
[root@zabbix-server ~]# yum install zabbix-server-mysql zabbix-agent -y

5.安装 Zabbix 前端
[root@zabbix-server ~]# yum install centos-release-scl -y

编辑文件 /etc/yum.repos.d/zabbix.repo 并启用 zabbix-frontend 存储库。

[zabbix-frontend]
...
enabled=1
...

 

6.安装 Zabbix 前端包
[root@zabbix-server ~]# yum -y install zabbix-web-mysql-scl zabbix-apache-conf-scl

7.  创建初始数据库
[root@zabbix-server ~]# wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

上面的地址如果不行,可用使用下面的地址,注意版本

 wget http://repo.mysql.com/mysql80-community-release-el7-5.noarch.rpm

[root@zabbix-server ~]#yum -y install mysql80-community-release-el7-3.noarch.rpm       

centos彻底卸载mysql(不保留数据)
centos彻底卸载mysql(不保留数据)
1、 rpm -qa | grep -i mysql

查找已经安装的mysql.

MySQL-server-5.6.43-1.el6.x86_64

MySQL-client-5.6.43-1.el6.x86_64

MySQL-devel-5.6.43-1.el6.x86_64

以上三个就是我安装的mysql.

2、 yum -y remove MySQL-*

网上的一般用rpm -e 的命令删除mysql,这样表面上删除了mysql,可是mysql的一些残余程序仍然存在,并且通过第一步的方式也查找不到残余,而yum命令比较强大,可以完全删除mysql.(ps:用rpm删除后再次安装的时候会提示已经安装了,这就是rpm没删除干净的原因)

3、 find / -name mysql

查找mysql的一些目录,把所有出现的目录统统删除.可以使用rm -rf 路径,删除时请注意,一旦删除无法恢复。

4、rm -rf /etc/my.cnf

这个是删除配置文件

5、 rm -rf /root/.mysql_sercret

删除mysql的默认密码,如果不删除,以后安装mysql这个sercret中的默认密码不会变,使用其中的默认密码就可能会报类似Access denied for user ‘root@localhost’ (using password:yes)的错误.

五步完成之后,这样mysql就全部删除干净了.

vim mysql-community.repo 时,出现空白页面时,主要是数据库未安装,删除已经安装的数据库,再重新安装即可

 

 

[root@zabbix-server ~]#vim /etc/yum.repos.d/mysql-community.repo

打开5.7源地址,关闭8.0源地址,确保下载的数据库是mysql5.7;这里换mariadb也可以

[root@zabbix-server ~]# yum -y install mysql-community-server

mysql在安装后,会初始化生成一个随机密码,我们可以去日志里过滤出来

[root@zabbix-server ~]# systemctl start mysqld

启动mysql服务时出现报错: 
systemctl start mysql.service
错误提示如下:

Failed to start mysqld.service: Unit not found
解决方法如下:
首先需要安装mariadb和mariadb-server

yum -y install mariadb  mariadb-devel  mariadb-server

#以下内容视情况输入:如果mysql启动正常则不用输入。 启动服务 systemctl start mariadb.service 添加到开机启动 systemctl enable mariadb.service 进行一些安全设置,以及修改数据库管理员密码 mysql_secure_installation
yum -y install mariadb  mariadb-devel  mariadb-server
运行安装完成后如果有以下提示,解决办法如下:

执行以下命令

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

原因:可能是MySQL GPG 密钥已过期导致,改一下密钥。

 

 

mysql在安装后,会初始化生成一个随机密码,我们可以去日志里过滤出来 

[root@zabbix-server ~]# systemctl start mysqld   #现在运行mysql服务就成功了。

[root@zabbix-server ~]# grep 'password' /var/log/mysqld.log

  修改mysql密码:

登录mysql后,进行修改密码

mysql -uroot -ps0bsq6lIay:h

mysql执行语句报错,错误代码:1820

mysql执行语句报错

mysql> use mysql;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

    提示要用ALTER USER修改密码才可以 但是如果想要设置非常简单的密码,比如123456会提示密码不符合要求

mysql> alter user 'root'@'localhost' identified by '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

/ /  但是修改这个参数会报错,没有这个系统变量
mysql> set global validate_password_policy=0;
ERROR 1193 (HY000): Unknown system variable 'validate_password_policy'

添加参数

    这个时候就得去修改一下mysql的配置文件

[root@zheng ~]# vi /etc/my.cnf
[mysqld]      ## 在mysqld文本段里添加这两行
#添加密码验证插件
plugin-load-add=validate_password.so

#服务器在启动时加载插件,并防止在服务器运行时删除插件
validate-password=FORCE_PLUS_PERMANENT


"/etc/my.cnf" 34L, 1167C written
[root@zheng ~]# systemctl restart mysqld            / /  修改完重启mysql
[root@zheng ~]# mysql -uroot -p
Enter password:   密码123

修改参数值

    修改validate_password_policy参数的值
    validate_password_length(密码长度)参数默认为8,我们修改为1

mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)

mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)

mysql> alter user 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.00 sec)

   

mysql安装成功

mysql> show databases;        /  /  这里就可以正常使用了
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

    这里说一下,我这用的是5.7版本的,mysql8.0是不支持这么修改的

mysql> status
--------------
mysql  Ver 14.14 Distrib 5.7.30, for Linux (x86_64) using  EditLine wrapper

Connection id:          5
Current database:
Current user:           root@localhost
SSL:                    Not in use
Current pager:          stdout
Using outfile:          ''
Using delimiter:        ;
Server version:         5.7.30
Protocol version:       10
Connection:             Localhost via UNIX socket
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    utf8
Conn.  characterset:    utf8
UNIX socket:            /var/lib/mysql/mysql.sock
Uptime:                 1 hour 58 min 34 sec

Threads: 1  Questions: 26  Slow queries: 0  Opens: 106  Flush tables: 1  Open tables: 99  Queries per second avg: 0.00

8.0mysql版本修改参数设置

mysql>  set global validate_password.policy=0;
mysql>  set global validate_password.length=1;

 

mysql给root开启远程访问权限

注意以下命令是再mysql命令下输入:

use mysql;

select  User,authentication_string,Host from user;

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';

flush privileges;

 

 

创建zabbix数据库,并创建数据库用户zabbix和密码Zabbix@2021
刷新权限
退出
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all on zabbix.* to zabbix@localhost identified by 'Zabbix@2021';
mysql> flush privileges;
mysql> quit;
在 Zabbix 服务器主机上导入初始模式和数据。系统将提示您输入新创建的密码。

[root@zabbix-server ~]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Enter password: //此处输入上面创建用户时,设置的密码,回车导入数据;

可再次进去到数据库,确认zabbix库中有数据生成;

等待数据库初始化导入。

mysql> show databases; #查询mysql中有那些数据库。
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| zabbix             |
+--------------------+
5 rows in set (0.01 sec)

mysql> use zabbix  #进入zabbix数据库


mysql> show tables;#查询zabbix数据库中有那些表。
quit; #退出数据库
8.为 Zabbix 服务器配置数据库
编辑文件 /etc/zabbix/zabbix_server.conf

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=Zabbix@2021

可用使用命令查看有用的内容,可用直接排除掉#注释文件和空格
grep -Ev '^#|^$' /需要查询文件的路径,例如
grep -Ev '^#|^$'  /etc/zabbix/zabbix_server.conf
这样就只会显示有用的信息

 

9.为 Zabbix 前端配置 PHP
编辑文件/etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf,取消注释并为您设置正确的时区。

php_value[date.timezone] = Asia/Shanghai
10.启动 Zabbix 服务器和代理进程
[root@zabbix-server ~]# systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
[root@zabbix-server ~]# systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm

访问http://192.168.8.139/zabbix

 

 

 

 

 

 

出现以下登录界面,

Zabbix监控平台有默认管理员用户;

默认用户名Admin,密码为zabbix;

 

 

解决报错zabbix service is not running:the information displayed may not be current
1、进入服务器,先看一下zabbix server的状态,嘿呀哈,还确实没运行,状态显示为FAILED
systemctl status zabbix-server

 

2、原因分析:可能是SELinux安全子系统拦截了。

3、解决方法:

①将zabbix-server加入到SELinux的规则内;

②关闭SELinux安全子系统;

以我性子,万事不求人,我喜欢主动;直接选择关闭SELinux

4、临时关闭和永久关闭,看需求选择
setenforce 0 //临时关闭

5.永久关闭需要修改配置文件:

vi /etc/selinux/config

将SELINUX=enforcing的值修改为disabled。

修改后按 esc 退出,然后再输 :wq,即保存并退出;然后重启服务器就OK啦

 systemctl restart zabbix-server

日志查看

tailf /var/log/zabbix/zabbix_server.log

页面显示为英文,可以设置为中文
Admin用户,可以设置任何用户的语言
设置自己的语言如下图

 

 

 

这样我们的zabbix的一个安装就完成了。下一章介绍客户端使用 agent2 和 snmp v2 协议上线。



 

标签:解决办法,root,zabbix,server,Zabbix,mysql,password,安装
From: https://www.cnblogs.com/jjsunxing/p/17493545.html

相关文章

  • Origin 2022 下载与图文安装教程(附安装包)
    解压和安装前先关闭杀毒软件(WIN8/10系统还需要关闭自带杀毒软件Windowsdefender),防止误杀激活补丁,导致破解失败本软件适用于Win7以上系统下载安装包地址https://pan.baidu.com/s/1jmK7-X-GrIzHfP3_o2-mPg?pwd=50181.把Origin资源从网盘下载到电脑上面,右键压缩包选择解压到当......
  • windows环境下安装RabbitMQ(超详细)
    windows环境下安装RabbitMQ(超详细) https://blog.csdn.net/qq_25919879/article/details/113055350luckySnow-julyo已于2023-03-2116:26:29修改66281 收藏755分类专栏:rabbitmq文章标签:javarabbitmqerlang后端消息队列版权rabbitmq专栏收录该内容1篇文章9订阅......
  • Zabbix“专家坐诊”第196期问答汇总
    问题一Q:统计一个主机群组里,值为A的某个监控项的个数,函数应该怎么写?A:参考:https://www.zabbix.com/documentation/6.0/zh/manual/config/items/itemtypes/calculated/aggregate。Q:文档示例没有类似的,可以写个范例吗?A:count函数只能针对单一主机,count_foreach聚合函数只能统计监控项名......
  • Adobe_Illustrator_2023_27.6.0新增功能_安装_下载
    AdobeIllustrator2023最新爱国版(简称Ai、一键式安装、永久使用)是一款由Adobe公司推出的矢量绘图软件,被广泛用于平面设计、插画、网页设计、多媒体等领域。该软件拥有高度精确的矢量绘图能力,可以输出各种清晰度的图像,因此备受设计师的喜爱和青睐。2023年5月版(版本27.6)桌面版......
  • Windows 2008服务器多界面和IIS的安装教程 140.210.16.x
    当你在使用服务器时是否有遇到这样一个问题?当你正在服务器里进行工作时,突然一个小伙伴在没有告知你的情况下进入了服务器里,导致你服务器失去连接了,这种情况是非常常见的现象。主要原因就是因为服务器没有安装多界面,服务器多开界面是占用的同一台服务器的资源,服务器多开数量没有限制......
  • 解决zabbix图形页面乱码
    安装字体yum-yinstallwqy-microhei-fonts修改字体\cp/usr/share/fonts/wqy-microhei/wqy-microhei.ttc/usr/share/fonts/dejavu/DejaVuSans.ttf注:\cp表示还原命令原意,直接cp=cp-i,\cp=只用cpTRANSLATEwithxEnglishArabicHebrewPolishBulg......
  • 安装算量设备入墙_用于开关插座自动伸入墙体
    鹏业安装算量软件设备入墙功能,用于开关插座自动伸入墙体操作步骤1.设备入墙2.选择需要入墙的开关插座3.识别墙体4.根据提示在图上选中墙体边线注意点:建筑底图一般是整块需要用分解功能先分解后再做入墙安装算量软件中的操作1.点击设备入墙功能按钮2.在弹出框中选择需要入墙的设备......
  • 网安--在谷歌浏览器中安装插件
    1、在https://crxdl.com/中先下载插件包2、有两种方法第一种可以将下载下来的安装包解压出来的crx文件直接拖入这个页面,但是会出现报错 如果报错使用第二种方法将解压后的crx文件先压缩(改名字并且后缀改为zip)再解压 在这里将解压后的文件加入扩展程序 ......
  • [ERROR] Aborting 安装mysql5.7报错
    2023-06-20T03:17:11.632401Z0[ERROR]Fatalerror:Can'topenandlockprivilegetables:Table'mysql.user'doesn'texist2023-06-20T03:17:11.632414Z0[ERROR]Fatalerror:FailedtoinitializeACL/grant/timezonesstructuresorfailed......
  • Ubuntu22.04安装FFmpeg
    参考文章https://phoenixnap.com/kb/install-ffmpeg-ubuntu依次输入以下三个命令即可sudoaptupdate&&sudoaptupgradesudoaptinstallffmpegffmpeg-version 安装好以后可以通过以下命令验证一下:ffplay 视频文件 看能否正常播放  参考文章复制粘贴如下:I......