Zabbix的智能运维体系建设实践,超详细Zabbix安装部署详情
yuyutoo 2024-10-15 17:00 3 浏览 0 评论
创作不易,关注、点赞,分享,转发,评论,收藏,谢谢。
Zabbix的智能运维体系建设实践
作为一个完全开源免费的企业级监控解决方案,Zabbix在IT基础监控、网络监控、Server监控和云监控等排名第一(PeerSpot)。
zabbix是一个监控软件,其可以监控各种网络参数,保证企业服务架构安全运营,同时支持灵活的告警机制,可以使得运维人员快速定位故障、解决问题。zabbix支持分布式功能,支持复杂架构下的监控解决方案,也支持web页面,为主机监控提供了良好直观的展现。
zabbix官网地址为https://www.zabbix.com/,页面如下所示:
zabbix架构
Zabbix Server:负责接收Agent发送的报告信息,组织所有配置、数据和操作。
Database Storage:存储配置信息以及收集到的数据。
Web Interface:Zabbix的GUI 接口,通常与Server运行在同一台机器上。
Proxy:可选组件,常用于分布式监控环境中。
Agent:部署在被监控主机上,负责收集数据发送给Server。
Zabbix的工作流程
Agent获取被监控端数据,发送给Server。
Server记录所接收到的数据,存储在Database中并按照策略进行相应操作。
如果是分布式,Server会将数据传送一份到上级Server中。
Web Interface将收集到的数据和操作信息显示给用户。
Zabbix安装部署
Zabbix基础依赖程序安装
安装步骤需要依次完成,包括以下步骤:
- 安装前准备
- Apache2安装
- PHP安装
该步骤使用安装文件包括:
安装前准备
安装前准备包括以下安装步骤:
- 防火墙配置
- RPM配置
- 专属用户创建
防火墙配置
防火墙配置依次完成以下操作:
- 关闭防火墙
使用命令
执行顺序 | 命令 | 说明 |
1 | systemctl stop firewalld | 关闭防火墙 |
执行示意
[root@fuwuqi01 ~]# systemctl stop firewalld |
- 禁止防火墙随系统启动
使用命令
执行顺序 | 命令 | 说明 |
1 | systemctl disable firewalld | 禁止防火墙随系统启动 |
执行示意
[root@fuwuqi01 ~]# systemctl disable firewalld |
执行顺序 | 命令 | 说明 |
1 | sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config | 关闭操作系统强制访问控制系统,禁用SELinux |
- 关闭操作系统强制访问控制系统
执行示意
[root@fuwuqi01 ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config |
RPM包安装
本操作完成操作系统依赖包安装,依赖包包括mysql-devel、gcc、net-snmp-devel、curl-devel、 perl-DBI、libxml2-devel、unixODBC、libtool、gcc-c++、 bison、libaio-devel、cmak、 libnl*、ncurses-devel,其中ncurses-devel需要最后单独安装,操作系统依赖包来源于操作系统镜像rhel-server-7.6-x86_64-dvd.iso。
操作如下:
- 首先将rhel-server-7.6-x86_64-dvd.iso ISO镜像通过FTP方式上传至/tmp目录,然后挂载ISO镜像。本次安装不需要永久挂载镜像文件。
使用命令
执行顺序 | 命令 | 说明 |
1 | mount -t iso9660 -o loop /tmp/rhel-server-7.6-x86_64-dvd.iso /mnt | 从/tmp目录挂载镜像文件rhel-server-7.6-x86_64-dvd.iso到/mnt, |
执行示意
[root@fuwuqi01 ~]# mount -t iso9660 -o loop /tmp/rhel-server-7.6-x86_64-dvd.iso /mnt |
- 创建rhel-server-7.6-x86_64-dvd.iso文件yum源文件配置
使用命令
执行顺序 | 命令 | 说明 |
1 | vi /etc/yum.repos.d/rhel76.repo | 在/etc/yum.repos.d文件目录下创建rhel-server-7.6-x86_64-dvd.iso文件的yum源配置文件rhel76.repo |
2 | [RHEL76] name=RHEL76 baseurl=file:///mnt enabled=1 gpgcheck=0 # yum clean all # yum list | rhel76.repos需要输入的内容 |
执行示意
[root@fuwuqi01 ~]# vi /etc/yum.repos.d/rhel76.repo [RHEL76] name=RHEL76 baseurl=file:///mnt enabled=1 gpgcheck=0 # yum clean all # yum list |
- 安装基础依赖RPM包
使用命令
执行顺序 | 命令 | 说明 |
1 | yum install mysql-devel gcc net-snmp-devel curl-devel perl-DBI libxml2-devel unixODBC libtool gcc-c++ bison libaio-devel cmake libnl* | 安装基础依赖RPM包:mysql-devel、gcc、net-snmp-devel、curl-devel、 perl-DBI、libxml2-devel、unixODBC、libtool、gcc-c++、 bison、libaio-devel、cmak、 libnl*。 |
执行示意
[root@fuwuqi01 ~]# yum install mysql-devel gcc net-snmp-devel curl-devel perl-DBI libxml2-devel unixODBC libtool gcc-c++ bison libaio-devel cmake libnl* Loaded plugins: langpacks, product-id, search-disabled-repos, subscription- : manager This system is not registered with an entitlement server. You can use subscripti on-manager to register. RHEL76 | 4.3 kB 00:00 (1/2): RHEL76/group_gz | 146 kB 00:00 (2/2): RHEL76/primary_db | 4.2 MB 00:00 Package gcc-4.8.5-36.el7.x86_64 already installed and latest version Package perl-DBI-1.627-4.el7.x86_64 already installed and latest version Package libtool-2.4.2-22.el7_3.x86_64 already installed and latest version Package gcc-c++-4.8.5-36.el7.x86_64 already installed and latest version Package bison-3.0.4-2.el7.x86_64 already installed and latest version Package libnl3-3.2.28-4.el7.x86_64 already installed and latest version Package libnl-1.1.4-3.el7.x86_64 already installed and latest version Package libnl3-cli-3.2.28-4.el7.x86_64 already installed and latest version Resolving Dependencies --> Running transaction check ---> Package cmake.x86_64 0:2.8.12.2-2.el7 will be installed ---> Package libaio-devel.x86_64 0:0.3.109-13.el7 will be installed ---> Package libcurl-devel.x86_64 0:7.29.0-51.el7 will be installed RHEL76/filelists_db | 3.4 MB 00:00 ---> Package libnl-devel.x86_64 0:1.1.4-3.el7 will be installed ---> Package libxml2-devel.x86_64 0:2.9.1-6.el7_2.3 will be installed --> Processing Dependency: xz-devel for package: libxml2-devel-2.9.1-6.el7_2.3.x 86_64 --> Processing Dependency: zlib-devel for package: libxml2-devel-2.9.1-6.el7_2.3 .x86_64 ---> Package mariadb-devel.x86_64 1:5.5.60-1.el7_5 will be installed --> Processing Dependency: openssl-devel(x86-64) for package: 1:mariadb-devel-5. 5.60-1.el7_5.x86_64 ---> Package net-snmp-devel.x86_64 1:5.7.2-37.el7 will be installed --> Processing Dependency: elfutils-devel for package: 1:net-snmp-devel-5.7.2-37 .el7.x86_64 --> Processing Dependency: elfutils-libelf-devel for package: 1:net-snmp-devel-5 .7.2-37.el7.x86_64 --> Processing Dependency: lm_sensors-devel for package: 1:net-snmp-devel-5.7.2- 37.el7.x86_64 --> Processing Dependency: rpm-devel for package: 1:net-snmp-devel-5.7.2-37.el7. x86_64 --> Processing Dependency: tcp_wrappers-devel for package: 1:net-snmp-devel-5.7. 2-37.el7.x86_64 ---> Package unixODBC.x86_64 0:2.3.1-11.el7 will be installed --> Running transaction check ---> Package elfutils-devel.x86_64 0:0.172-2.el7 will be installed ---> Package elfutils-libelf-devel.x86_64 0:0.172-2.el7 will be installed ---> Package lm_sensors-devel.x86_64 0:3.4.0-6.20160601gitf9185e5.el7 will be in stalled ---> Package openssl-devel.x86_64 1:1.0.2k-16.el7 will be installed --> Processing Dependency: krb5-devel(x86-64) for package: 1:openssl-devel-1.0.2 k-16.el7.x86_64 ---> Package rpm-devel.x86_64 0:4.11.3-35.el7 will be installed --> Processing Dependency: popt-devel(x86-64) for package: rpm-devel-4.11.3-35.e l7.x86_64 ---> Package tcp_wrappers-devel.x86_64 0:7.6-77.el7 will be installed ---> Package xz-devel.x86_64 0:5.2.2-1.el7 will be installed ---> Package zlib-devel.x86_64 0:1.2.7-18.el7 will be installed --> Running transaction check ---> Package krb5-devel.x86_64 0:1.15.1-34.el7 will be installed --> Processing Dependency: keyutils-libs-devel for package: krb5-devel-1.15.1-34 .el7.x86_64 --> Processing Dependency: libcom_err-devel for package: krb5-devel-1.15.1-34.el 7.x86_64 --> Processing Dependency: libselinux-devel for package: krb5-devel-1.15.1-34.el 7.x86_64 --> Processing Dependency: libverto-devel for package: krb5-devel-1.15.1-34.el7. x86_64 ---> Package popt-devel.x86_64 0:1.13-16.el7 will be installed --> Running transaction check ---> Package keyutils-libs-devel.x86_64 0:1.5.8-3.el7 will be installed ---> Package libcom_err-devel.x86_64 0:1.42.9-13.el7 will be installed ---> Package libselinux-devel.x86_64 0:2.5-14.1.el7 will be installed --> Processing Dependency: libsepol-devel(x86-64) >= 2.5-10 for package: libseli nux-devel-2.5-14.1.el7.x86_64 --> Processing Dependency: pkgconfig(libpcre) for package: libselinux-devel-2.5- 14.1.el7.x86_64 --> Processing Dependency: pkgconfig(libsepol) for package: libselinux-devel-2.5 -14.1.el7.x86_64 ---> Package libverto-devel.x86_64 0:0.2.5-4.el7 will be installed --> Running transaction check ---> Package libsepol-devel.x86_64 0:2.5-10.el7 will be installed ---> Package pcre-devel.x86_64 0:8.32-17.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: cmake x86_64 2.8.12.2-2.el7 RHEL76 7.0 M libaio-devel x86_64 0.3.109-13.el7 RHEL76 13 k libcurl-devel x86_64 7.29.0-51.el7 RHEL76 302 k libnl-devel x86_64 1.1.4-3.el7 RHEL76 621 k libxml2-devel x86_64 2.9.1-6.el7_2.3 RHEL76 1.0 M mariadb-devel x86_64 1:5.5.60-1.el7_5 RHEL76 754 k net-snmp-devel x86_64 1:5.7.2-37.el7 RHEL76 250 k unixODBC x86_64 2.3.1-11.el7 RHEL76 413 k Installing for dependencies: elfutils-devel x86_64 0.172-2.el7 RHEL76 87 k elfutils-libelf-devel x86_64 0.172-2.el7 RHEL76 39 k keyutils-libs-devel x86_64 1.5.8-3.el7 RHEL76 37 k krb5-devel x86_64 1.15.1-34.el7 RHEL76 271 k libcom_err-devel x86_64 1.42.9-13.el7 RHEL76 31 k libselinux-devel x86_64 2.5-14.1.el7 RHEL76 187 k libsepol-devel x86_64 2.5-10.el7 RHEL76 77 k libverto-devel x86_64 0.2.5-4.el7 RHEL76 12 k lm_sensors-devel x86_64 3.4.0-6.20160601gitf9185e5.el7 RHEL76 27 k openssl-devel x86_64 1:1.0.2k-16.el7 RHEL76 1.5 M pcre-devel x86_64 8.32-17.el7 RHEL76 480 k popt-devel x86_64 1.13-16.el7 RHEL76 22 k rpm-devel x86_64 4.11.3-35.el7 RHEL76 107 k tcp_wrappers-devel x86_64 7.6-77.el7 RHEL76 17 k xz-devel x86_64 5.2.2-1.el7 RHEL76 46 k zlib-devel x86_64 1.2.7-18.el7 RHEL76 50 k Transaction Summary ================================================================================ Install 8 Packages (+16 Dependent packages) Total download size: 13 M Installed size: 56 M |
界面显示“Is this ok [y/d/N]:”时输入y然后回车,安装继续进行。
Is this ok [y/d/N]: y Downloading packages: -------------------------------------------------------------------------------- Total 219 MB/s | 13 MB 00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : zlib-devel-1.2.7-18.el7.x86_64 1/24 Installing : elfutils-libelf-devel-0.172-2.el7.x86_64 2/24 Installing : xz-devel-5.2.2-1.el7.x86_64 3/24 Installing : elfutils-devel-0.172-2.el7.x86_64 4/24 Installing : tcp_wrappers-devel-7.6-77.el7.x86_64 5/24 Installing : popt-devel-1.13-16.el7.x86_64 6/24 Installing : rpm-devel-4.11.3-35.el7.x86_64 7/24 Installing : libverto-devel-0.2.5-4.el7.x86_64 8/24 Installing : libsepol-devel-2.5-10.el7.x86_64 9/24 Installing : lm_sensors-devel-3.4.0-6.20160601gitf9185e5.el7.x86_64 10/24 Installing : keyutils-libs-devel-1.5.8-3.el7.x86_64 11/24 Installing : libcom_err-devel-1.42.9-13.el7.x86_64 12/24 Installing : pcre-devel-8.32-17.el7.x86_64 13/24 Installing : libselinux-devel-2.5-14.1.el7.x86_64 14/24 Installing : krb5-devel-1.15.1-34.el7.x86_64 15/24 Installing : 1:openssl-devel-1.0.2k-16.el7.x86_64 16/24 Installing : 1:mariadb-devel-5.5.60-1.el7_5.x86_64 17/24 Installing : 1:net-snmp-devel-5.7.2-37.el7.x86_64 18/24 Installing : libxml2-devel-2.9.1-6.el7_2.3.x86_64 19/24 Installing : libcurl-devel-7.29.0-51.el7.x86_64 20/24 Installing : cmake-2.8.12.2-2.el7.x86_64 21/24 Installing : libaio-devel-0.3.109-13.el7.x86_64 22/24 Installing : unixODBC-2.3.1-11.el7.x86_64 23/24 Installing : libnl-devel-1.1.4-3.el7.x86_64 24/24 RHEL76/productid | 1.6 kB 00:00 Verifying : elfutils-libelf-devel-0.172-2.el7.x86_64 1/24 Verifying : libxml2-devel-2.9.1-6.el7_2.3.x86_64 2/24 Verifying : pcre-devel-8.32-17.el7.x86_64 3/24 Verifying : libcom_err-devel-1.42.9-13.el7.x86_64 4/24 Verifying : keyutils-libs-devel-1.5.8-3.el7.x86_64 5/24 Verifying : elfutils-devel-0.172-2.el7.x86_64 6/24 Verifying : libnl-devel-1.1.4-3.el7.x86_64 7/24 Verifying : zlib-devel-1.2.7-18.el7.x86_64 8/24 Verifying : lm_sensors-devel-3.4.0-6.20160601gitf9185e5.el7.x86_64 9/24 Verifying : rpm-devel-4.11.3-35.el7.x86_64 10/24 Verifying : 1:mariadb-devel-5.5.60-1.el7_5.x86_64 11/24 Verifying : krb5-devel-1.15.1-34.el7.x86_64 12/24 Verifying : unixODBC-2.3.1-11.el7.x86_64 13/24 Verifying : libaio-devel-0.3.109-13.el7.x86_64 14/24 Verifying : libsepol-devel-2.5-10.el7.x86_64 15/24 Verifying : xz-devel-5.2.2-1.el7.x86_64 16/24 Verifying : libverto-devel-0.2.5-4.el7.x86_64 17/24 Verifying : popt-devel-1.13-16.el7.x86_64 18/24 Verifying : cmake-2.8.12.2-2.el7.x86_64 19/24 Verifying : libcurl-devel-7.29.0-51.el7.x86_64 20/24 Verifying : libselinux-devel-2.5-14.1.el7.x86_64 21/24 Verifying : tcp_wrappers-devel-7.6-77.el7.x86_64 22/24 Verifying : 1:openssl-devel-1.0.2k-16.el7.x86_64 23/24 Verifying : 1:net-snmp-devel-5.7.2-37.el7.x86_64 24/24 Installed: cmake.x86_64 0:2.8.12.2-2.el7 libaio-devel.x86_64 0:0.3.109-13.el7 libcurl-devel.x86_64 0:7.29.0-51.el7 libnl-devel.x86_64 0:1.1.4-3.el7 libxml2-devel.x86_64 0:2.9.1-6.el7_2.3 mariadb-devel.x86_64 1:5.5.60-1.el7_5 net-snmp-devel.x86_64 1:5.7.2-37.el7 unixODBC.x86_64 0:2.3.1-11.el7 Dependency Installed: elfutils-devel.x86_64 0:0.172-2.el7 elfutils-libelf-devel.x86_64 0:0.172-2.el7 keyutils-libs-devel.x86_64 0:1.5.8-3.el7 krb5-devel.x86_64 0:1.15.1-34.el7 libcom_err-devel.x86_64 0:1.42.9-13.el7 libselinux-devel.x86_64 0:2.5-14.1.el7 libsepol-devel.x86_64 0:2.5-10.el7 libverto-devel.x86_64 0:0.2.5-4.el7 lm_sensors-devel.x86_64 0:3.4.0-6.20160601gitf9185e5.el7 openssl-devel.x86_64 1:1.0.2k-16.el7 pcre-devel.x86_64 0:8.32-17.el7 popt-devel.x86_64 0:1.13-16.el7 rpm-devel.x86_64 0:4.11.3-35.el7 tcp_wrappers-devel.x86_64 0:7.6-77.el7 xz-devel.x86_64 0:5.2.2-1.el7 zlib-devel.x86_64 0:1.2.7-18.el7 Complete! |
界面显示Complete!表示安装完成。
- 依赖包ncurses-devel安装
使用命令
执行顺序 | 命令 | 说明 |
1 | yum install ncurses-devel | 安装ncurses-devel |
执行示意
[root@fuwuqi01 ~]# yum install ncurses-devel Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager This system is not registered with an entitlement server. You can use subscription-manager to register. RHEL76 | 4.3 kB 00:00:00 Resolving Dependencies --> Running transaction check ---> Package ncurses-devel.x86_64 0:5.9-14.20130511.el7_4 will be installed --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================================================================================================================= Package Arch Version Repository Size ============================================================================================================================================================================================================================================= Installing: ncurses-devel x86_64 5.9-14.20130511.el7_4 RHEL76 713 k Transaction Summary ============================================================================================================================================================================================================================================= Install 1 Package Total download size: 713 k Installed size: 2.1 M |
界面显示“Is this ok [y/d/N]:”时输入y然后回车,安装继续进行。
Is this ok [y/d/N]: y Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : ncurses-devel-5.9-14.20130511.el7_4.x86_64 1/1 Verifying : ncurses-devel-5.9-14.20130511.el7_4.x86_64 1/1 Installed: ncurses-devel.x86_64 0:5.9-14.20130511.el7_4 Complete! |
专属用户创建
添加php-fdm用户组及php-fdm用户,用户php-fdm归属到用户组php-fdm。
使用命令
执行顺序 | 命令 | 说明 |
1 | groupadd php-fdm | 创建php-fdm组 |
2 | useradd -g php-fdm php-fdm | 创建php-fdm用户并添加到php-fdm用户组 |
执行示意
[root@fuwuqi01 ~]# groupadd php-fdm [root@fuwuqi01 ~]# useradd -g php-fdm php-fdm |
Apache2安装
本操作完成Apache2安装,Apache2安装需要依次完成:
- 安装前准备
- 安装APR
- 安装APR-UTIL
- 安装PCRE
- 安装Apache2
安装介质包包括:apr-1.5.2.tar.gz、apr-util-1.5.4.tar.gz、pcre-8.31.tar.bz2、httpd-2.4.25.tar.gz,位于安装介质包的apache_php文件目录下。
Apache2安装目录为/opt/zabbix/apache2
安装前准备
在/tmp/下创建plugin目录及apache_php子目录,用于临时存放安装介质。
使用命令
执行顺序 | 命令 | 说明 |
1 | mkdir -p /tmp/plugin/apache_php | 在/tmp/plugin下创建apache_php目录 |
执行示意
[root@fuwuqi01 ~]# mkdir -p /tmp/plugin/apache_php |
然后通过FTP方式上传apr-1.5.2.tar.gz、apr-util-1.5.4.tar.gz、pcre-8.31.tar.bz2、httpd-2.4.25.tar.gz。
安装APR依赖
APR依赖安装介质为apr-1.5.2.tar.gz,为Apache2依赖包,安装路径为/opt/zabbix/service/apr。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/apache_php | 进入/tmp/plugin/apache_php |
2 | tar xf apr-1.5.2.tar.gz | 解压 apr-1.5.2.tar.gz |
3 | cd apr-1.5.2 | 进入apr-1.5.2目录 |
4 | ./configure --prefix=/opt/zabbix/service/apr | 带--prefix参数执行configure命令 |
5 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin/apache_php [root@fuwuqi01 apache_php]# tar xf apr-1.5.2.tar.gz [root@fuwuqi01 apache_php]# cd apr-1.5.2 [root@fuwuqi01 apr-1.5.2]# ./configure --prefix=/opt/zabbix/service/apr [root@fuwuqi01 apr-1.5.2]# make&&make install |
错误:rm: cannot remove 'libtoolT': No such file or directory,请忽略。
安装APR-UTIL依赖
APR-UTIL依赖安装介质为apr-util-1.5.4.tar.gz,为Apache2依赖包,安装路径为/opt/zabbix/service/apr-util。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/apache_php | 进入/tmp/plugin/apache_php |
2 | tar xf apr-util-1.5.4.tar.gz | 解压 apr-util-1.5.4.tar.gz |
3 | cd apr-util-1.5.4 | 进入apr-util-1.5.4目录 |
4 | ./configure --prefix=/opt/zabbix/service/apr-util --with-apr=/opt/zabbix/service/apr/bin/apr-1-config | 带--prefix、--with-apr参数执行configure命令 |
5 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin/apache_php [root@fuwuqi01 apache_php]# tar xf apr-util-1.5.4.tar.gz [root@fuwuqi01 apache_php]# cd apr-util-1.5.4 [root@fuwuqi01 apr-util-1.5.4]# ./configure --prefix=/opt/zabbix/service/apr-util --with-apr=/opt/zabbix/service/apr/bin/apr-1-config [root@fuwuqi01 apr-util-1.5.2]# make&&make install |
安装PCRE依赖
PCRE依赖安装介质为pcre-8.31.tar.bz2,为Apache2依赖包,安装路径为/opt/zabbix/service/pcre。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/apache_php | 进入/tmp/plugin/apache_php |
2 | tar xf pcre-8.31.tar.bz2 | 解压 pcre-8.31.tar.bz2 |
3 | cd pcre-8.31 | 进入pcre-8.31目录 |
4 | ./configure --prefix=/opt/zabbix/service/pcre | 带--prefix参数执行configure命令 |
5 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin/apache_php [root@fuwuqi01 apache_php]# tar xf pcre-8.31.tar.bz2 [root@fuwuqi01 apache_php]# cd pcre-8.31 [root@fuwuqi01 pcre-8.31]# ./configure --prefix=/opt/zabbix/service/pcre [root@fuwuqi01 pcre-8.31]# make&&make install |
安装Apache2
安装Apache2
Apache2安装介质为httpd-2.4.25.tar.gz,为Apache2依赖包,安装路径为/opt/zabbix/apache。
使用命令
执行顺序 | 命令 | 说明 |
1 | yum remove httpd-tools | 移除httpd-tools |
2 | yum remove httpd | 移除httpd |
3 | cd /tmp/plugin/apache_php | 进入/tmp/plugin/apache_php |
4 | tar xf httpd-2.4.25.tar.gz | 解压 httpd-2.4.25.tar.gz |
5 | cd httpd-2.4.25 | 进入httpd-2.4.25目录 |
6 | ./configure --prefix=/opt/zabbix/apache --with-apr=/opt/zabbix/service/apr/ --with-apr-util=/opt/zabbix/service/apr-util/ --with-pcre=/opt/zabbix/service/pcre/ ap_cv_void_ptr_lt_long=no | 带--prefix、--with-apr、--with-apr-util、--with-pcre、ap_cv_void_ptr_lt_long参数执行configure命令 |
7 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 ~]# yum remove httpd-tools [root@fuwuqi01 ~]# yum remove httpd [root@fuwuqi01 ~]# cd /tmp/plugin/apache_php [root@fuwuqi01 apache_php]# tar xf httpd-2.4.25.tar.gz [root@fuwuqi01 apache_php]# cd httpd-2.4.25 [root@fuwuqi01 httpd-2.4.25]# ./configure --prefix=/opt/zabbix/apache --with-apr=/opt/zabbix/service/apr/ --with-apr-util=/opt/zabbix/service/apr-util/ --with-pcre=/opt/zabbix/service/pcre/ ap_cv_void_ptr_lt_long=no [root@fuwuqi01 httpd-2.4.25]# make&&make install |
修改Apache2配置
Apache2配置文件http.conf,位于/opt/zabbix/apache/conf/httpd.conf,需要修改三处内容,具体如下:
修改主机名为localhost,访问端口号为80;添加ServerName localhost:80、修改Listen为80,ServerName和Listen行首不能有任何字符。
修改访问首页配置,在DirectoryIndex index.html行最后添加index.php,注意空格隔开。
使用命令
执行顺序 | 命令 | 说明 |
1 | vi /opt/zabbix/apache/conf/httpd.conf | 使用vi编辑http.conf文件 |
2 | Listen 80 ServerName localhost:80 | 在http.conf修改为Listen 80、添加ServerName localhost:80 |
3 | index.php | 在DirectoryIndex index.html所在行添加 |
执行示意
[root@fuwuqi01 ~]# vi /opt/zabbix/apache/conf/httpd.conf #Listen 12.34.56.78:80 Listen 80 # # ServerName gives the name and port that the server uses to identify itself. # This can often be determined automatically, but we recommend you specify # it explicitly to prevent problems during startup. # # If your host doesn't have a registered DNS name, enter its IP address here. # ServerName localhost:80 # # DirectoryIndex: sets the file that Apache will serve if a directory # is requested. # <IfModule dir_module> DirectoryIndex index.html index.php </IfModule> |
验证Apache2安装
启动验证,测试Apache2安装是否成功。
- 启动Apache2
使用命令
执行顺序 | 命令 | 说明 |
1 | /opt/zabbix/apache/bin/apachectl start | 启动Apache |
执行示意
[root@fuwuqi01 ~]# /opt/zabbix/apache/bin/apachectl start |
apachectl接收参数为start、restart 、stop分别对应启动、重启、停止。
- 成功验证
通过netstat命令查看在2.2.5.1中配置的Listen端口80是否存在,Apache2启动之后的进程名称为httpd。
使用命令
执行顺序 | 命令 | 说明 |
1 | netstat -tnlp | grep 80 | 查看80 |
执行示意
[root@fuwuqi01 ~]# netstat -tnlp|grep 80 tcp6 0 0 :::80 :::* LISTEN 151341/httpd |
线程名称httpd,:::80标识端口80可被访问。
设置Apache2启动方式
设置Apache2启动方式为随系统启动。
- 创建启动脚本,从/opt/zabbix/apache/bin目录复制apachectl到/etc/init.d目录,目标文件名为httpd。
使用命令
执行顺序 | 命令 | 说明 |
1 | cp /opt/zabbix/apache/bin/apachectl /etc/init.d/httpd | 创建Apache2启动脚本 |
执行示意
[root@fuwuqi01 ~]# cp /opt/zabbix/apache/bin/apachectl /etc/init.d/httpd |
- 编辑启动脚本,在ACMD=”$1”所在行的上一行增加#chkconfig:35 70 30、#description:Apache。
使用命令
执行顺序 | 命令 | 说明 |
1 | vi /etc/init.d/httpd | 编辑Apache2启动脚本 |
2 | #chkconfig:35 70 30 #description:Apache | 添加内容 |
执行示意
[root@fuwuqi01 ~]# vi /etc/init.d/httpd # #chkconfig:35 70 30 #description:Apache ACMD="$1" ARGV="$@" |
- 添加随系统自启动。
使用命令
执行顺序 | 命令 | 说明 |
1 | chkconfig --add httpd | 添加Apache2启动随系统启动 |
2 | chkconfig --level 12345 httpd on | 修改Apache2启动级别 |
执行示意
[root@fuwuqi01 ~]# chkconfig --add httpd [root@fuwuqi01 ~]# chkconfig --level 12345 httpd on |
PHP安装
本操作完成PHP安装,PHP安装需要依次完成:
- 安装前准备
- 安装JPEG6依赖
- 安装LIBpng依赖
- 安装Freetype依赖
- 安装Zlib依赖
- 安装GD依赖
- 安装GD2.44依赖
- 安装PHP
安装介质包包括:jpegsrc.v6b.tar.gz、libpng-1.2.8.tar.gz 、freetype-2.4.8.tar.bz2、zlib-1.2.5.1.tar.gz 、gd-2.0.33.tar.gz、GD-2.44.tar.gz、php-5.6.2.tar.gz,位于安装介质包的apache_php文件目录下。
PHP安装目录为/opt/zabbix/php
安装前准备
在/tmp/plugin目录创建apache_php目录,用于临时存放安装介质。
使用命令
执行顺序 | 命令 | 说明 |
1 | mkdir -p /tmp/plugin/apache_php | 在/tmp/plugin下创建apache_php目录 |
执行示意
[root@fuwuqi01 ~]# mkdir –p /tmp/plugin/apache_php |
然后通过FTP方式上传jpegsrc.v6b.tar.gz、libpng-1.2.8.tar.gz 、freetype-2.4.8.tar.bz2、zlib-1.2.5.1.tar.gz 、gd-2.0.33.tar.gz、GD-2.44.tar.gz、php-5.6.2.tar.gz。
安装JPEG6依赖
JPEG6依赖安装介质为jpegsrc.v6b.tar.gz,为PHP依赖包,安装路径为/opt/zabbix/service/jpeg6,需要手工创建jpeg6下的子目录和从/usr/share/libtool/config下复制config.guess和config.sub到jpeg解压目录。
使用命令
执行顺序 | 命令 | 说明 |
1 | mkdir -p /opt/zabbix/service/jpeg6 | 创建jpeg6目录 |
2 | mkdir -p /opt/zabbix/service/jpeg6/bin | 创建jpeg6/bin目录 |
3 | mkdir -p /opt/zabbix/service/jpeg6/lib | 创建jpeg6/lib目录 |
4 | mkdir -p /opt/zabbix/service/jpeg6/include | 创建jpeg6/include目录 |
5 | mkdir -p /opt/zabbix/service/jpeg6/man | 创建jpeg6/man目录 |
6 | mkdir -p /opt/zabbix/service/jpeg6/man1 | 创建jpeg6/man1目录 |
7 | mkdir -p /opt/zabbix/service/jpeg6/man/man1 | 创建jpeg6/man/man1目录 |
8 | cd /tmp/plugin/apache_php | 进入/tmp/plugin/apache_php |
9 | tar xf jpegsrc.v6b.tar.gz | 解压 jpegsrc.v6b.tar.gz |
10 | cd jpeg-6b | 进入jpeg-6b目录 |
11 | echo "y"|cp -rf /usr/share/libtool/config/config.guess config.guess | 复制config.guess |
12 | echo "y"|cp -rf /usr/share/libtool/config/config.sub config.sub | 复制config.sub |
13 | CFLAGS="-O3 -fPIC" ./configure --prefix=/opt/zabbix/service/jpeg6/ --enable-shared --enable-static | 带CFLAGS=“-O3 -fPIC”、--prefix、--enabl-shared、--enable-static参数执行configure命令 |
14 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 ~]# mkdir -p /opt/zabbix/service/jpeg6 [root@fuwuqi01 ~]# mkdir -p /opt/zabbix/service/jpeg6/bin [root@fuwuqi01 ~]# mkdir -p /opt/zabbix/service/jpeg6/lib [root@fuwuqi01 ~]# mkdir -p /opt/zabbix/service/jpeg6/include [root@fuwuqi01 ~]# mkdir -p /opt/zabbix/service/jpeg6/man [root@fuwuqi01 ~]# mkdir -p /opt/zabbix/service/jpeg6/man1 [root@fuwuqi01 ~]# mkdir -p /opt/zabbix/service/jpeg6/man/man1 [root@fuwuqi01 ~]# cd /tmp/plugin/apache_php [root@fuwuqi01 apache_php]# tar xf jpegsrc.v6b.tar.gz [root@fuwuqi01 apache_php]# cd jpeg-6b [root@fuwuqi01 jpeg-6b]# echo "y"|cp -rf /usr/share/libtool/config/config.guess config.guess [root@fuwuqi01 jpeg-6b]# echo "y"|cp -rf /usr/share/libtool/config/config.sub config.sub [root@fuwuqi01 jpeg-6b]# CFLAGS="-O3 -fPIC" ./configure --prefix=/opt/zabbix/service/jpeg6/ --enable-shared --enable-static [root@fuwuqi01 jpeg-6b]# make&&make install |
安装LIBpng依赖
LIBpng依赖安装介质为libpng-1.2.8.tar.gz,为PHP依赖包,不需要指定安装路径。安装过程中需要手工创建makefile。
- 创建makefile,从libpng解压目录下的scripts复制makefile。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/apache_php | 进入/tmp/plugin/apache_php |
2 | tar xf libpng-1.2.8.tar.gz | 解压 libpng-1.2.8.tar.gz |
3 | cd libpng-1.2.8 | 进入libpng-1.2.8目录 |
4 | cp scripts/makefile.std makefile | 复制makefile.std为makefile |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin/apache_php [root@fuwuqi01 apache_php]# tar xf libpng-1.2.8.tar.gz [root@fuwuqi01 apache_php]# cd libpng-1.2.8 [root@fuwuqi01 libpng-1.2.8]# cp scripts/makefile.std makefile |
- 修改makefile,将CFLAGS=-I$(ZLIBINC) -O # -g -DPNG_DEBUG=5行修改为CFLAGS=-o3 -fPIC -I$(ZLIBINC) -O # -g -DPNG_DEBUG=5,确认无误后保存makefile,然后执行编译并安装。
使用命令
执行顺序 | 命令 | 说明 |
1 | vi makefile | 编辑makefile |
2 | -o3 -fPIC | 修改项目,在makefile的CFLAGS=-I$(ZLIBINC) -O # -g -DPNG_DEBUG=5所在行的=号后-I$前添加 |
3 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 libpng-1.2.8]# vi makefile # Where the zlib library and include files are located #ZLIBLIB=/usr/local/lib #ZLIBINC=/usr/local/include ZLIBLIB=../zlib ZLIBINC=../zlib CC=cc CFLAGS=-o3 -fPIC -I$(ZLIBINC) -O # -g -DPNG_DEBUG=5 LDFLAGS=-L. -L$(ZLIBLIB) -lpng -lz -lm #RANLIB=echo RANLIB=ranlib [root@fuwuqi01 libpng-1.2.8]# make&&make install |
安装Freetype依赖
Freetype依赖安装介质为freetype-2.4.8.tar.bz2,为PHP依赖包,安装路径为/opt/zabbix/service/freetype。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/apache_php | 进入/tmp/plugin/apache_php |
2 | tar xf freetype-2.4.8.tar.bz2 | 解压 freetype-2.4.8.tar.bz2 |
3 | cd freetype-2.4.8 | 进入freetype-2.4.8目录 |
4 | ./configure --prefix=/opt/zabbix/service/freetype | 带--prefix参数执行configure命令 |
5 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin/apache_php [root@fuwuqi01 apache_php]# tar xf freetype-2.4.8.tar.bz2 [root@fuwuqi01 apache_php]# cd freetype-2.4.8 [root@fuwuqi01 freetype-2.4.8]# ./configure --prefix=/opt/zabbix/service/freetype [root@fuwuqi01 freetype-2.4.8]# make&&make install |
在执行configure命令时输出“make: Nothing to be done for `unix'.”请忽略。
安装Zlib依赖
Zlib依赖安装介质为zlib-1.2.5.1.tar.gz,为PHP依赖包,安装路径为/opt/zabbix/service/zlib。
Zlib安装中需要在执行configure命令之后,手工修改Makefile文件。
- Zlib执行configure
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/apache_php | 进入/tmp/plugin/apache_php |
2 | tar xf zlib-1.2.5.1.tar.gz | 解压 zlib-1.2.5.1.tar.gz |
3 | cd zlib-1.2.5.1 | 进入zlib-1.2.5.1目录 |
4 | ./configure --prefix=/opt/zabbix/service/zlib | 带--prefix参数执行configure命令 |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin/apache_php [root@fuwuqi01 apache_php]# tar xf zlib-1.2.5.1.tar.gz [root@fuwuqi01 apache_php]# cd zlib-1.2.5.1 [root@fuwuqi01 zlib-1.2.5.1]# ./configure --prefix=/opt/zabbix/service/zlib |
- 修改makefile文件,将CFLAGS=-O -D_LARGEFILE64_SOURCE=1修改为CFLAGS=-O3 -fPIC -D_LARGEFILE64_SOURCE=1。确认无误后保存,执行编译并安装。
使用命令
执行顺序 | 命令 | 说明 |
1 | vi Makefile | 编辑Makefile |
2 | 3 -fPIC | 在CFLAGS所在行将-O替换为-O3 -fPIC |
3 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 zlib-1.2.5.1]# vi Makefile CFLAGS=-O3 -fPIC -D_LARGEFILE64_SOURCE=1 #CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7 #CFLAGS=-g -DDEBUG #CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ # -Wstrict-prototypes -Wmissing-prototypes [root@fuwuqi01 zlib-1.2.5.1]# make&&make install |
安装GD依赖
GD依赖安装介质为gd-2.0.33.tar.gz,为PHP依赖包,安装路径为/opt/zabbix/service/gd2。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/apache_php | 进入/tmp/plugin/apache_php |
2 | tar xf gd-2.0.33.tar.gz | 解压 gd-2.0.33.tar.gz |
3 | cd gd-2.0.33 | 进入gd-2.0.33目录 |
4 | ./configure --prefix=/opt/zabbix/service/gd2/ --with-jpeg=/opt/zabbix/service/jpeg6/ --with-png=/opt/zabbix/service/libpng/ --with-zlib=/opt/zabbix/service/zlib/ --with-freetype=/opt/zabbix/service/freetype/ | 带—prefix、--with-jpeg、--with-png、--with-zlib、--with-freetype参数执行configure命令 |
5 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin/apache_php [root@fuwuqi01 apache_php]# tar xf gd-2.0.33.tar.gz [root@fuwuqi01 apache_php]# cd gd-2.0.33 [root@fuwuqi01 gd-2.0.33]# ./configure --prefix=/opt/zabbix/service/gd2/ --with-jpeg=/opt/zabbix/service/jpeg6/ --with-png=/opt/zabbix/service/libpng/ --with-zlib=/opt/zabbix/service/zlib/ --with-freetype=/opt/zabbix/service/freetype/ [root@fuwuqi01 gd-2.0.33]# make&&make install |
安装GD2.44依赖
GD2.44依赖安装介质为GD-2.44.tar.gz,为PHP依赖包,无需指定安装路径。
安装过程需要复制GD的gdlib-config到/usr/bin目录,然后再执行编译安装。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/apache_php | 进入/tmp/plugin/apache_php |
2 | tar xf GD-2.44.tar.gz | 解压 GD-2.44.tar.gz |
3 | cd GD-2.44 | 进入GD-2.44目录 |
4 | echo "y"|cp -rf /opt/zabbix/service/gd2/bin/gdlib-config /usr/bin/ | 复制GD的gdlib-config到/usr/bin目录 |
5 | perl Makefile.PL | 使用perl指令执行Makefile.pl |
6 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin/apache_php [root@fuwuqi01 apache_php]# tar xf GD-2.44.tar.gz [root@fuwuqi01 apache_php]# cd GD-2.44 [root@fuwuqi01 GD-2.44]# echo "y"|cp -rf /opt/zabbix/service/gd2/bin/gdlib-config /usr/bin/ [root@fuwuqi01 GD-2.44]# perl Makefile.PL [root@fuwuqi01 GD-2.44]# make&&make install |
安装PHP
安装PHP需要先完成PHP安装,然后修改Apache2配置使Apache2支持PHP,修改配置之后需要重启Apache2。
安装PHP
PHP安装介质为php-5.6.2.tar.gz,为PHP依赖包,安装路径为/opt/zabbix/php。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/apache_php | 进入/tmp/plugin/apache_php |
2 | tar xf php-5.6.2.tar.gz | 解压 php-5.6.2.tar.gz |
3 | cd php-5.6.2 | 进入php-5.6.2目录 |
4 | ln -s /usr/lib64/mysql/libmysqlclient.so.18.0.0 /usr/lib/libmysqlclient_r.so | 创建libmysqlclient_r.so的软链接,使PHP支持MySQL数据库访问 |
5 | ./configure --prefix=/opt/zabbix/php --with-mysql=/usr --with-mysqli=/usr/lib64/mysql/mysql_config --with-config-file-path=/opt/zabbix/php/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-libxml-dir --with-gd --with-jpeg-dir=/opt/zabbix/service/jpeg6 --with-png-dir=/opt/zabbix/service/libpng/lib --with-freetype-dir=/opt/zabbix/service/freetype --with-iconv-dir --with-zlib-dir=/opt/zabbix/service/zlib --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --disable-ipv6 --with-pear --with-curl --enable-bcmath --enable-sockets --with-gettext --with-apxs2=/opt/zabbix/apache/bin/apxs | 带--prefix、--with-mysql、--with-myqli、--with-config-file-path、--enable-fpm、--with-fpm-user、--with-fpm-group、--with-libxml-dir、--with-gd、--with-jpeg-dir、--with-png-dir、--with-freetype-dir、--with-iconv-dir、--with-zlib-dir、--enable-saop、--enable-gd-native-ttf、--enable-ftp、--enable-mbstring、--enable-exif、--disable-ipv6、--with-pear、--with-curl、--enable-bcmath、--enable-scokets、--with-gettext、--with-apxs2参数执行configure命令 |
6 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin/apache_php [root@fuwuqi01 apache_php]# tar xf php-5.6.2.tar.gz [root@fuwuqi01 apache_php]# cd php-5.6.2 [root@fuwuqi01 apache_php]# ln -s /usr/lib64/mysql/libmysqlclient.so.18.0.0 /usr/lib/libmysqlclient_r.so [root@fuwuqi01 php-5.6.2]# ./configure --prefix=/opt/zabbix/php --with-mysql=/usr --with-mysqli=/usr/lib64/mysql/mysql_config --with-config-file-path=/opt/zabbix/php/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-libxml-dir --with-gd --with-jpeg-dir=/opt/zabbix/service/jpeg6 --with-png-dir=/opt/zabbix/service/libpng/lib --with-freetype-dir=/opt/zabbix/service/freetype --with-iconv-dir --with-zlib-dir=/opt/zabbix/service/zlib --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --disable-ipv6 --with-pear --with-curl --enable-bcmath --enable-sockets --with-gettext --with-apxs2=/opt/zabbix/apache/bin/apxs [root@fuwuqi01 php-5.6.2]# make&&make install |
修改Apache2配置支持PHP
修改Apache2配置以支持PHP。Apache2配置文件httpd.conf位于/opt/zabbix/apache/conf/目录下。
需要在httpd.conf文件中在AddType application/x-gzip .gz .tgz下一行添加:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
使用命令
执行顺序 | 命令 | 说明 |
1 | vi /opt/zabbix/apache/conf/httpd.conf | 使用vi编辑http.conf文件 |
2 | AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps | 在AddType applicaition/x-zip .gz .tgz下一行添加 |
执行示意
[root@fuwuqi01 ~] # vi /opt/zabbix/apache/conf/httpd.conf AddType application/x-compress .Z AddType application/x-gzip .gz .tgz AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps |
创建php.ini
默认的PHP配置文件不能满足Zabbix运行要求,需要将安装介质的conf文件夹下php.ini以FTP方式上传到php的安装目录下的etc目录,php安装目录如果存在php.ini则替换。
安装介质中php.ini路径/plugin/conf。
php.ini所在目录为/opt/zabbix/php/etc。
配置环境变量
需要在操作系统上添加PHP环境变量PHPRC,环境变量取值为/opt/zabbix/php/etc。
使用命令
执行顺序 | 命令 | 说明 |
1 | cat >>/etc/profile<<eof export PHPRC=/opt/zabbix/php/etc eof | cat环境变量配置文件 |
2 | source /etc/profile | 使配置文件生效 |
执行示意
[root@fuwuqi01 ~] # cat >>/etc/profile<<eof >export PHPRC=/opt/zabbix/php/etc >eof [root@fuwuqi01 ~]# source /etc/profile |
重启Apache2
重启Apache2,使章节2.3.8.2、2.3.8.2、2.3.8.3、2.3.8.4修改的配置生效。
使用命令
执行顺序 | 命令 | 说明 |
1 | service httpd stop | 停止Apache2 |
2 | service httpd start | 启动Apache2 |
执行示意
[root@fuwuqi01 ~] # service httpd stop [root@fuwuqi01 ~] # service httpd start |
验证Apache2支持PHP
验证Apache2支持PHP需要在Apache2的htdocs目录下新建一个名为test.php的文件。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /opt/zabbix/apache/htdocs | 进入/opt/zabbix/apache/htdocs目录 |
2 | touch test.php | 新建一个test.php文件 |
3 | vi test.php | 编辑test.php |
4 | <?php echo "hello php !"?> | 在test.php输入<?php echo "hello php !"?> |
在浏览器地址输入http://ip.49/test.php,如下图所有显示“hello php ! ”字样标识Apache2支持PHP配置成功。
Zabbix服务程序安装
Zabbix服务程序安装需要依次完成:
- 修改操作系统参数
- 安装Zabbix服务程序依赖RPM包
- 添加Zabbix用户组及用户
- 安装Zabbix采集服务程序
- 初始化Zabbix数据库
- Zabbix服务接口程序配置
- Zabbix采集服务程序配置
- Zabbix Agent安装
安装介质包包括:zabbix_agents_3.0.4_20191122.tar.gz、zabbix-3.4.8.tar.gz、libevent-devel-2.0.21-4.el7.x86_64.rpm,位于安装介质包的zabbix文件目录下,预装配置文件在安装介质conf目录下,包括zabbix.sql。其中libevent-devel-2.0.21-4.el7.x86_64.rpm是Zabbix程序依赖程序包。
Zabbix采集服务程序安装目录为/opt/zabbix/server。
Zabbix采集服务代理程序安装目录为/opt/zabbix/proxy。采集服务代理和采集服务部署一台设备。
Zabbix Agent安装目录为/opt/zabbix/agent。
修改操作系统参数
运行cat >>/etc/security/limits.conf<<eof依次输入。
* soft nofile 65535
* hard nofile 65536
* soft nproc 65535
* hard nproc 65536
eof
[root@fuwuqi01 ~] # cat >>/etc/security/limits.conf<<eof > * soft nofile 65535 > * hard nofile 65536 > * soft nproc 65535 > * hard nproc 65536 > eof |
安装Zabbix服务依赖RPM包
本操作完成操作系统依赖包安装,依赖包包括OpenIPMI*、libssh2*、libcurl、net-snmp*、mysql-devel、libevent-devel,操作系统依赖包来源于操作系统镜像rhel-server-7.6-x86_64-dvd.iso。其中libevent-devel需要最后单独安装,安装介质在安装介质包zabbix文件夹下。
操作如下:
- 首先将rhel-server-7.6-x86_64-dvd.iso ISO镜像通过FTP方式上传至/tmp目录,然后挂载ISO镜像。
使用命令
执行顺序 | 命令 | 说明 |
1 | mount -t iso9660 -o loop /tmp/rhel-server-7.6-x86_64-dvd.iso /mnt | 从/tmp目录挂载镜像文件rhel-server-7.6-x86_64-dvd.iso到/mnt |
执行示意
[root@fuwuqi01 ~]# mount -t iso9660 -o loop /tmp/rhel-server-7.6-x86_64-dvd.iso /mnt |
- 创建rhel-server-7.6-x86_64-dvd.iso文件yum源文件配置
使用命令
执行顺序 | 命令 | 说明 |
1 | vi /etc/yum.repos.d/rhel76.repo | 在/etc/yum.repos.d文件目录下创建rhel-server-7.6-x86_64-dvd.iso文件的yum源配置文件rhel76.repo |
2 | [RHEL76] name=RHEL76 baseurl=file:///mnt enabled=1 gpgcheck=0 # yum clean all # yum list | rhel76.repo需要输入的内容 |
执行示意
[root@fuwuqi01 ~]# vi /etc/yum.repos.d/rhel76.repo [RHEL76] name=RHEL76 baseurl=file:///mnt enabled=1 gpgcheck=0 # yum clean all # yum list |
- 安装操作系统依赖RPM包
使用命令
执行顺序 | 命令 | 说明 |
1 | yum install OpenIPMI* libssh2* libcurl net-snmp* mysql-devel -y | 安装基础依赖RPM包:OpenIPMI*、libssh2*、libcurl、net-snmp*、mysql-devel。 |
执行示意
[root@fuwuqi01 ~] # yum install OpenIPMI* libssh2* libcurl net-snmp* mysql-devel -y Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager This system is not registered with an entitlement server. You can use subscription-manager to register. RHEL76 | 4.3 kB 00:00:00 Package libssh2-1.4.3-12.el7.x86_64 already installed and latest version Package libcurl-7.29.0-51.el7.x86_64 already installed and latest version Package 1:net-snmp-agent-libs-5.7.2-37.el7.x86_64 already installed and latest version Package 1:net-snmp-devel-5.7.2-37.el7.x86_64 already installed and latest version Package 1:net-snmp-libs-5.7.2-37.el7.x86_64 already installed and latest version Package 1:net-snmp-utils-5.7.2-37.el7.x86_64 already installed and latest version Package 1:net-snmp-5.7.2-37.el7.x86_64 already installed and latest version Package 1:mariadb-devel-5.5.60-1.el7_5.x86_64 already installed and latest version Resolving Dependencies --> Running transaction check ---> Package OpenIPMI.x86_64 0:2.0.23-2.el7 will be installed ---> Package OpenIPMI-libs.x86_64 0:2.0.23-2.el7 will be installed ---> Package OpenIPMI-modalias.x86_64 0:2.0.23-2.el7 will be installed ---> Package OpenIPMI-perl.x86_64 0:2.0.23-2.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================================================================================================================= Package Arch Version Repository Size ============================================================================================================================================================================================================================================= Installing: OpenIPMI x86_64 2.0.23-2.el7 RHEL76 300 k OpenIPMI-libs x86_64 2.0.23-2.el7 RHEL76 521 k OpenIPMI-modalias x86_64 2.0.23-2.el7 RHEL76 16 k OpenIPMI-perl x86_64 2.0.23-2.el7 RHEL76 167 k Transaction Summary ============================================================================================================================================================================================================================================= Install 4 Packages Total download size: 1.0 M Installed size: 3.2 M |
界面显示“Is this ok [y/d/N]:”时输入y然后回车,安装继续进行。
Downloading packages: --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 182 MB/s | 1.0 MB 00:00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : OpenIPMI-modalias-2.0.23-2.el7.x86_64 1/4 Installing : OpenIPMI-libs-2.0.23-2.el7.x86_64 2/4 Installing : OpenIPMI-2.0.23-2.el7.x86_64 3/4 Installing : OpenIPMI-perl-2.0.23-2.el7.x86_64 4/4 Verifying : OpenIPMI-libs-2.0.23-2.el7.x86_64 1/4 Verifying : OpenIPMI-modalias-2.0.23-2.el7.x86_64 2/4 Verifying : OpenIPMI-2.0.23-2.el7.x86_64 3/4 Verifying : OpenIPMI-perl-2.0.23-2.el7.x86_64 4/4 Installed: OpenIPMI.x86_64 0:2.0.23-2.el7 OpenIPMI-libs.x86_64 0:2.0.23-2.el7 OpenIPMI-modalias.x86_64 0:2.0.23-2.el7 OpenIPMI-perl.x86_64 0:2.0.23-2.el7 Complete! |
界面显示Complete!表示安装完成。
- 安装libevent-devel,FTP方式上传libevent-devel-2.0.21-4.el7.x86_64.rpm到/tmp/plugin/。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/ | 进入/tmp/plugin目录 |
2 | rpm -ivh libevent-devel-2.0.21-4.el7.x86_64.rpm | 执行libevent-devel-2.0.21-4.el7.x86_64.rpm安装 |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin/ [root@fuwuqi01 plugin]# rpm -ivh libevent-devel-2.0.21-4.el7.x86_64.rpm warning: libevent-devel-2.0.21-4.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY Preparing... ################################# [100%] Updating / installing... 1:libevent-devel-2.0.21-4.el7 ################################# [100%] [root@fuwuqi01 plugin]# |
添加Zabbix用户组及用户
添加zabbix用户组及zabbix用户,用户zabbix归属到用户组zabbix。
使用命令
执行顺序 | 命令 | 说明 |
1 | groupadd zabbix | 创建zabbix组 |
2 | useradd -g zabbix zabbix | 创建zabbix用户并添加到zabbix用户组 |
执行示意
[root@fuwuqi01 ~]# groupadd zabbix [root@fuwuqi01 ~]# useradd -g zabbix zabbix |
安装Zabbix采集服务程序
Zabbix采集服务程序安装有两个部分要完成:采集服务程序和采集服务代理程序。
安装前准备
在/tmp目录创建plugin目录,用于临时存放Zabbix安装介质。
使用命令
执行顺序 | 命令 | 说明 |
1 | mkdir -p /tmp/plugin/conf | 在/tmp/下创建plugin目录及子目录conf |
执行示意
[root@fuwuqi01 ~] # mkdir /tmp/plugin/conf |
然后以通过FTP方式上传zabbix_agents_3.0.4_20191122.tar.gz、zabbix-3.4.8.tar.gz至/tmp/plugin目录、zabbix.sql至/tmp/plugin/conf。
安装Zabbix采集服务程序
其一采集服务程序安装,安装目录为/opt/zabbix/server。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/ | 进入/tmp/plugin/apache_php |
2 | tar xf zabbix-3.4.8.tar.gz | 解压 zabbix-3.4.8 |
3 | cd zabbix-3.4.8 | 进入zabbix-3.4.8 |
4 | ./configure --prefix=/opt/zabbix/server --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 | 带--prefix、--enable-server、 --enable-agent、--with-mysql、 --with-net-snmp、--with-libcurl、 --with-libxml2参数执行configure命令 |
5 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin [root@fuwuqi01 plugin]# tar xf zabbix-3.4.8.tar.gz [root@fuwuqi01 plugin]# cd zabbix-3.4.8 [root@fuwuqi01 zabbix-3.4.8]# ./configure --prefix=/opt/zabbix/server --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 [root@fuwuqi01 httpd-2.4.25]# make&&make install |
其二采集代理程序安装,安装目录为/opt/zabbix/proxy,安装文件和采集服务程序安装文件在同一个目录下。
使用命令
执行顺序 | 命令 | 说明 |
1 | ./configure --prefix=/opt/zabbix/proxy --enable-proxy --with-mysql --with-net-snmp --with-libcurl --with-libxml2 | 带--prefix、--enable-proxy、--with-mysql、 --with-net-snmp、--with-libcurl、 --with-libxml2参数执行configure命令 |
2 | make&&make install | 执行编译并安装 |
执行示意
[root@fuwuqi01 zabbix-3.4.8]# ./configure --prefix=/opt/zabbix/proxy --enable-proxy --with-mysql --with-net-snmp --with-libcurl --with-libxml2 [root@fuwuqi01 httpd-2.4.25]# make&&make install |
初始化zabbix数据库
以zabbix账号登录fuwuqi01数据库,创建数据库名为zabbix的数据库,字符集utf8,collate字符集utf8_bin,使用MySQL的source命令导入zabbix.sql。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /usr/local/mysql/bin | 进入MySQL安装目录的bin目录下 |
2 | ./mysql -uzabbix -pzabbix | 启动MySQL客户端 |
3 | create database zabbix default charset utf8 collate utf8_bin; | 创建zabbix数据库 |
4 | use zabbix; | 切换到zabbix数据库 |
5 | source /tmp/plugin/conf/zabbix.sql; | 导入zabbix.sql |
执行示意
[root@fuwuqi01 ~]# cd /usr/local/mysql/bin [root@fuwuqi01 bin]# ./mysql –uzabbix –pzabbix Welcome to the MariaDB monitor. Commands end with ; or \g. Your MySQL connection id is 19 Server version: 5.7.22-log MySQL Community Server (GPL) Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MySQL [(none)]> create database zabbix default charset utf8 collate utf8_bin; Query OK, 1 row affected (0.01 sec) MySQL [(none)]>use zabbix; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed MySQL [zabbix]> source /tmp/plugin/conf/zabbix.sql; |
Zabbix服务接口程序配置
Zabbix服务接口程序通过PHP语言实现,运行在Apache2上对外提供访问服务,不需要进行额外安装。Zabbix服务程序位于/tmp/plugin/zabbix-3.4.8/frontends/php/下。Zabbix接口服务程序在Apache2对外服务目录为/opt/zabbix/apache/htdocs/zabbix/。
修改Zabbix服务接口程序配置
Zabbix安装包中提供了服务程序配置模板zabbix.conf.example,需要从模板文件复制后修改为配置文件,配置文件和模板位于/opt/zabbix/apache/htdocs/zabbix/conf/目录。配置文件中的需要修改的参数包括$DB['TYPE']、$DB['SERVER']、$DB['PORT'] 、$DB['DATABASE']、$DB['USER']、$DB['PASSWORD']。
参数 | 值 | 说明 |
$DB['TYPE'] | MYSQL | 数据库类型 |
$DB['SERVER'] | localhost | 数据库服务器地址 |
$DB['PORT'] | 3306 | 数据库端口号 |
$DB['DATABASE'] | zabbix | 数据库名 |
$DB['USER'] | zabbix | 数据库用户名 |
$DB['PASSWORD'] | zabbix | 数据库密码 |
参数配置格式:$DB['TYPE']= 'MYSQL';
使用命令
执行顺序 | 命令 | 说明 |
1 | mkdir /opt/zabbix/apache/htdocs/zabbix | 在Apache2目录下创建zabbix对外服务程序目录 |
2 | cp -R /tmp/plugin/zabbix-3.4.8/frontends/php/* /opt/zabbix/apache/htdocs/zabbix/ | 复制Zabbix服务程序到/opt/zabbix/apache/htdocs/zabbix/ |
3 | cp /opt/zabbix/apache/htdocs/zabbix/conf/zabbix.conf.php.example /opt/zabbix/apache/htdocs/zabbix/conf/zabbix.conf.php | 创建Zabbix服务程序配置文件 |
4 | vi /opt/zabbix/apache/htdocs/zabbix/conf/zabbix.conf.php | 编辑Zabbix服务程序配置文件 |
5 | $DB['TYPE'] = 'MYSQL'; $DB['SERVER'] = 'localhost'; $DB['PORT'] = '3306'; $DB['DATABASE'] = 'zabbix'; $DB['USER'] = 'zabbix'; $DB['PASSWORD'] = 'zabbix'; | 修改内容 |
执行示意
[root@fuwuqi01 ~]# mkdir /opt/zabbix/apache/htdocs/zabbix [root@fuwuqi01 ~]# cp -R /tmp/plugin/zabbix-3.4.8/frontends/php/* /opt/zabbix/apache/htdocs/zabbix / [root@localhost ~]# cp /opt/zabbix/apache/htdocs/zabbix/conf/zabbix.conf.php.example /opt/zabbix/apache/htdocs/zabbix /conf/zabbix.conf.php [root@localhost ~]# vi /opt/zabbix/apache/htdocs/zabbix /conf/zabbix.conf.php <?php // Zabbix GUI configuration file. global $DB, $HISTORY; $DB['TYPE'] = 'MYSQL'; $DB['SERVER'] = 'localhost'; $DB['PORT'] = '3306'; $DB['DATABASE'] = 'zabbix'; $DB['USER'] = 'zabbix'; $DB['PASSWORD'] = 'zabbix'; // Schema name. Used for IBM DB2 and PostgreSQL. $DB['SCHEMA'] = ''; $ZBX_SERVER = 'localhost'; $ZBX_SERVER_PORT = '10051'; $ZBX_SERVER_NAME = ''; $IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG; // Elasticsearch url (can be string if same url is used for all types). #$HISTORY['url'] = [ # 'uint' => 'http://localhost:9200', # 'text' => 'http://localhost:9200' #]; // Value types stored in Elasticsearch. #$HISTORY['types'] = ['uint', 'text']; |
重启Apache2
修改Zabbix服务程序配置文件之后,需要重启Apache2,使用命令
执行顺序 | 命令 | 说明 |
1 | service httpd stop | 停止Apache2 |
2 | service httpd start | 启动Apache2 |
执行示意
[root@fuwuqi01 ~] # service httpd stop [root@fuwuqi01 ~] # service httpd start |
访问验证
在浏览器地址栏输入http://ip.49/zabbix,看到如下界面标识zabbix服务接口程序启动成功。
Zabbix采集服务程序配置
修改Zabbix采集服务程序配置
Zabbix采集服务程序安装完成之后,会自动生成Zabbix采集服务程序配置,该配置文件位于/opt/zabbix/server/etc/zabbix_server.conf。
在zabbix_server.conf,需要修改DBHost、DBPort、DBName、DBUser、DBPassword配置,然后启动Zabbix采集服务程序。参数值来源参考章节4.5。
使用命令
执行顺序 | 命令 | 说明 |
1 | vi /opt/zabbix/server/etc/zabbix_server.conf | 编辑Zabbix采集服务程序 |
2 | DBHost=localhost DBPort=3306 DBName=zabbix DBUser=zabbix DBPassword=zabbix | 参数及参数值设置 |
3 | cd /opt/zabbix/server/sbin | 进入Zabbix采集服务程序sbin目录 |
4 | ./zabbix_server | 启动Zabbix采集服务程序 |
执行示意
[root@fuwuqi01 ~]# vi /opt/zabbix/server/etc/zabbix_server.conf DBHost=localhost DBPort=3306 DBName=zabbix DBUser=zabbix DBPassword=zabbix [root@fuwuqi01 ~]# cd /opt/zabbix/server/sbin [root@fuwuqi01 etc]# ./zabbix_server |
设置Zabbix采集服务程序启动方式
- 创建启动脚本
设置Zabbix采集服务程序启动方式为随系统启动,首先创建启动脚本。
在解压之后的Zabbix安装介质中的misc/init.d/fedora/core下提供有Zabbix采集服务程序启动脚本,脚本文件名为zabbix_server,把该脚本复制到/etc/init.d下,然后修改BASEDIR=/user/local为BASEDIR=/opt/zabbix/server,确认无误后保存。
使用命令
执行顺序 | 命令 | 说明 |
1 | cp /tmp/plugin/zabbix-3.4.8/misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix_server | 创建Zabbix采集服务程序启动脚本 |
2 | vi /etc/init.d/zabbix_server | 编辑Zabbix采集服务程序启动脚本 |
3 | BASEDIR=/opt/zabbix/server | 修改内容 |
执行示意
[root@fuwuqi01 ~]# cp /tmp/plugin/zabbix-3.4.8/misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix_server [root@fuwuqi01 ~]# vi /etc/init.d/zabbix_server # Variables # Edit these to match your system settings # Zabbix-Directory BASEDIR=/opt/zabbix/server |
- 添加随系统自启动:
使用命令
执行顺序 | 命令 | 说明 |
1 | chkconfig --add zabbix_server | 添加Zabbix采集服务程序启动随系统启动 |
2 | chkconfig --level 12345 zabbix_server on | 修改Zabbix采集服务程序启动级别 |
执行示意
[root@fuwuqi01 ~]# chkconfig --add zabbix_server [root@fuwuqi01 ~]# chkconfig --level 12345 zabbix_server on |
Zabbix Agent安装
注意事项
- 所有需要被监控的服务器上安装Zabbix Agent。
- 务必修改被管设备名,设备同名将不会被纳管。
安装Agent
Agent安装已经以fuwuqi01服务器为例,另外三台服务器请参照该安装操作。
以fuwuqi01为Zabbix服务采集程序安装服务器,其IP地址为ip.49。
FTP方式上传zabbix_agents_3.0.4_20191122.tar.gz到/tmp/plugin/。Zabbix Agent安装需要明确带上Zabbix采集服务程序所在主机IP地址。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/ | 进入/tmp/plugin目录 |
2 | tar -zxf zabbix_agents_3.0.4_20191122.tar.gz | 解压 zabbix_agents_3.0.4_20191122.tar.gz |
3 | cd zabbix_agents_3.0.4/ | 进入zabbix_agents_3.0.4目录 |
4 | ./install_zabbix_agent.sh ip.49 | 执行agent安装,ip.49为Zabbix采集服务程序所在服务器的IP地址 |
执行示意
[root@fuwuqi01 ~]# cd /tmp/plugin/ [root@fuwuqi01 plugin]# tar -zxf zabbix_agents_3.0.4_20191122.tar.gz [root@fuwuqi01 plugin]# cd zabbix_agents_3.0.4/ [root@fuwuqi01 zabbix_agents_3.0.4]# ./install_zabbix_agent.sh ip.49 |
启动Agent
Zabbix Agent安装之后会随操作系统启动,若由于误操作关闭了Zabbix Agent,可通过service zabbix_agentd start命令启动。
[root@fuwuqi01 ~]# service zabbix_agentd start |
启动主从
master_log_file和master_log_pos参数来自7.4.2记录的File和Position。
登录ip.49MySQL数据库之后执行“change master to master_host='ip.50',master_user='repl',master_password='repl',master_log_file='mysql-bin.000003',master_log_pos=3042;”。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /usr/local/mysql/bin | 进入MySQL安装目录的bin目录下 |
2 | ./mysql -uroot -p | 启动MySQL客户端 |
3 | password | 输入root账号密码,进入MySQL命令行客户端。 |
4 | change master to master_host='ip.50',master_user='repl',master_password='repl',master_log_file='mysql-bin.000003',master_log_pos=194; | 查看Master状态 |
5 | start slave; | 启动主从同步 |
执行示意
MySQL [(none)]> change master to master_host='ip.50',master_user='repl',master_password='repl',master_log_file='mysql-bin.000003',master_log_pos=3042; MySQL [(none)]>start slave; |
登录ip.50MySQL数据库之后执行“change master to master_host='ip.49',master_user='repl',master_password='repl',master_log_file='mysql-bin.000002',master_log_pos=3842;”。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /usr/local/mysql/bin | 进入MySQL安装目录的bin目录下 |
2 | ./mysql -uroot -p | 启动MySQL客户端 |
3 | password | 输入root账号密码,进入MySQL命令行客户端。 |
4 | change master to master_host='ip.49',master_user='repl',master_password='repl',master_log_file='mysql-bin.000003',master_log_pos=194; | 查看Master状态 |
5 | start slave; | 启动主从同步 |
执行示意
MySQL [(none)]> change master to master_host='ip.49',master_user='repl',master_password='repl',master_log_file='mysql-bin.000002',master_log_pos=3842; MySQL [(none)]>start slave; |
验证主从状态
登录ip.49MySQL数据库执行命令show slave status \G;,查看Slave_IO_Running、Slave_SQL_Running是否为Yes,为Yes表示主从正常执行。
执行命令:
show slave status \G;
MySQL [(none)]>show slave status \G; *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: ip.50 Master_User: repl Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000002 Read_Master_Log_Pos: 3842 Relay_Log_File: mysql-relay.000002 Relay_Log_Pos: 764 Relay_Master_Log_File: mysql-bin.000002 Slave_IO_Running: Yes Slave_SQL_Running: Yes Replicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0 Last_Error: Skip_Counter: 0 Exec_Master_Log_Pos: 3842 Relay_Log_Space: 967 Until_Condition: None Until_Log_File: Until_Log_Pos: 0 Master_SSL_Allowed: No Master_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: 0 Master_SSL_Verify_Server_Cert: No Last_IO_Errno: 0 Last_IO_Error: Last_SQL_Errno: 0 Last_SQL_Error: Replicate_Ignore_Server_Ids: Master_Server_Id: 10 Master_UUID: 15aa5540-31fc-11ea-9d2d-84139f30d4bd Master_Info_File: mysql.slave_master_info SQL_Delay: 0 SQL_Remaining_Delay: NULL Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates Master_Retry_Count: 86400 Master_Bind: Last_IO_Error_Timestamp: Last_SQL_Error_Timestamp: Master_SSL_Crl: Master_SSL_Crlpath: Retrieved_Gtid_Set: 15aa5540-31fc-11ea-9d2d-84139f30d4bd:13-14 Executed_Gtid_Set: 15aa5540-31fc-11ea-9d2d-84139f30d4bd:13-14, 4a871e1c-31eb-11ea-81b2-84139f30d4f5:1-15 Auto_Position: 0 Replicate_Rewrite_DB: Channel_Name: Master_TLS_Version: 1 row in set (0.00 sec) ERROR: No query specified MySQL [(none)]> |
登录ip.50MySQL数据库执行命令show slave status \G;,查看Slave_IO_Running、Slave_SQL_Running是否为Yes,为Yes表示主从正常执行。
MySQL [(none)]>show slave status \G; *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: ip.49 Master_User: repl Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000003 Read_Master_Log_Pos: 3842 Relay_Log_File: mysql-relay.000002 Relay_Log_Pos: 1025 Relay_Master_Log_File: mysql-bin.000003 Slave_IO_Running: Yes Slave_SQL_Running: Yes Replicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0 Last_Error: Skip_Counter: 0 Exec_Master_Log_Pos: 3842 Relay_Log_Space: 1228 Until_Condition: None Until_Log_File: Until_Log_Pos: 0 Master_SSL_Allowed: No Master_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: 0 Master_SSL_Verify_Server_Cert: No Last_IO_Errno: 0 Last_IO_Error: Last_SQL_Errno: 0 Last_SQL_Error: Replicate_Ignore_Server_Ids: Master_Server_Id: 1 Master_UUID: 4a871e1c-31eb-11ea-81b2-84139f30d4f5 Master_Info_File: mysql.slave_master_info SQL_Delay: 0 SQL_Remaining_Delay: NULL Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates Master_Retry_Count: 86400 Master_Bind: Last_IO_Error_Timestamp: Last_SQL_Error_Timestamp: Master_SSL_Crl: Master_SSL_Crlpath: Retrieved_Gtid_Set: 4a871e1c-31eb-11ea-81b2-84139f30d4f5:13-15 Executed_Gtid_Set: 15aa5540-31fc-11ea-9d2d-84139f30d4bd:1-14, 4a871e1c-31eb-11ea-81b2-84139f30d4f5:13-15 Auto_Position: 0 Replicate_Rewrite_DB: Channel_Name: Master_TLS_Version: 1 row in set (0.00 sec) ERROR: No query specified MySQL [(none)]> |
相关推荐
- jQuery VS AngularJS 你更钟爱哪个?
-
在这一次的Web开发教程中,我会尽力解答有关于jQuery和AngularJS的两个非常常见的问题,即jQuery和AngularJS之间的区别是什么?也就是说jQueryVSAngularJS?...
- Jquery实时校验,指定长度的「负小数」,小数位未满末尾补0
-
在可以输入【负小数】的输入框获取到焦点时,移除千位分隔符,在输入数据时,实时校验输入内容是否正确,失去焦点后,添加千位分隔符格式化数字。同时小数位未满时末尾补0。HTML代码...
- 如何在pbootCMS前台调用自定义表单?pbootCMS自定义调用代码示例
-
要在pbootCMS前台调用自定义表单,您需要在后台创建表单并为其添加字段,然后在前台模板文件中添加相关代码,如提交按钮和表单验证代码。您还可以自定义表单数据的存储位置、添加文件上传字段、日期选择器、...
- 编程技巧:Jquery实时验证,指定长度的「负小数」
-
为了保障【负小数】的正确性,做成了通过Jquery,在用户端,实时验证指定长度的【负小数】的方法。HTML代码<inputtype="text"class="forc...
- 一篇文章带你用jquery mobile设计颜色拾取器
-
【一、项目背景】现实生活中,我们经常会遇到配色的问题,这个时候去百度一下RGB表。而RGB表只提供相对于的颜色的RGB值而没有可以验证的模块。我们可以通过jquerymobile去设计颜色的拾取器...
- 编程技巧:Jquery实时验证,指定长度的「正小数」
-
为了保障【正小数】的正确性,做成了通过Jquery,在用户端,实时验证指定长度的【正小数】的方法。HTML做成方法<inputtype="text"class="fo...
- jquery.validate检查数组全部验证
-
问题:html中有多个name[],每个参数都要进行验证是否为空,这个时候直接用required:true话,不能全部验证,只要这个数组中有一个有值就可以通过的。解决方法使用addmethod...
- Vue进阶(幺叁肆):npm查看包版本信息
-
第一种方式npmviewjqueryversions这种方式可以查看npm服务器上所有的...
- layui中使用lay-verify进行条件校验
-
一、layui的校验很简单,主要有以下步骤:1.在form表单内加上class="layui-form"2.在提交按钮上加上lay-submit3.在想要校验的标签,加上lay-...
- jQuery是什么?如何使用? jquery是什么功能组件
-
jQuery于2006年1月由JohnResig在BarCampNYC首次发布。它目前由TimmyWilson领导,并由一组开发人员维护。jQuery是一个JavaScript库,它简化了客户...
- django框架的表单form的理解和用法-9
-
表单呈现...
- jquery对上传文件的检测判断 jquery实现文件上传
-
总体思路:在前端使用jquery对上传文件做部分初步的判断,验证通过的文件利用ajaxFileUpload上传到服务器端,并将文件的存储路径保存到数据库。<asp:FileUploadI...
- Nodejs之MEAN栈开发(四)-- form验证及图片上传
-
这一节增加推荐图书的提交和删除功能,来学习node的form提交以及node的图片上传功能。开始之前需要源码同学可以先在git上fork:https://github.com/stoneniqiu/R...
- 大数据开发基础之JAVA jquery 大数据java实战
-
上一篇我们讲解了JAVAscript的基础知识、特点及基本语法以及组成及基本用途,本期就给大家带来了JAVAweb的第二个知识点jquery,大数据开发基础之JAVAjquery,这是本篇文章的主要...
- 推荐四个开源的jQuery可视化表单设计器
-
jquery开源在线表单拖拉设计器formBuilder(推荐)jQueryformBuilder是一个开源的WEB在线html表单设计器,开发人员可以通过拖拉实现一个可视化的表单。支持表单常用控件...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- mybatis plus (70)
- scheduledtask (71)
- css滚动条 (60)
- java学生成绩管理系统 (59)
- 结构体数组 (69)
- databasemetadata (64)
- javastatic (68)
- jsp实用教程 (53)
- fontawesome (57)
- widget开发 (57)
- vb net教程 (62)
- hibernate 教程 (63)
- case语句 (57)
- svn连接 (74)
- directoryindex (69)
- session timeout (58)
- textbox换行 (67)
- extension_dir (64)
- linearlayout (58)
- vba高级教程 (75)
- iframe用法 (58)
- sqlparameter (59)
- trim函数 (59)
- flex布局 (63)
- contextloaderlistener (56)