1.1 zabbix机器和其他被监控的机器要安装的环境
#zabbix 监控准备
zabbix 10.0.0.71 172.16.1.71
web01 10.0.0.7 172.16.1.7
web02 10.0.0.8 172.16.1.8
#所有机器配置
#centos 7的系统
rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
#centos 6的系统
yum install -y https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
#zabbix机器 (配置好epel源)!!!!
epel源在这找:
清华,等163网易里搜索epel,打开在里面找到在这命令。
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum install -y iftop iotop nethogs
yum install zabbix-server-mysql zabbix-web-mysql httpd php –y
#zabbix服务端需要使用mysql配合,当然能和其他数据库配合,mysql在Centos6到7不能直接yum安装,只能安装mXDB,所以只能二进制安装或编译安装
yum install -y mariadb-server
yum install -y zabbix-agent
#web01 web02
yum install -y zabbix-agent
#做好快照
1.2 zabbix的服务端与客户端版本需一致,否则会引起某些故障(服务端3.0)
说明:zabbix服务端3.0的时候,客户端最好也跟着3.0否则会出错,或者出现一些其他错误。
1.3 zabbix的官方地址(可下载编译或win版本)
www.zabbix.com
1.4 lamp与lnmp的关系图
1.5 cobbler防止系统每次启动重装的设置
/etc/cobbler/settings
292 pxe_just_once:1
#防止重装
1.6 【面试题】你们公司监控如何做的?
1、OSI7层模型监控
2、用户访问网站流程
大公司一般也会监控:舆情
注意:使用IOS7层模型来分类,比如物理层有电脑、硬件、风扇转速等,以后面试按照7层模型来想就好,按照这种大纲给面试的去解释
重点:OSI/ISO7层协议模型图:
1.7 要使用的监控命令
iftop -nNP
nethogs
1.8 使用nc数据反弹命令进行数据传输,形成小型数据聊天工具
1.9 监控全国各地访问我网站的速度
www.17ce.com
http://ping.chinaz.com
1.10 监控工具总览
1.11 zabbix-get命令行获取客户端数据排查错误
命令:
yum install zabbix-get –y #因为没有这个命令
zabbix_get -s 172.16.1.7 -p10050 -k agent.ping #向客户端里获取数据,指定ip指定端口,-k是获取的数据命令
参数说明:
-s --host: 指定客户端主机名或者IP
-p --port:客户端端口,默认10050
-I --source-address:指定源IP,写上zabbix server的ip地址即可,一般留空,服务器如果有多ip的时候,你指定一个。
-k --key:你想获取的key
说明:被监控的机器就叫agent目标,服务端叫server,所有被监控的机器都要装一个agent
1.12 zabbix版本
3.4 最新版
3.0 LTS long timesupport 长时间维护版本 #一般使用这个,因为单独这个版本,是长时间维护的版本,一直更新的。
1.13 自行找其他zabbix版本的办法
百度搜索清华 mirrors,搜索到zabbix 点击进去 zabbix /3.0版本/rhel/Centos7版本/x86_64/zabbix-releas-3.0-1.el6.noarch.rpm
1.14 启动数据库并且设置开机自启动
systemctl start mariadb.service
systemctl enable mariadb.service
1.15 删除数据库无用的用户
mysql #进入mysql,执行如下内容
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
MariaDB [(none)]> select user,host from mysql.user;
+------+------------------+
| user | host |
+------+------------------+
| root | 127.0.0.1 |
| root | ::1 |
| | localhost |
| root | localhost |
| | oldboyedu-zabbix |
| root | oldboyedu-zabbix |
+------+------------------+
6 rows in set (0.00 sec)
MariaDB [(none)]> drop user ''@'localhost';
MariaDB [(none)]> drop user ''@'localhost';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> drop user ''@'oldboyedu-zabbix';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
1.16 创建zabbix相应的数据库与用户
#创建数据库
create database zabbix character set utf8 collate utf8_bin;
#添加用户
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
1.17 创建zabbix所需要的表内容,使用zcat命令导入
zcat /usr/share/doc/zabbix-server-mysql-3.0.19/create.sql.gz |mysql zabbix
故障:如果没有zcat /usr/share/doc/zabbix-server-mysql-3.0.19/create.sql.gz |mysql zabbix 这个目录那就可能是前面的epel源等等没有配置好,需要多次确认,反复安装,一个都不能少,中间还有y确认一定要搞好。
1.18 修改zabbix配置文件 访问本地的数据库
#修改zabbix配置文件 访问本地的数据库
vim /etc/zabbix/zabbix_server.conf
输入db数据库名字和账号和密码
[root@oldboyedu-zabbix ~]# grep -n ^DB /etc/zabbix/zabbix_server.conf
91:DBName=zabbix
107:DBUser=zabbix
115:DBPassword=zabbix
1.19 配置apache php
sed -i.ori '18a php_value date.timezone Asia/Shanghai' /etc/httpd/conf.d/zabbix.conf
1.20 重启zabbix
[root@oldboyedu-zabbix ~]# systemctl restart zabbix-server.service httpd.service
1.21 登录zabbix的web安装界面
http://10.0.0.71/zabbix/setup.php
账号:Admin #注意是大写的A
密码:zabbix
1.22 zabbix的web安装界面步骤
1、选择下一步,Check of pre-requisites,如图所示
2、选择下一步,配置zabbix server detail,如下图所示:
说明:检查所需项是否都成功
3、选择下一步,配置zabbix 服务端设置,相当于mysql数据信息,如下图所示:
说明:配置mysql类型,如果是mridb就会有mridb的类型,mysql连接的是本地那就是hostsname,mysql端口是0那就是默认是3306,mysql中管理zabbix的用户那就是zabbix,zabbix的密码zabbix
4、输入zabbix服务端的地址是zabbix服务端的端口,还有zabbix的名字
4、点击下一步,便完成安装,安装完成的界面如下图所示:
说明:核对全部信息
5、安装完成,如下图所示:
10051是服务端的端口
10050是客户端的端口
1.23 修改zabbix的web管理页面为中文语言
1.24 如果zabbix与数据库分离那就修改数据库配置文件
[root@oldboyedu-zabbix doc]# grep DB /etc/zabbix/zabbix_server.conf
### Option: DBHost
# DBHost=localhost #vim进去,修改此处mysql的数据库地址,类似于nginx与mysql分离的操作
### Option: DBName
# For SQLite3 path to database file must be provided. DBUser and DBPassword are ignored.
# DBName=
DBName=zabbix
### Option: DBSchema
# Schema name. Used for IBM DB2 and PostgreSQL.
# DBSchema=
### Option: DBUser
# DBUser=
DBUser=zabbix
### Option: DBPassword
DBPassword=zabbix
### Option: DBSocket
# DBSocket=/tmp/mysql.sock
### Option: DBPort
# DBPort=3306
### Option: StartDBSyncers
# Number of pre-forked instances of DB Syncers.
# StartDBSyncers=4
1.25 修改客户端的zabbix配置文件,设置zabbix服务端地址
vim /etc/zabbix/zabbix_agentd.conf
Server=172.16.1.71 #server地址是zabbix服务端的地址,这里写172内网,此处在95行
1.26 重启客户端zabbix服务,生效配置文件
systemctl restart zabbix-agent.service
1.27 服务端从客户端获取监控数据的命令(问客户端是否健在)
yum install zabbix-get –y #在服务端安装获取数据的命令 zabbix-get
zabbix_get -s 172.16.1.71 -p10050 -k agent.ping #监控172.16.1.71获取数据,问问他是否健在,出现1说明现在健在
1.28 在web界面里配置客户端的IP地址,并且启用监控
说明:如果要控制其他客户端那就添加新的主机,就要在右上角里点击“创建主机”
1.29 等待服务变成绿色
1.30 让zabbix服务立马变绿色的办法
[root@oldboyedu-zabbix zabbix]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.1.71 oldboyedu-zabbix #做域名解析,刷新立马就绿了。
1.31 zabbix排错方法
#查日志看看出错的提示
查文件 /etc/zabbix/zabbix-server.conf 看看账号密码是否填错,或者没有去掉注释
zabbix本地数据库能否正常登录成功
查看zabbix服务端端口,客户端端口 10051/10050是否启动
最后在重启
并且在zabbix绿色和红色处可以直接查看出问题出在哪里
1.32 下节课需要学到的内容
监控多台服务器配置
自定义监控
自定义监控服务器登录用户数量
自定义监控nginx状态 (状态模块)
自定义监控tcp连接状态(状态模块)
1.33 作业:监控7和8测试
说明:了解原理就可以,比如每个被监控客户端,都要安装 zabbix-agent 安装完成后,需要修改每个客户端里的/etc/zabbix/zabbix_agentd.conf配置文件,指定zabbix服务端(控制台)的IP,然后重启一下zabbix-agent服务,在zabbix控制台里的web页面里创建一台主机,随后添加Template OS Linux模板,注意是先选择模板后,再点击添加,在点击更新(小细节)然后就好了。直接等待绿色就好了。
1、安装客户端yum install –y zabbix-agent
2、配置文件/etc/zabbix/zabbix_agentd.conf,里的server选项= 控制台主机 172.16.1.71
3、重启服务 systemctl restart zabbix-agent
4、查看网络端口是否打开 ss –lntup|grep 10050 ##客户端没有netstat命令所以只能使用ss命令查看网络端口。
5、如果有错误也直接查看tail /var/log/zabbix/zabbix_agentd.log日志查看错误
6、在控制台里添加主机,添加被控制的客户端IP,添加模板然后刷新等绿色就好了。
1.34 查看一个配置文件有用的信息的技巧
grep –v “#” /etc/zabbix/zabbix-agetn.conf
说明:每次查找配置文件里面的参数时,可以直接匹配去除井号#的每一行,只看生效的那些参数