一. 部署架构图

二. 安装环境及版本信息

操作系统:centos7

zabbix版本: 4.4

mysql: 5.7.28

三.zabbix server安装(192.168.182.132)

rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
yum-config-manager --enable rhel--server-optional-rpms
yum install epel-release numactl
yum install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf -y

注意:如果出现yum安装不了,则可以修改/etc/yum.repos.d/zabbix.repo

[zabbix]
name=Zabbix Official Repository - $basearch
#baseurl=http://repo.zabbix.com/zabbix/4.4/rhel/7/$basearch/
baseurl=https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.4/rhel/7/$basearch
enabled=
gpgcheck=
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
skip_if_unavailable =
keepcache = [zabbix-debuginfo]
name=Zabbix Official Repository debuginfo - $basearch
baseurl=http://repo.zabbix.com/zabbix/4.4/rhel/7/$basearch/debuginfo/
enabled=
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
gpgcheck=

四. mysql安装(192.168.182.132)

wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
tar -xzvf mysql-5.7.-linux-glibc2.-x86_64.tar.gz -C /app/
cd /app/
mv mysql-5.7.-linux-glibc2.-x86_64 mysql
mkdir /app/mysql/{data,logs}
groupadd mysql
useradd -g mysql mysql
chown mysql:mysql /app/mysql -R 1、配置mysql 配置文件:
[client]
port =
socket = /tmp/mysql.sock
default-character-set = utf8

# 配置账号密码、ip;实现命令行直接"免密码"登录
[mysql]
host=192.168.182.132
user=zabbix
password=zabbix [mysqladmin]
host=192.168.182.132
user=zabbix
password=zabbix [mysqld]
port =
socket = /tmp/mysql.sock basedir = /app/mysql
datadir = /app/mysql/data
pid-file = /app/mysql/mysql.pid
user = mysql
bind-address = 0.0.0.0
server-id = init-connect = 'SET NAMES utf8'
character-set-server = utf8
log_timestamps=SYSTEM skip-name-resolve
back_log = max_connections =
max_connect_errors =
open_files_limit =
table_open_cache =
max_allowed_packet = 500M
binlog_cache_size = 1M
max_heap_table_size = 8M
tmp_table_size = 32M read_buffer_size = 2M
read_rnd_buffer_size = 8M
sort_buffer_size = 8M
join_buffer_size = 8M
key_buffer_size = 16M thread_cache_size = query_cache_type =
query_cache_size = 16M
query_cache_limit = 2M ft_min_word_len = log_bin = mysql-bin
binlog_format = mixed
expire_logs_days = log_error = /app/mysql/logs/mysql-error.log
slow_query_log =
long_query_time =
slow_query_log_file = /app/mysql/logs/mysql-slow.log performance_schema =
explicit_defaults_for_timestamp skip-external-locking default_storage_engine = InnoDB
innodb_file_per_table =
innodb_open_files =
innodb_buffer_pool_size = 128M
innodb_write_io_threads =
innodb_read_io_threads =
innodb_thread_concurrency =
innodb_purge_threads =
innodb_flush_log_at_trx_commit =
innodb_log_buffer_size = 2M
innodb_log_file_size = 32M
innodb_log_files_in_group =
innodb_max_dirty_pages_pct =
innodb_lock_wait_timeout = bulk_insert_buffer_size = 8M
myisam_sort_buffer_size = 16M
myisam_max_sort_file_size = 10G
myisam_repair_threads = interactive_timeout =
wait_timeout = [mysqldump]
quick
max_allowed_packet = 500M [myisamchk]
key_buffer_size = 16M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M
2、数据库初始化:
cd /app/mysql/
bin/mysqld --initialize --user=mysql --basedir=/app/mysql --datadir=/app/mysql/data --innodb_undo_tablespaces= --explicit_defaults_for_timestamp 登录的临时密码在error文件中(/app/mysql/logs/mysql-error.log)
##
porary password is generated for root@localhost: Jm=%mM7w)UBq
## cp -a /app/mysql/support-files/mysql.server /etc/init.d/mysql
echo "export PATH=/app/mysql/bin:$PATH" >> /etc/profile
source /etc/profile # 启动mysql
/etc/init.d/mysql start # 使用日志中的临时密码(Jm=%mM7w)UBq)登录mysql
mysql -u root -p # 设置root密码:
mysql>set password for root@localhost = password('root'); # 创建zabbix库:
create database zabbix character set utf8 collate utf8_bin;
# 授权:
grant all privileges on *.* to zabbix@'%' identified by 'zabbix';
# 刷新权限
flush privileges; # 导入数据到zabbix
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uroot -p zabbix

