环境
系统:centos7.5
软件版本:
mysql: 5.7
zabbix: 3.4.15
内网:
Port: 10051
IP: 192.168.2.71
外网:
Port: 34521
Domain: freefrp.cn
Agent被动模式(默认)
server 端主动连接 agent
server和agent在同一个网络中
或者将agent 10050 端口映射到公网
Agent主动模式
agent 主动连接 server端
server和agent在同一个网络中
或者将server 10051 端口映射到公网
安装
配置YUM源
mkdir /etc/yum.repos.d/OldRepo
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/OldRepo/
curl -so /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo
curl -so /etc/yum.repos.d/Centos-7.repo http://mirrors.aliyun.com/repo/Centos-7.repo
sed -i '/aliyuncs.com/d' /etc/yum.repos.d/Centos-7.repo /etc/yum.repos.d/epel-7.repo
配置时间同步
yum install -y ntpdate
ntpdate ntp1.aliyun.com
hwclock -w
echo "*/30 * * * * $(which ntpdate) ntp1.aliyun.com > /dev/null 2>&1 && $(which hwclock) -w" > /var/spool/cron/root
chmod 600 /var/spool/cron/root
配置防火墙,Selinux
80:zabbix-web 3306:mysql 10050:zabbix-agent 10051:zabbix-server
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=3360/tcp --permanent
firewall-cmd --zone=public --add-port=10050/tcp --permanent
firewall-cmd --zone=public --add-port=10051/tcp --permanent
firewall-cmd --reload
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
安装mysql
安装mysql-5.7
# 配置安装源
yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
yum repolist all | grep mysql # 查看所有 mysql 子存储库
yum install -y yum-utils # 安装 yum 配置工具管理 YUM 源
yum-config-manager --disable mysql80-community # 禁用 mysql80 子存储库
yum-config-manager --enable mysql57-community
yum repolist enabled | grep mysql # 查看已启用的 mysql 子存储库
# 安装mysql
yum install -y mysql-community-server
# 启动 mysql 服务,跟随系统启动
systemctl start mysqld
systemctl status mysqld
systemctl enable mysqld
# 修改数据库密码,创建zabbix 用户并授权(设置mysql本地登录root密码为12WWW.ttt 创建zabbix用户密码为12WWW.ttt)
NewPass='12WWW.ttt'
DefPass=$(grep 'temporary password' /var/log/mysqld.log | awk '{print $NF}')
# 修改root本地密码,创建zabbix用户,数据库并授权
mysql -uroot -p$DefPass --connect-expired-password <<-EOSQL
alter user 'root'@'localhost' identified by '${NewPass}';
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to 'zabbix'@'%' identified by '${NewPass}';
flush privileges;
EOSQL
安装zabbix服务端
# 安装 zabbix软件 存储库 [http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/]
rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
# 安装Zabbix部署包
yum makecache
yum install -y zabbix-server-mysql zabbix-web-mysql
配置
导入zabbix数据库
zcat /usr/share/doc/zabbix-server-mysql-3.4.15/create.sql.gz | mysql -uzabbix -p$NewPass zabbix
创建zabix_server配置文件
cat <<EOF >/etc/zabbix/zabbix_server.conf
ExternalScripts=/usr/lib/zabbix/externalscripts
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
AlertScriptsPath=/usr/lib/zabbix/alertscripts
LogFile=/var/log/zabbix/zabbix_server.log
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
LogFileSize=0
DBHost=192.168.2.71
DBName=zabbix
DBUser=zabbix
DBPassword=$NewPass
Timeout=30
LogSlowQueries=3000
EOF
启动ZabbixServer进程,跟随系统启动
systemctl start zabbix-server
systemctl status zabbix-server
systemctl enable zabbix-server
配置Apache
# 更改 php, apache 时区
sed -i 's#;date.timezone =.*#date.timezone = "Asia/Shanghai"#' /etc/php.ini
sed -i '20a\ php_value date.timezone Asia/ShangHai' /etc/httpd/conf.d/zabbix.conf
# 启动Apache进程,跟随系统启动
systemctl start httpd
systemctl status httpd
systemctl enable httpd
配置数据库连接
浏览器打开 http://192.168.2.71/zabbix 点击 Next steup
# 配置数据库连接
# 配置端口
# 登录 默认管理员账号 Admin 密码 zabbix
创建agent主动模式模板
Linux主动模式模板
# 点击 配置 → 模板 → Template OS Linux
# 更改模板名称为 Active OS Linux 点击底部全克隆 然后点击底部添加
# 点击 配置 → 模板 → Active OS Linux 链接的模板 → 取消链接并清理
# 点击应用集 选择 Template App Zabbix Agent: Zabbix agent 禁用
# 点击 监控项 勾选所有监控项 点击底部 批量更新
# 勾选 类型 选择 zabbix客户端(主动式) 点击底部 更新
# 点击 自动发现 分别点击 名称 将类型改为 zabbix客户端(主动式)
# 点击 自动发现 分别点击 监控原型 中的每一项名称 将类型更改为 zabbix客户端(主动式)
Windows主动模式模板 选择Template OS Windows 克隆 配置过程与linux相同
客户端安装配置
IP: 192.168.2.72 agent主动模式
Linux安装zabbix-agent
# 安装源码库配置部署包
rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
# 被监控端 安装Zabbix Agent
yum install -y zabbix-agent
配置 agent
# 创建配置文件 主动模式
cat <<EOF >/etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
StartAgents=0
ServerActive=freefrp.cn:34521
Hostname=$(hostname -I)
RefreshActiveChecks=60
Include=/etc/zabbix/zabbix_agentd.d/*.conf
EOF
# 启动服务
systemctl start zabbix-agent
systemctl enable zabbix-agent
Windows安装zabbix-agent
agent下载地址 https://www.zabbix.com/download_agents
下载 Windows zabbix_agents https://www.zabbix.com/downloads/3.4.6/zabbix_agents_3.4.6.win.zip
将压缩文件解压到D盘
打开cmd
> D:
> md zabbix
> copy zabbix_agents_3.4.6.win\bin\win64\* zabbix\
> echo LogFile=c:\zabbix_agentd.log > zabbix/zabbix_agentd.win.conf
> echo LogFileSize=0 >> zabbix/zabbix_agentd.win.conf
> echo StartAgents=0 >> zabbix/zabbix_agentd.win.conf
> echo ServerActive=freefrp.cn:34521 >> zabbix/zabbix_agentd.win.conf
> echo Hostname=192.168.2.104 >> zabbix/zabbix_agentd.win.conf
> echo RefreshActiveChecks=60 >> zabbix/zabbix_agentd.win.conf
> D:\zabbix\zabbix_agentd.exe -i -c D:\zabbix\zabbix_agentd.win.conf
> D:\zabbix\zabbix_agentd.exe -s -c D:\zabbix\zabbix_agentd.win.conf
# 安装服务
# D:\zabbix\zabbix_agentd.exe -i -c D:\zabbix\zabbix_agentd.win.conf
# 启动服务
# D:\zabbix\zabbix_agentd.exe -s -c D:\zabbix\zabbix_agentd.win.conf
# 卸载服务(停止 zabbix agent 服务)
# D:\zabbix\zabbix_agentd.exe -d -c D:\zabbix\zabbix_agentd.win.conf
zabbix-server 添加主机
# 配置 → 主机 → 创建主机
# 输入配置信息
# 点击模板 选择 Active OS Linux 点击添加
# 点击主机 滚动条移动到底部 点击添加
agent被动模式配置
# 被动模式
cat <<EOF >/etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
StartAgents=3
Server=192.168.2.71
ServerActive=192.168.2.71
Hostname=$(hostname -I)
HostMetadataItem=system.uname
EOF
# 创建主机时选择系统默认自带的模板即可