大家好,我是互联网老辛, 关注我,云计算路上不迷路;
面试官一会问如何安装zabbix,一会问如何监控Linux系统,一会又让背一下zabbix后台图形化的各个英文是什么意思。
这个时候,我依然笑嘻嘻的回答问题,最后我说,你要不行,给我台电脑, 我给你现场演示zabbix监控系统。
面试官笑了笑说,听说抢电脑是你的强项,这次不给你电脑看你怎么办?
面试官一次次的突破我的底线,我怒吼一句,手机和键盘给我,我给你实现zabbix监控系统,并写好文档。
我快速的用蓝牙键盘连接了面试官的手机,并破解了root密码,使用手机的root权限登陆家里的远程服务器,并熟练的使用我自带的手机投影仪,把操作过程显示在大屏幕上。
我就是那个随身携带微型投影仪的人,就是这么机智。
yum install httpd httpd-devel mariadb mariadb-server mariadb-devel php-common php-gd php-mbstring php-xml php-bcmath php-mysql php-cli php-devel php-pear -y
# rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
# yum clean all
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y
(这一部分时间比较长,大家可以去喝水,休息)
启动数据库及httpd
[root@itlaoxin ~]# systemctl start mariadb && systemctl start httpd
授权
[root@itlaoxin ~]# mysql
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all on zabbix.* to zabbix@localhost identified by '123456';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> quit
Bye
[root@itlaoxin ~]
[root@itlaoxin ~]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Enter password: 123456
[root@itlaoxin ~]#
[root@itlaoxin ~]# vim /etc/zabbix/zabbix_server.conf
124 DBPassword=123456
[root@itlaoxin ~]# vim /etc/httpd/conf.d/zabbix.conf
改为
20 php_value date.timezone Asia/Shanghai
启动Zabbix server和agent进程,并为它们设置开机自启:
# systemctl restart zabbix-server zabbix-agent httpd
# systemctl enable zabbix-server zabbix-agent httpd
http://192.168.1.17/zabbix/
配置数据库连接,输入数据库名、用户、密码,单击Test connection,显示OK,单击下一步即可。
现在 登陆了。 这里注意用户:Admin 密码: zabbix
注意大小写
这里我们只需要将进程默认值
what? 关键时候居然有个黄色警告?
看着面试官的那副嘴脸,我只能继续调试
这个黄色警告,提示我的服务器 进程过多,我来查看下进程
[root@itlaoxin ~]# ps -aux |wc -l
321
默认值是300,这进程居然321个,那我把进程改为3000即可。
等个2分钟,会自动消失告警。
接下来是时候,显示监控远程Linux服务器了,还剩最后三分钟,面试官已经悠闲地抽起来烟。
我的一世英名不能毁在这,我迅速远程另一台主机,并开始了配置,键盘都已经冒出了火花。
cd /etc/yum.repos.d/
写一个脚本来执行:
vim zabbix.sh
#!/bin/bash
echo -e "请给出要安装的zabbix版本号,建议使用4.x的版本 \033[31musage:./zabbix_aliyun.sh 4.0|4.4|4.5 \033[0m"
echo "例如要安装4.4版本,在命令行写上 ./zabbix_aliyun.sh 4.4"
if [ -z $1 ];then
exit
fi
VERSION=$1
if [ -f /etc/yum.repos.d/zabbix.repo ];then
rm -rf /etc/repos.d/zabbix.repo
fi
rpm -qa | grep zabbix-release && rpm -e zabbix-release
rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/$VERSION/rhel/7/x86_64/zabbix-release-$VERSION-1.el7.noarch.rpm
sed -i "s@zabbix/.*/rhel@zabbix/$VERSION/rhel@g" /etc/yum.repos.d/zabbix.repo
sed -i '[email protected]@mirrors.aliyun.com/zabbix@g' /etc/yum.repos.d/zabbix.repo
[ $? -eq 0 ] && echo "阿里云的zabbix源替换成功" || exit 1
yum clean all
yum makecache fast
使用脚本安装
[root@itlaoxin18 yum.repos.d]# bash zabbix.sh 4.0
yum -y install zabbix-agent
备份配置文件
[root@itlaoxin18 yum.repos.d]# cp /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.bak
[root@itlaoxin18 ~]# vim /etc/zabbix/zabbix_agentd.conf
96 Server= 192.168.1.17
zabbix 服务器的ip
需要注意: 在这个Server下面还有个Server=127.0.0.1 (可以删除,或者在这直接修改)
137 ServerActive=192.168.1.17
148 Hostname=itlaoxin18
ZABBIX 客户端计算机IP或者hostname
[root@itlaoxin18 ~]# systemctl start zabbix-agent.service
[root@itlaoxin18 ~]# netstat -anptu | grep zabbix
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 6154/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 6154/zabbix_agentd
[root@itlaoxin18 ~]#
配置-主机-创建主机
点击群组后面的选择,选Linux servers
接下来,修改IP地址,和端口号
添加模板:
点击选择–选OSlinux,-点击添加–更新
注意: 此处如果不点击添加,是没法用的
客户端要关闭selinux和防火墙
这样我们就可以看到已经监控到了:
监控(monitoring)-graphs(图形)-群组-主机-图形:
另外补充个异常处理:
异常处理:
如果无法监控到客户端,可以在server端,执行命令获取agent的items key值是否有返回
需要安装一个命令zabbix-get
root@itlaoxin ~]# yum install zabbix-get
进行查看:
[root@itlaoxin ~]# /usr/bin/zabbix_get -s 192.168.1.18 -k system.uname
Linux itlaoxin18 3.10.0-1062.el7.x86_64 #1 SMP Wed Aug 7 18:08:02 UTC 2019 x86_64
在最后三秒钟,我把手机递给面试官,并指了指投影,面试官看到了我做出的效果后愣住了,于是我起身,以迅雷不及掩耳之势抢过了面试官的烟,猛吸几口。
面试官站起来又给我递了一根烟,并拿出了打火机,同时吩咐旁边的小王,去打印offer。
我知道,我被录取了,十年了,是时候出山了。
《全剧终》
欢迎关注互联网老辛,一起学习云计算和python相关的内容。