五.配置zabbix_server

1、修改配置
# vi /etc/zabbix/zabbix_server.conf
LogFile=/app/zabbix/logs/zabbix_server.log
LogFileSize=
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBHost=192.168.182.132
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/tmp/mysql.sock
SNMPTrapperFile=/app/zabbix/logs/snmptrap/snmptrap.log
Timeout=
AlertScriptsPath=/app/zabbix/alertscripts
ExternalScripts=/app/zabbix/externalscripts
LogSlowQueries=
StatsAllowedIP=127.0.0.1
2、创建相关目录:
mkdir -p /app/zabbix/logs/snmptrap
mkdir /app/zabbix/{alertscripts,externalscripts}
chown zabbix:zabbix /app/zabbix/ -R 3、修改时区:
# vim /etc/httpd/conf.d/zabbix.conf
# 添加/修改配置:
php_value date.timezone Asia/Shanghai 4、启动apache
systemctl start httpd.service
5、启动php
systemctl start php-fpm.service
6、启动zabbix server
systemctl start zabbix-server.service 访问: http:ip/zabbix 注意:第一次登录填写mysql连接信息时候地址需要填0.0.0.

六. 修改字体

# 上传windows中的字体MSYH.TTC(微软雅黑) 到/home/wwwroot/default/zabbix/fonts目录
ln -s /home/wwwroot/default/zabbix/fonts/MSYH.TTC /etc/alternatives/zabbix-web-font

七.安装graphtree插件(选)

graphtree是一个图形展示插件
wget https://raw.githubusercontent.com/OneOaaS/graphtrees/master/graphtree3.0.4.patch
yum install -y patch
cp -a /usr/share/zabbix /usr/share/zabbix.bak
mv graphtree3.0.4.patch /usr/share/zabbix/
cd /usr/share/zabbix
patch -Np0 <graphtree3.0.4.patch
chown apache:apache oneoaas -R
添加配置:vim /etc/httpd/conf.d/zabbix.conf
Alias /oneoaas /usr/share/zabbix/oneoaas
systemctl restart httpd.service zabbix-server.service

八.zabbix proxy(192.168.182.130) 部署:

8.1、yum安装

rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
yum clean all
# 先查找zabbix-proxy,yum search zabbix-proxy
yum install zabbix-proxy-mysql.x86_64 zabbix-agent.x86_64
# 如果出现如下错误
Error: Package: zabbix-proxy-mysql-4.4.3-1.el7.x86_64 (zabbix)
Requires: fping
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
# 解决方案:

# 根据错误提示,需要安装fping命令这个依赖,在进行yum安装之后显示该安装包不存在,因此进行推测应该是epel源配置出现问题,因此在阿里源中配置epel源

curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all
yum makecache
# 再执行
yum install zabbix-proxy-mysql.x86_64 zabbix-agent.x86_64

