目次
Docker、Dockerをインストールします-構成と構成の高速化
.yamlファイルを書き込んでzabbix-serverを起動します
周囲
centos 7.5 zabbix-server:192.168.253.110 zabbix-agent:192.168.253.120
Docker、Dockerをインストールします-構成と構成の高速化
1)Aliのドッカーソースを構成する
[root@zabbix-server ~]# wget -O /etc/yum.repos.d/epel.repo #自己玩,我就没在意docker是ce还是ee
http://mirrors.aliyun.com/repo/epel-7.repo
2)docker、docker-composeをインストールします
[root@zabbix-server ~]# yum -y install docker docker-compose
[root@zabbix-server ~]# vim /etc/docker/daemon.json #配置加速
{"registry-mirrors": ["https://26ahzfln.mirror.aliyuncs.com"]}
3)ドッカーを起動します
[root@zabbix-server ~]# systemctl restart docker
[root@zabbix-server ~]# setenforce 0 ###使用docker不用关闭防火墙
.yamlファイルを書き込んでzabbix-serverを起動します
1).yamlソースコード
[root@zabbix-server src]# vim docker-compose.yml
version: "3"
services:
mysql-server:
image: bingozhou/mysql5.7
environment:
MYSQL_ROOT_PASSWORD: 123
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: 123
ports:
- "3306:3306"
zabbix-server:
image: zabbix/zabbix-server-mysql
environment:
DB_SERVER_HOST: mysql-server
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: 123
ports:
- "10051:10051"
depends_on:
- "mysql-server"
zabbix-web:
image: zabbix/zabbix-web-nginx-mysql
environment:
DB_SERVER_HOST: mysql-server
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: 123
PHP_TZ: Asia/Shanghai
ZBX_SERVER_HOST: zabbix-server
ports:
- "80:8080"
depends_on:
- "mysql-server"
- "zabbix-server"
zabbix-agent:
image: zabbix/zabbix-agent
environment:
ZBX_SERVER_HOST: zabbix-server
ports:
- "10050:10050"
depends_on:
- "zabbix-server"
2)サービスを開始します
[root@zabbix-server src]# docker-compose up -d
Creating src_mysql-server_1 ... done
Digest: sha256:292b05bdb41c4b16dc12f882bb3be18547e6680372549dcec61ad711f80bd976
Creating src_zabbix-server_1 ... done
Creating src_mysql-server_1 ...
Creating src_zabbix-server_1 ...
Creating src_zabbix-web_1 ... done
Creating src_zabbix-agent_1 ... done
[root@zabbix-server src]# docker-compose ps
Name Command State Ports
---------------------------------------------------------------------------------------------
src_mysql-server_1 docker-entrypoint.sh mysqld Up 0.0.0.0:3306->3306/tcp
src_zabbix-agent_1 /sbin/tini -- /usr/bin/doc ... Up 0.0.0.0:10050->10050/tcp
src_zabbix-server_1 /sbin/tini -- /usr/bin/doc ... Up 0.0.0.0:10051->10051/tcp
src_zabbix-web_1 docker-entrypoint.sh Up 0.0.0.0:80->8080/tcp, 8443/tcp
Zabbixへのブラウザアクセス-Webページ
1)ブラウザアクセス
2)中国のzabbixインターフェース
Zabbixエージェント側を構成します
1)zabbix.yumソースを構成します
[root@zabbix-agent ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
[root@zabbix-agent ~]# yum -y install zabbix-agent
[root@zabbix-agent ~]# systemctl start zabbix-agent
2)構成ファイルを変更します
[root@zabbix-agent ~]# vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.253.110
ServerActive=192.168.253.110
3)zabbix-agentを再起動します
[root@zabbix-agent ~]# systemctl restart zabbix-agent
Mysqlのパラメータを監視する
1)zabbix-agent側にmysqlをインストールします
[root@zabbix-agent ~]# yum -y install mariadb mariadb-server
[root@zabbix-agent ~]# systemctl start mariadb
2)mysql.shファイルを/ etc / zabbix(エージェント側)に書き込みます
[root@zabbix-agent ~]# cd /etc/zabbix/
[root@zabbix-agent zabbix]# vim mysql.sh #脚本中是mysql的一些参数
#!/bin/bash
# 用户名
MYSQL_USER='root'
# 密码
MYSQL_PWD='123456'
# 主机地址/IP
MYSQL_HOST='localhost'
# 端口
MYSQL_PORT='3306'
# 数据连接
MYSQL_CONN="/usr/bin/mysqladmin -u${MYSQL_USER} -p${MYSQL_PWD} -h${MYSQL_HOST} -P${MYSQL_PORT}"
# 参数是否正确
if [ $# -ne "1" ];then
echo "arg error!"
fi
# 获取数据
case $1 in
Uptime)
result=`${MYSQL_CONN} status|cut -f2 -d":"|cut -f1 -d"T"`
echo $result
;;
Com_update)
result=`${MYSQL_CONN} extended-status |grep -w "Com_update"|cut -d"|" -f3`
echo $result
;;
Slow_queries)
result=`${MYSQL_CONN} status |cut -f5 -d":"|cut -f1 -d"O"`
echo $result
;;
Com_select)
result=`${MYSQL_CONN} extended-status |grep -w "Com_select"|cut -d"|" -f3`
echo $result
;;
Com_rollback)
result=`${MYSQL_CONN} extended-status |grep -w "Com_rollback"|cut -d"|" -f3`
echo $result
;;
Questions)
result=`${MYSQL_CONN} status|cut -f4 -d":"|cut -f1 -d"S"`
echo $result
;;
Com_insert)
result=`${MYSQL_CONN} extended-status |grep -w "Com_insert"|cut -d"|" -f3`
echo $result
;;
Com_delete)
result=`${MYSQL_CONN} extended-status |grep -w "Com_delete"|cut -d"|" -f3`
echo $result
;;
Com_commit)
result=`${MYSQL_CONN} extended-status |grep -w "Com_commit"|cut -d"|" -f3`
echo $result
;;
Bytes_sent)
result=`${MYSQL_CONN} extended-status |grep -w "Bytes_sent" |cut -d"|" -f3`
echo $result
;;
Bytes_sent)
result=`${MYSQL_CONN} extended-status |grep -w "Bytes_sent" |cut -d"|" -f3`
echo $result
;;
Bytes_received)
result=`${MYSQL_CONN} extended-status |grep -w "Bytes_received" |cut -d"|" -f3`
echo $result
;;
Com_begin)
result=`${MYSQL_CONN} extended-status |grep -w "Com_begin"|cut -d"|" -f3`
echo $result
;;
*)
echo "Usage:$0(Uptime|Com_update|Slow_queries|Com_select|Com_rollback|Questions|Com_insert|Com_delete|Com_commit|Bytes_sent|Bytes_received|Com_begin)"
;;
esac
3)mysqlパスワードを変更してテストします
[root@zabbix-agent zabbix]# mysqladmin -uroot password 123456
[root@zabbix-agent zabbix]# chmod 777 mysql.sh
[root@zabbix-agent zabbix]# ./mysql.sh Uptime 启动了多久
1094
4)zabbix-agentキー値を追加します
[root@zabbix-agent zabbix]# vim /etc/zabbix/zabbix_agentd.conf
Hostname=192.168.253.120 本机ip地址
UserParameter=mysql.status[*],/etc/zabbix/mysql.sh $1
サーバー側に監視項目を追加する
1)ホストを作成し、追加します
2)監視項目を作成する
3)グラフィックを作成する
4)モニタリングチャートを表示する