efk zabbix 配置安装
EFK-redis-logstash
zabbix监控mysql性能
zabbix邮件发送报警,自动注册自动发现
EFK-redis-logstash
167:elasticsearch+jdk+logstash+kibana+redis
171:elasticsearch+filebeat+jdk+apache
174:elasticsearch+filebeat+jdk+apache
三台都操作
1. rpm -ivh jdk-8u131-linux-x64_.rpm
2. java -version
#安装配置elasticsearch
1. rpm -ivh elasticsearch-6.6.2.rpm
2. vim /etc/elasticsearch/elasticsearch.yml
3. cat /etc/elasticsearch/elasticsearch.yml |grep -v "^#"
cluster.name: cc
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 192.168.190.167
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.190.167", "192.168.190.171","192.168.190.174"]
4. systemctl enable elasticsearch
5. systemctl start elasticsearch
6. systemctl status elasticsearch
7. tailf /var/log/elasticsearch/cc.log
8. netstat -lptnu |grep 9200
167操作
1. rpm -ivh kibana-6.6.2-x86_64.rpm
2. vi /etc/kibana/kibana.yml
3. cat kibana.yml |grep -v '^#'|sed '/^$/d'
server.port: 5601
server.host: "192.168.190.167"
elasticsearch.hosts: ["http://192.168.190.167:9200"]
4. systemctl start kibana
5. netstat -lptnu|grep 5601
171操作
#安装配置logstash和redis
1. rpm -ivh logstash-6.6.0.rpm
2. vi /etc/logstash/conf.d/httpd.conf
#编辑文件
input {
redis {
data_type => "list"
host => "192.168.190.167"
password => "111111"
port => "6379"
db => "1"
key => "filebeat-httpd"
}
}
output {
elasticsearch {
hosts => ["192.168.190.167:9200"]
index => "redis-httpdlog-%{+YYYY.MM.dd}"
}
}
4. systemctl start logstash
5. chmod 777 /var/log -R
6. tailf /var/log/elasticsearch/cc.log
1. yum -y install gcc gcc-c++ pcre-devel zlib-devel
2. tar zxf redis-5.0.0.tar.gz
3. cp -r redis-5.0.0 /usr/local/redis
4. cd /usr/local/redis
5. make && make install
6. ln -s /usr/local/redis/src/redis-server /usr/bin/redis-server
7. ln -s /usr/local/redis/src/redis-cli /usr/bin/redis-cli
8. vi /usr/local/redis/redis.conf
9. cat /usr/local/redis/redis.conf |grep -v "^#"
bind 192.168.190.167
requirepass 111111
10. redis-server /usr/local/redis/redis.conf
echo 511 > /proc/sys/net/core/somaxconn
echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf
echo "echo never > /sys/kernel/mm/transparent_hugepage/enabled" >> /etc/rc.local
11. vim /usr/local/redis/redis.conf
136 no--->yes
12. redis-server /usr/local/redis/redis.conf
174操作
#安装filebeat
1. yum -y install filebeat-6.8.1-x86_64.rpm
2. vim /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/httpd/access_log
filebeat.config.modules:
path: ${path.config}/modules.d/*.yml
reload.enabled: false
setup.ilm.enabled: false
setup.template.name: "filebeat-httpd"
setup.template.pattern: "filebeat-httpd-*"
setup.template.settings:
index.number_of_shards: 3
setup.kibana:
output.redis:
hosts: ["192.168.190.167:6379"]
key: "filebeat-httpd"
db: 1
timeout: 5
password: 111111
processors:
- add_host_metadata: ~
- add_cloud_metadata: ~
#测试redis收集httpd日志
1. redis-cli -h 192.168.190.167
192.168.190.167:6379> auth 111111
192.168.190.167:6379> get *
(nil)
192.168.190.167:6379> KEYS *
(empty list or set)
192.168.190.167:6379> SELECT 1
OK
192.168.190.167:6379[1]> KEYS *
"filebeat-httpd"
浏览器打开192.168.190.167:5601测试
zabbix监控mysql
167:server端
171:agent端
同时操作
yum -y install ntpdate mysql mysql-server
#时间同步
ntpdate pool.ntp.org
167操作
1. yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
2. systemctl start mysql
3. mysql -e "create database zabbix character set utf8 collate utf8_bin;"
4. mysql -e "grant all on zabbix.* to zabbix@localhost identified by 'zabbix';"
5. mysql -e "flush privileges;"
6. zcat /usr/share/doc/zabbix-server-mysql-4.4.10/create.sql.gz |mysql -uzabbix -pzabbix zabbix
7. vim /etc/zabbix/zabbix_server.conf
8. cat /etc/zabbix/zabbix_server.conf |grep -v "^#"|sed '/^$/d'|grep DB
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
9. systemctl start httpd zabbix-server zabbix-agent
10. netstat -lptnu|egrep "80|10050|10051"
11. vim /etc/php.ini
date.timezone =Asia/Shanghai
12. systemctl restart httpd
测试http;//192.168.176.137/zabbix
171操作
1. yum -y install zabbix-agent mariadb mariadb-server httpd bc
2. vim /etc/zabbix/zabbix_agentd.conf
3. cat /etc/zabbix/zabbix_agentd.conf |grep -v "^#"|sed '/^$/d'
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=192.168.190.167
ServerActive=192.168.190.167
Hostname=Zabbix server
4. systemctl start zabbix-agent mariadb httpd
5. mkdir -p /etc/zabbix/scripts
6. cd /etc/zabbix/scripts/
7. vim mysql.sh
#!/bin/bash
#byte_sent
#byte_recv
#read
#qps
#tps
#pv
#uv
case $1 in
#流量
byte_sent)
mysqladmin -S /var/lib/mysql/mysql.sock extended-status |grep -w "Bytes_sent"| awk '{print $4}'
;;
byte_recv)
mysqladmin -S /var/lib/mysql/mysql.sock extended-status |grep -w "Bytes_received" |awk '{print $4}'
;;
#innodb缓冲池的read命中率
read)
mysql -e "show global status like 'innodb%read%';"| grep Innodb_buffer_pool_read_requests |awk '{print $2}'
;;
#QPS
qps)
q1=`mysql -uroot -s -e 'show global status like "Question%";'| awk '{print $NF}'`
t1=`mysqladmin status |awk '{print $2}'`
p=`echo "scale=4;$q1/$t1"|bc`
echo $p
;;
#TPS
tps)
c1=`mysql -s -e "show global status like 'Com_commit';"| awk '{print $NF}'`
r1=`mysql -s -e "show global status like 'Com_rollback';"| awk '{print $NF}'`
t2=`mysqladmin status |awk '{print $2}'`
n1=$((c1+r1))
s=`echo "scale=4;$n1/$t2"|bc`
echo $s
;;
#PV
pv|PV)
cat /var/log/httpd/access_log |awk '{print $1}'| wc -l
;;
#UV
uv|UV)
cat /var/log/httpd/access_log |awk '{print $1}'| sort|uniq|wc -l
;;
esac
8. vim /etc/zabbix/zabbix_agentd.d/mysql.conf
UserParameter=mysql[*],/bin/bash /etc/zabbix/scripts/mysql.sh $1
9. systemctl restart zabbix-agent
测试http;//192.168.176.137/zabbix
开启报警
添加主机
创建监控项
图形显示
OK了
aqa芭蕾eqe亏内代表开心代表快乐