# 创建zabbix库:
create database zabbix_proxy character set utf8 collate utf8_bin;
# 授权:
grant all privileges on zabbix_proxy.* to zabbix@'%' identified by 'zabbix';
# 刷新权限
flush privileges;
# 部署mysql 步骤和在zabbix server中部署一样,区别在导入数据时候不一样:
# zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uroot -p zabbix_proxy # 修改zabbix-proxy配置:vim /etc/zabbix/zabbix_proxy.conf
Server=192.168.182.132            # 真正的服务端(zabbix server)
ServerPort= # 根据个人需要修改,一般可以不改,默认端口是10051,要实现转发的话使用这个选项(zabbix server)
ListenPort=10051 # zabbix-proxy服务监听的端口,默认就好
Hostname=Zabbix proxy # proxy的hostname,在web端网页配置时需要用到
DBHost=192.168.182.130 # 数据库,使用本地,也可以使用ip,我喜欢使用localhost,因为我授权就是本地,也因为配置ip失败踩过坑
DBName=zabbix_proxy # 数据库名称,创建zabbix-proxy的mysql的数据库名称
DBUser=zabbix # 用户
DBPassword=zabbix # 密码
DBPort= # 当DBHost填写localhost时,默认是使用socket通信的,这里配置一下也无碍
#HeartbeatFrequency= # 心跳线(具体作用网了,看配置文件吧,这个默认就是60)
ConfigFrequency= # 这个好像是同步配置文件的时间
DataSenderFrequency= # 这个是proxy端向server端发送数据的时间,单位是秒,几乎等于实时同步
# 启动zabbix-proxy
systemctl start zabbix-proxy.service

8.2 、源码安装

yum -y install curl-devel libevent-devel   libevent curl  libxml2-devel libxml2  pcre pcre-devel
yum install mysql-devel -y
yum install -y net-snmp-devel # 编译安装zabbix proxy:
wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.4.0/zabbix-4.4.0.tar.gz
tar -xzvf zabbix-4.4..tar.gz
cd zabbix-4.4. # proxy:
./configure --prefix=/app/zabbix_proxy_4. --enable-proxy --with-mysql --with-libcurl --with-libxml2 --enable-ipv6 --with-net-snmp --with-openssl
ln -s /app/mysql/lib/libmysqlclient.so. /usr/lib64/libmysqlclient.so.
# 启动:
/app/zabbix_proxy_4./sbin/zabbix_proxy -c /app/zabbix_proxy_4./etc/zabbix_proxy.conf

8.2 、web端配置代理

8.2.1、web配置zabbix代理

添加主机时选择代理

如果出现如下图,则zabbix server不能与zabbix proxy正常通信

正常通信如图:

九.zabbix客户端安装

9.1、yum安装

# 添加yum源
rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
# 安装
yum install zabbix-agent
# 启动
service zabbix-agent start

9.2、源码安装

yum -y install curl-devel libevent-devel   libevent curl  libxml2-devel libxml2  pcre pcre-devel
yum install mysql-devel -y
yum install -y net-snmp-devel # 编译安装zabbix客户端:
wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.4.0/zabbix-4.4.0.tar.gz
tar -xzvf zabbix-4.4..tar.gz
cd zabbix-4.4. # agent:
./configure --prefix=/app/zabbix_agent_4. --enable-agent --enable-ipv6 --with-net-snmp --with-openssl # 启动:
/app/zabbix_agent_4./sbin/zabbix_agentd -c /app/zabbix_agent_4./etc/zabbix_agentd.conf

9.3、修改配置(/etc/zabbix/zabbix_agentd.conf)

Server=[zabbix server/zabbix proxy ip]
ServerActive=[zabbix server/zabbix proxy ip]
Hostname=[ Hostname of client system ]
# 例:
Server=192.168.182.130
ServerActive=192.168.182.130
Hostname=192.168.182.129

9.4、安装zabbix-get,并测试agent端是否server端连通

# 安装
yum install -y zabbix-get
# 在服务端测试(192.168.182.132),-s --host:agent端ip;-p,--port:端口;-k,--key:监控项key
zabbix_get -s 192.168.182.130 -p 10050 -k system.hostname

十. 常用命令

zabbix server与zabbix proxy的配置的同步是有延时的,如果需要立即同步可以手动执行命令:
zabbix_proxy -c /etc/zabbix/zabbix_proxy.conf -R config_cache_reload

