1.搭建lamp架构

配置YUM源文件

备份系统自带的yum配置文件,防止以后找不到文件和防止与新配置的网络YUM源文件冲突

mv /etc/yum.repos.d/* /opt/

下载163YUM源文件      注:用wget下载

cd /etc/yum.repos.d/

wget http://mirrors.163.com/.help/CentOS6-Base-163.repo

 

用yum安装apache、mysql、php

关闭防火墙

service iptables stop

关闭防火墙安全机制

vim /etc/sysconfig/selinux

把第7行等于号后面的enforcing修改成disabled

运行setenforce 0

 

 保存退出

安装apache、 mysql 、php、php库文件       注:下面图片中的包一个不能少

yum install make mysql-server httpd php mysql-devel gcc net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml –y

 

 

 

修改Apache配置文件

vim /etc/httpd/conf/httpd.conf

在402行最后追加index.php,为了让Apache支持php

 

 

数据库操作

修改数据库管理密码 启动MySQL服务

service mysqld start

 

修改root密码

mysqladmin -u root password root

创建用户

useradd zabbix

账户安全设置

vim /etc/passwd

新创建的用户在最后面一行,修改zabbix用户,不让zabbix用户登入系统。把zabbix用户显示信息末尾的最后/bin/bash修改成/sbin/nologin

 

 

上传软件并解压

tar zxf zabbix-2.2.6.tar.gz

 

 

 

创建zabbix库,授权zabbix用户登入数据库

 

用root登入数据库创建zabbix库

mysql -u root –p

Enter password:       注:输入数据库root密码

 

create database zabbix character set utf8;     注:创建库语言为中文

 

grant all on zabbix.* TO zabbix@'localhost' identified by 'zabbixpass';   注:授权本机通过账号zabbix密码zabbixpass访问数据库的所有权限

 

刷新授权

flush privileges;

 

导入数据库sql

进入zabbix库

 

一定要按照文档顺序导入数据库,要不然导入失败

mysql> source /root/zabbix-2.2.6/database/mysql/schema.sql

 

source /root/zabbix-2.2.6/database/mysql/images.sql

 

source /root/zabbix-2.2.6/database/mysql/data.sql

 

 

修改php相关参数

vim /etc/php.ini

 

 

 

 

同步系统时间

date -s "2016-10-12 23:40:25"

 

 

安装zabbix服务端

编译安装

 

./configure --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy --prefix=/usr/local/zabbix

 

make && make install

 

 

添加service端口

vim /etc/services

 

 

修改zabbix-server配置文件

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

   注:pid文件存放位置

             注:zabbix-server文件存放位置

  注:数据库名字

  注:数据库授权用户

  注:添加一行指定数据库密码

 

创建zabbix启动文件

Pwd

cp misc/init.d/fedora/core5/zabbix_server /etc/init.d/

 

cp misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/

 

 

给脚本赋予执行权限

chmod 700 /etc/init.d/zabbix_server

 

chmod 700 /etc/init.d/zabbix_agentd

 

 

修改zabbix启动文件

vim /etc/init.d/zabbix_server

  注:在local/后面添加zabbix/

vim /etc/init.d/zabbix_agentd

  注:local/后面添加zabbix/

 

拷贝zabbix前端文件

 

cp -rf php /var/www/html/zabbix

 

 

设置zabbix文件的宿主宿组

chown -R zabbix:zabbix /var/www/html/zabbix/

 

启动zabbix服务

service zabbix_server start

 

service zabbix_agentd start

 

设置开机启动

chkconfig mysqld on

 

chkconfig httpd on

 

chkconfig zabbix_server on

 

chkconfig zabbix_agentd on

 

重启httpd服务

/etc/init.d/httpd restart

 

正在启动 httpd:httpd: apr_sockaddr_info_get() failed for www

httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName      注:修改http配置文件第276行的#去掉就没了,但是前提必须有域名。其实修补修改无关紧要

 

网页端设置

 

注:全部显示ok才能点下一步

 

注:port=数据库端口号

         User=数据库授权账号

         Password=数据库授权账号的密码

全部填写完毕后test检测下可以访问数据库不。可以访问就能点下一步。

  

注:点download下载文件放在/var/www/html/zabbix/conf/下,完事后点retry

 

 

注:账号admin 密码是zabbix

 

汉化zabbix网页

选择右上角的Profile选项,并点开

 

 

在Language这项离里面选择中文简体

 

刚搭建完成的情况下需要在服务器配置文件里面激活语言

 

开始→控制面板→字体

拷贝出来宋体模板

上传到服务器的/var/www/html/zabbix/fonts/目录下

cd /var/www/html/zabbix/fonts/

 

修改zabbix管理中文字设置

vim /var/www/html/zabbix/include/defines.inc.php

 

 

STFANGSO是字体文件的名称,这里面设置的名称一定要与你导入文件名称一致。

vim /var/www/html/zabbix/include/locales.inc.php

 

刷新网页

 

点击save保存即可

Zabbix-agent端部署

Windows server部署agent端

上传agent文件到Windows server服务器下,切记看好服务器是多少位的防止与包不兼容

解压C:\zabbix\下

 

关闭防火墙

修改配置文件

双击打开conf\zabbix_agentd.win.conf

全部删除后添加

LogFile=c:\zabbix\zabbix_agentd.log

Server=192.168.13.10

Hostname=192.168.13.12

在C:\zabbix\下创建zabbix_agentd.log,要不然启动不了

创建服务启动

呼出运行输入cmd

 

回车

 

输入

Cd ..

cd ..

cd zabbix

 

 

编译

安装

 

启动服务进程

开始→管理工具→服务

 

显示已启动就代表完成,未启动的话手动重启报错就是log文件找不到

Linux-agnet部署

下载linux-agnet文件,上传到服务器。

关闭防火墙,安全机制

 

 

解压文件到/usr/local/zabbix

mkdir /usr/local/zabbix

tar zxf zabbix_agents_2.2.7.linux2_6.amd64.tar.gz

创建组

groupadd zabbix

创建用户

useradd -g zabbix zabbix

创建文件夹

mkdir /usr/local/zabbix

将解压出来的bin目录移动到新建的zabbix下

mv bin /usr/local/zabbix

for i in *;do ln -s /usr/local/zabbix/bin/${i} /usr/bin/${i};done

 

将解压出来的sbin目录移动到新建的zabbix下

mv sbin /usr/local/zabbix

for i in *;do ln -s /usr/local/zabbix/sbin/${i} /usr/sbin/${i};done

注:for循环是将zabbix/sbin下的程序链接到/usr/sbin下

修改配置文件

从服务器上下载zabbix agent文件

 

scp 192.168.13.10:/usr/local/zabbix/etc/zabbix_agentd.conf /usr/local/etc/

 

vim /usr/local/etc/zabbix_agentd.conf

本地ip

  服务器ip

拷贝启动脚本

cp /usr/local/zabbix/sbin/zabbix_agentd /etc/init.d/

设置启动权限

 

chmod a+x /etc/init.d/zabbix_agentd

设置开机启动

echo "service zabbix_agentd start" >>/etc/rc.local

启动服务

手动创建日志文件

touch /tmp/zabbix_agentd.log

赋予该文件zabbix用户权限

chown zabbix:zabbix /tmp/zabbix_agentd.log

启动服务进程

service zabbix_agentd start

查看进程

ps -ef | grep agent

 

前台添加主机

组态→主机

 

创建主机

 

 

主机名称=服务器系统民称

可见主机名称=服务器IP

Ip地址=agent端ip

 

 

添加监控模板

模板

选择模板

 

 

点添加

 

点存档

 

 

可用性那有个,等它变成绿的就可以正常采集数据了,linux系统方法一样

唯一不同的是要选下图中标红的模板

 

 

查看新建主机监控

选检测中→仪表盘

 

到这添加主机完成

绘制图形界面

选组态→筛选→创建屏幕

 

 

名称=服务器种类

 

存档

点windows

 

 

点更改

 

 

图形名称后的选择是选择要显示的模板

动态监控项一定要勾上,不然图像没有数据

 

存档

宽和高分别能修改图像的宽度和高度

 

Zabbix之微信公众号告警

 

微信平台申请

网站

mp.weixin.qq.com

申请公众号完毕后登入公众号网页后台

 

账号密码一定要记住因为一会写脚本的时候用到

额外记住应用ID

应用中心→应用

 

设置→权限管理→选择组(我这是运维组)

 

标红的俩必须要记住因为写接口时候需要用到

 

登入服务器编写shell脚本

Vim weixin.sh

#!/bin/bash

#########################################################################

# File Name: wechat.sh

# Author: shaonbean

# Email: shaonbean@qq.com

# Created Time: Sun 24 Jul 2016 05:48:14 AM CST

#########################################################################

# Functions: send messages to wechat app

# set variables

CropID='wx09c871dfc83c921f'

Secret='cRQKl8Iwwu11NmaXK4viWHN0ThLtRh1-K72FDrE-nJMJjneD_ylTw47oidOrTBym'

GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$

Secret"#get acccess_token

Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" '{print $4}')

PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken"

#

function body() {

local int AppID=3                      #企业号中的应用id

local UserID="@all"                        #部门成员id,zabbix中定义的微信接收

local Msg=$(echo "$@" | cut -d" " -f3-)   #过滤出zabbix传递的第三个参数

printf '{\n'

printf '\t"touser": "'"$UserID"\"",\n"

printf '\t"msgtype": "text",\n'

printf '\t"agentid": "'" $AppID "\"",\n"

printf '\t"text": {\n'

printf '\t\t"content": "'"$Msg"\""\n"

printf '\t},\n'

printf '\t"safe":"0"\n'

printf '}\n'

}

/usr/bin/curl --data-ascii "$(body $! $2 $3)" $PURL

 

脚本存放位置/usr/lib/zabbix/alertscripts

posted on 2018-09-06 12:09  爱技术努力学技术  阅读(301)  评论(0编辑  收藏  举报