ELK概述

elasticsearch实战
logstash数据采集
kibana可视化

宿主机
cd /var/lib/libvirt/images/
ls
df -h /
rm -f vm2 vm3 vm4 vm5
pwd 
qemu-img create -f qcow2 -b small-new.qcow2 vm2
qemu-img create -f qcow2 -b small-new.qcow2 vm3
qemu-img create -f qcow2 -b small-new.qcow2 vm4
virt-manager

这里的内存都用2048
在这里插入图片描述

server2,3,4
systemctl enable --now elasticsearch.service
systemctl status elasticsearch.service
netstat -antlp
free -m
cd /var/log/elasticsearch/
curl localhost:9200/
默认安装之后是单机版
cat elasticsearch.log 
cd /etc/elasticsearch/
systemctl stop elasticsearch.service
ls 
netstat -antlp

此时的端口监听的是localhost的端口,但是我们要使监听eth0的端口。
需要更改两个文件elasticsearch/.yml jvm.options

vim jvm.options #这个程序会用多少内存,会锁定一G,所以会给2G的内存,
free -m
如果elastcsearch在生产环境中,自己的内存比较大,但是也尽量不要超多32G的内存量,单实例内存不要超过32G。剩下的都给宿主机
vim elastcsearch.yml #控制内存
修改监听本机所有端口

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果内存不足不要开这个接口。

systemctl restart elasticsearch.service #此时重启失败
systemctl status elasticsearch.service
cat /var/log/elasticsearch/my-es.log  #集群的日志
cat /var/log/elasticsearch/elastcsearch.log #单机的日志
vim elastcsearch.yml

在这里插入图片描述

systemctl restart elasticsearch.service
netstat -antlp
锁定内存
vim elasticsearch.yml

在这里插入图片描述打开这个之后,重启会有问题。

vim /etc/security/limits.conf

在这里插入图片描述

vim /etc/sysconfig/elasticsearch
vim /usr/lib/systemd/system/elasticsearch.service

在这里插入图片描述

vim /etc/security/limits.conf

在这里插入图片描述

systemctl daemon-reload

netstat -antlp
swapoff -a #禁掉所有swap,让它完全运行在内存
vim /etc/fstab
systemctl enable --now elasticsearch.service

在这里插入图片描述
增加图形
elastcsearch插件
这个文件在github
在这里插入图片描述

server2,3,4
yum install -y unzip
unzip elasticsearch-head-master.zip
ls
cd elasticsearch-head-master/
ls

在这里插入图片描述
在这里插入图片描述
打开的时候要联网
cnpm

yum install -y bzip2
tar jxf phantomjs-2.1.1-linux-x86_64.tar.bz2
ls
cd phantomjs-2.1.1-linux-x86_64
ls
cd bin/
ls
mv phantomjs /usr/local/bin/
cd phantomjs-2.1.1-linux-x86_64
ls
npm install --registry=https://registry.npm.taobao.org
cd _site/
ls
vim app.js
/9200

在这里插入图片描述

这个服务是可以独立运行的,是和es分离的,可以不用运行在一个节点上
如果希望监听本机localhost,可以监听eth0接口的话,把es这这个配置里边elasticsearch.yml中
在这里插入图片描述
改成0000也可以

cd elasticsearch-head-master/ #设置es集群的入口,这个指定到任何一个节点都可以,,,诶个点都能查询,都能存储数据,也可以作为Mastsr,可以把任何一个节点作为集群入口,只要告诉它一个就可以,

npm run start & #这个必须要在head目录中运行,所有安装的依赖性也都是在这个目录中,然后回车,不然就会卡在那里,它监听的是本机的这个9100,说是localhost,实际上监听本机所有端口,

netstat -antlp

浏览器
172.25.0.2:9100
在连接时候,发现没有连接,它需要设置es集群,

vim /etc/elasticsearch/elasticsearch.yml

在这里插入图片描述
在这里插入图片描述

systemctl restart elasticsearch.service
curl localhost:9200
curl 172.25.0.2:9200

在这里插入图片描述
0
在这里插入图片描述
主节点是五角星
在企业8上,也就是宿主机,

宿主机
rpm -q podman
podman images
podman 
podman search cerebro
podman pull docker.io/lmenezes/cerebro
podman images
podman run -d --name cerebro 9000:9000 docker.io/lmenezes/cerebro
netstat -antlp