zabbix4.4 (server,proxy,agent)安装部署实战的更多相关文章

  1. SQL Server Compact免安装部署

    原文:SQL Server Compact免安装部署 情况 应用程序中的EF使用了SQL Server Compact,打包部署到客户机器上后提示数据库连接异常,信息类似”配置节“.”Provider ...

  2. Entity Framework6使用SQL Server Compact免安装部署

    原文:Entity Framework6使用SQL Server Compact免安装部署 使用Nuget安装以下包: EntityFramework.6.0.2 EntityFramework.Sq ...

  3. Zabbix server 3.2安装部署

    zabbix server 前提环境: CentOS 6 Lnmp php需要的包(bcmath,mbstring,sockets,gd,libxml,xmlwriter,xmlreader,ctyp ...

  4. ELK 安装部署实战 (最新6.4.0版本)

    一.实战背景 根据公司平台的发展速度,对于ELK日志分析日益迫切.主要的需求有: 1.用户行为分析 2.运营活动点击率分析 作为上述2点需求,安装最新版本6.4.0是非常有必要的,大家可根据本人之前博 ...

  5. WIN中SharePoint Server 2010 入门安装部署详解

    目前流行的原始安装文件基本都是这样的:Windows Server 2008 R2+SQL Server 2008R2+SharePoint Server 2010     这个初始环境原本也无可厚非 ...

  6. Azkaban介绍+安装部署+实战案例

    Azkaban介绍 什么是azkaban?1.工作流的作业调度系统2.通过k.v指令写法描述工作流节点3.可以通过web界面去管理工作流 Azkaban安装部署 2.3.1 准备工作 Azkaban ...

  7. Windows Server 2012 R2安装部署Office Web Apps Server

    微软官方参考地址https://technet.microsoft.com/zh-cn/library/jj219455.aspx,建议参考官方说明. 注意:每一步进行完成后重启服务器!!! 一.   ...

  8. Vcenter server 5.5安装部署

    1.安装VMware ESXi Server 虚拟主机安装方法请看本人博客 "实践记忆": http://www.cnblogs.com/zoulongbin/p/5896836. ...

  9. zabbix server、agent安装及使用

    先准备yum源,当然你有打好的rpm包那更好 [root@linux-node1 ~]# cat /etc/yum.repos.d/zabbix.repo [zabbix] name=Zabbix O ...

随机推荐

  1. 请求类型 GET 和 POST 的区别

    一.GET 一个简单的 GET 请求: xmlhttp.open("GET","demo_get.asp",true); xmlhttp.send(); 在上面 ...

  2. The 2019 Asia Nanchang First Round Online Programming Contest The Nth Item

    The Nth Item 思路: 先用特征根法求出通向公式,然后通向公式中出现了\(\sqrt{17}\),这个可以用二次剩余求出来,然后可以O(\(log(n)\))求出. 但是还不够,我们先对\( ...

  3. apache/tomcat笔记

    apache是什么? apache http server 简称apache是世界上排名前列的web服务器,因开源,简单,高性能,速度快,还可以做代理服务器,所以广受人们欢迎 httpd:httpd是 ...

  4. reverse函数的实现

    用递归的方法实现字符串的倒叙 #include <string.h> void reverse_my(char *a,int len) { int tmp;//中间值 if(len < ...

  5. Robot Framework--RIDE面板与库的说明

    Robot Framework的测试用例是以project作为单位进行管理的.一个project可以包含多个Test Suite文件,每一个Test Suite可以包含多条测试用例一个Test Sui ...

  6. docker学习(六)

    一.Dockerfile使用 Dockerfile 可以允许用户创建自定义的镜像. 1.基本结构Dockerfile 由一行行命令语句组成,并且支持以 # 开头的注释行.一般的,Dockerfile ...

  7. 008——转载——c#获取当前日期时间

    (一)转载——c#获取当前日期时间 我们可以通过使用DataTime这个类来获取当前的时间.通过调用类中的各种方法我们可以获取不同的时间:如:日期(2008-09-04).时间(12:12:12).日 ...

  8. tibco server keystore怎样使用多域名证书

    Create a Subject Alternative Name certificate with Active Directory Certificate Services https://kno ...

  9. vue文件夹上传源码

    一. 功能性需求与非功能性需求 要求操作便利,一次选择多个文件和文件夹进行上传:支持PC端全平台操作系统,Windows,Linux,Mac 支持文件和文件夹的批量下载,断点续传.刷新页面后继续传输. ...

  10. Educational Codeforces Round 69

    目录 Contest Info Solutions A. DIY Wooden Ladder B. Pillars C. Array Splitting D. Yet Another Subarray ...