mysql多實例監控實錄 系統環境: cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) 內核版本: uname -r 3.10.0-514.el7.x86_64 docker版本: docker -v Docker versio ...
mysql多實例監控實錄 系統環境: cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) 內核版本: uname -r 3.10.0-514.el7.x86_64 docker版本: docker -v Docker version 1.12.6, build 3a094bd/1.12.6 docker 相關鏡像版本: docker.io/zabbix/zabbix-web-nginx-mysql latest docker.io/zabbix/zabbix-server-mysql latest docker.io/mysql 5.7 被監控mysql應用版本: mysql-5.7.17-linux-glibc2.5-x86_64 Percona Monitoring Plugins版本: 1.1.7-2.noarch.rpm 寫在最前:如果zabbix server和zabbix agent已經通過其他方式安裝,可以直接跳過1、2步,直接從第3步開始看。 1、zabbix服務端我們運行在docker容器內 所以伺服器端先安裝docker服務 yum install -y epel-release yum install -y docker #centos6.x版本的命令是yum install -y docker-io 然後運行docker服務 systemctl start docker docker加入開機自啟動 systemctl enable docker 查看docker是否成功啟動 systemctl status docker 註:使用docker需要使用加速器,否則那龜速,自己體會吧。加速器daocloud和阿裡雲都可以,我使用的前者。 2.安裝相關容器 2.1. mysql 容器 docker run --name mysql-server -t \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="ywwd.net" \ -e MYSQL_ROOT_PASSWORD="ywwd.net" \ -v /data/container/mysql/zabbix:/var/lib/mysql \ -v /etc/localtime:/etc/localtime:ro \ --restart=always \ -d mysql:5.7 \ --character-set-server=utf8 --collation-server=utf8_general_ci --sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 2.2. zabbix-server 容器 docker run --name zabbix-server-mysql -t \ -e DB_SERVER_HOST="mysql-server" \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="ywwd.net" \ -e MYSQL_ROOT_PASSWORD="ywwd.net" \ --link mysql-server:mysql \ -p 10051:10051 --restart=always \ -v /etc/localtime:/etc/localtime:ro \ -d zabbix/zabbix-server-mysql:latest 2.3. zabbix-web 容器(nginx) docker run --name zabbix-web-nginx-mysql -t \ -e DB_SERVER_HOST="mysql-server" \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="ywwd.net" \ -e MYSQL_ROOT_PASSWORD="ywwd.net" \ --link mysql-server:mysql \ --link zabbix-server-mysql:zabbix-server \ -v /etc/localtime:/etc/localtime:ro \ -p 80:80 \ --restart=always \ -d zabbix/zabbix-web-nginx-mysql:latest 註意:這裡有個小問題,zabbix-web-nginx-mysql的啟動腳本/run_zabbix_component.sh中,指定了時區,不是中國的Asia/Shanghai,所以我們要進入zabbix-web-nginx-mysql進行修改 2.4. 修改zabbix-web的時區 docker exec -it zabbix-web-nginx-mysql /bin/bash TZ=${TZ:-"Asia/Shanghai"} 這裡改為Asia/Shanghai,否則zabbix-web端的時間會慢5個小時 sed -in 's#Europe/Riga#Asia/Shanghai#g' /run_zabbix_component.sh 修改時區後,需要重啟容器 docker restart zabbix-web-nginx-mysql 2.5. 在firewall防火牆放開zabbix-server和zabbix-agent的服務埠號 firewall-cmd --permanent --add-port=10050-10051/tcp #--permanent永久生效,10050zabbix-agent服務埠,10051zabbix-server服務埠 firewall-cmd --reload #更改後需要重新載入firewall防火牆 firewall-cmd --list-all #最後查看配置是否生效 這樣zabbix-server端就已經安裝完畢 接下來客戶端我們採用rpm包進行安裝 rpm -ivh zabbix-agent-3.2.6-1.el7.x86_64.rpm 同樣需要放開zabbix-agent埠 firewall-cmd --permanent --add-port=10050/tcp firewall-cmd --reload 然後對zabbix-agent端進行配置 egrep -v '^$|^#' /etc/zabbix/zabbix_agentd.conf PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log Server=10.0.0.106 # <====zabbix-server端的IP地址 ServerActive=10.0.0.106 #<====zabbix-server端的IP地址,主動方式 Hostname=10.0.0.107 #<====zabbix-agent端的IP地址或者主機名 Include=/etc/zabbix/zabbix_agentd.d/*.conf 然後在zabbix-server端的web界面進行主機添加