localhost:9000
在这里插入图片描述
密集型计算的应用尽量的区分开
如果希望server2不保存数据
在配置yml文件中
在这里插入图片描述
把所有的属性都false掉,就是一个查询节点,client节点,这个节点的意义就是协调节点针对海量的请求,做一个分发合并。
数据节点,可以指定多个location,但是不推荐,因为es是分布式的,本身就有负责高可用。
磁盘阵列(Redundant Arrays of Independent Drives,RAID)

logstash数据采集
如果遇到内存不够,不能再开虚拟机了
在配置文件中
在这里插入图片描述
禁掉上面的,然后开启swap分区

宿主机
qemu-img create -f qcow2 -b small-new.qcow2 vm5
qemu-img create -f qcow2 -b small-new.qcow2 vm6
virt start vm5

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cd /etc/logstash/
cd conf.d/
ls
pwd
ls
cd ..
vim logstash.yml
rpm -ql logstash
cd /usr/share/logstash/
ls
cd bin/

elastic.co/guide/en/logstash/7.6/index.html #官方文档

/usr/share/logstash/bin/logstash -e 'input { stdin { } } output { stdout {} }'
对数据做预处理,做格式化,-e使用命令行的方式去更改配置。stdin数据来源终端。
这种方式提示会直接显示到终端屏幕上
一般情况下不会用这种形式,使用以下形式
cd /etc/logstash/
cd conf.d/
vim test.conf

在这里插入图片描述

/usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/test.conf
输出到es中
数据的输入可以根据各种应用来决定。
vim test.conf

在这里插入图片描述

/usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/test.conf
ll /var/log/messages
ll -d /var/log/
id logstash
chmod 644 /var/log/messages
vim test.conf
/usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/test.conf 如果有输出,则表示读到了文件的信息。如果es中没有数据,则表示es的配置可能有问题。

在这里插入图片描述
start_postion是读文件时是从开头还是末尾
文件没有新的数据,会持续去读取这个文件,
在这里插入图片描述
如果在es中删除索引,重新运行,如果没有新的变更,就不会产生新的索引。

logger westos #会往日志文件中存一笔数据

如果节点突然中断了,导致服务重启,它不是把文件再重新读一遍,因为在读文件的时候会有纪录,是一种原子操作,它会有一个纪录功能,始终纪录着这个上一个进程,然后下一次服务器来的时候会读这个缓存,我们知道读到哪是这个文件的开始,读到什么地方没读,读过的地方不会再处理。

cd /usr/share/logstash/
cd data/
cd plugins/
cd file/
l.

在这里插入图片描述
如果把这个文件删除了,再运行
/usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/test.conf
就会读不到缓存,就会从文件开头重新再读一次。

syslog采集文件

server5
cd /etc/logstash/
cd conf.d/
vim test.conf

在这里插入图片描述
运行之后,会在server5上开个端口,接收日志。

netstat -antulp | grep :514 #TCP和UDP端口都是514

此时es那里没有数据过去

server3
vim /etc/rsyslog.conf

在这里插入图片描述
在这里插入图片描述

systemctl restart rsyslog.service

在server5有数据传过来。
syslog是作为一个日志服务器,自动将日志收集过去。

多行过滤

server2
cd /var/log/elasticsearch/
ls
scp my-es.log server5:/var/log/
server5
vim test.conf

在这里插入图片描述
在这里插入图片描述
运行这个文件

把多行日志合并为一个事件
在这里插入图片描述
我们要重新运行,在运行之前,把es的数据删除重来,一个日志文件读了之后,会有文件缓存的,并且要删除
在这里插入图片描述
再运行

grok过滤
配置文件的修改
在这里插入图片描述
es的核心是倒排索引,对数据是预处理过的,做检索,做分析,
倒排索引,
如果安装一个http

server5
yum install httpd -y
cd /var/www/html/
echo www.westos.org > index.html
systemctl start httpd
curl localhost
宿主机
ab -c1 -n100 http://172.25.0.5/index.html
server5
cat /var/httpd/access_log

如果不做处理,将其中的数据取出来,做个切分。
常规服务都有
在这里插入图片描述

cat httpd
vim /etc/httpd/conf/httpd.conf

日志类型
在这里插入图片描述

cd
chmod 755 /var/log/httpd
vim /etc/logstash/conf.d/test.conf

在这里插入图片描述
运行
logstash主要是通过各种plugins对数据进行预处理。

如果这里的内存不够,可以在logstash上运行,

在这里插入图片描述
将kibana和logstash装在一起。

cd /etc/kibana
vim kibana,yml

在这里插入图片描述
在这里插入图片描述

ELK可以都装在一台虚拟机上

grep -v ^# kibana.yml | uniq
systemctl start kibana

这个是提供一个数据可视化。
172.25.0.2:5601
索引生命周期策略,是在es上生成的这个索引得有策略来管理它们。
ELK对数据进行处理的平台

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在kibana这里可以直接管理es,
在这里插入图片描述
拿刚才匹配到的apachelog绘制图像
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
ab压测工具,yum install -y httpd-tools
垂直条形图是为了显示多个节点的信息
在这里插入图片描述
x轴是ip地址。
如果节点内存不够,崩溃了,开启swap分区。

vim /etc/fstab
swapon -a
重启服务

仪表板对可视化做一个统一的展示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
F11全屏展示
在这里插入图片描述
日志采集输出到es中,kibana是个前端的,做可视化演示。
可以做业务量增长
在这里插入图片描述
监控:针对指标
在这里插入图片描述
在这里插入图片描述
没有必须搭建另外的监控
filebea
在这里插入图片描述
在这里插入图片描述
在这里可以把所有的日志都聚合过来,但是需要安装filebeat
每个节点的es日志直接能传输过来,
在这里插入图片描述

在这里插入图片描述
计入设置模式是为了把节点切成metricspace,要解决一个问题,就是集群es要支持证书安全。

server2
cd /usr/share/elasticsearch/
ls
bin/elasticsearch-certutil ca
直接回车
bin/elasticsearch-certutil cert--ca elastic-stack-ca.p12
直接回车
cp  elastic-stack-ca.p12 /etc/elasticsearch/
cd  /etc/elasticsearch/
chown elasticsearch elastic-stack-ca.p12
scp elastic-stack-ca.p12 server3:/etc/elasticsearch/ #把这个证书复制到其他节点上
vim elasticsearch.yml

在这里插入图片描述
es集群启用认证的话,连接的时候就有问题了,

systemctl restart elasticserach.service
认证在
cd /usr/share/elasticsearch/
cd bin/
./elasticsearch-setup-passwords interactive #交互式密码设置,全部设置为一个

如果此时访问172.25.0.2:9200 my-es用户名elastic,密码是westos
head就访问不了了,

server5
vim grok.conf 再运行就可以了

在这里插入图片描述

server2,3,4

在这里插入图片描述
然后重启
在这里插入图片描述

server5
vim kibana.yml然后重启

在这里插入图片描述
进入kibana,进入设置模式
在这里插入图片描述
这个是官方专门针对logstash的重量级,打造的轻量级的检测
这个检测需要把整个检测到的数据存到一个es集群里面,这个es集群专门存储监控数据,
在这里插入图片描述
下载metricbeat
在这里插入图片描述

cd /etc/metricbeat/
ls
cd modules.d/ #其中都是禁掉的模块
metricbeat modules enable elasticsearch-xpack
#
vim elasticsearch-xpack.yml

填的是怎么样连接本机的es,取数据
在这里插入图片描述
通过metricbeat组件输出到检测集群

vim metricbeat.yml

在这里插入图片描述
在这里插入图片描述

systemctl enable --now metricbeat.service

在这里插入图片描述
剩下的节点以此类推

宿主机
podman ps -a
podman start cerebro

在这里插入图片描述

server2
cd /etc/filebeat/
ls
cd modules.d/
filebear modules enable elasticsearch
vim elasticsearch.yml

在这里插入图片描述
在这里插入图片描述

vim filebeat.yml #标配的主配置文件

在这里插入图片描述

systemctl enable --now filebeat.service

其他节点以此类推

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

showmount -e 172.25.0.5

在这里插入图片描述
在这里插入图片描述
也可以是上面的命令行的方式

所有节点
cd /backup/
ls

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
命令行没有接xpork认证,还要接用户密码。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值