ELK日志平台---老男孩教育笔记
环境的困境(原因)
1、开发人员不能登录线上服务器查看相信日志;
2、各个系统都有日志,日志数据分散难以查找;
3、日志数据量大,查询速度慢,或者数据不够及时。(状态码 400 的 top10)
收集->存储->统计->报警、、、
Elastic Search + Logstash +Kibana = ELK Stack
1、分布式全文搜索引擎、存储
2、日志收集(日志收集于某一处)
3、日志展示
安装过程:
一、Elastic Search
(1)、Import the Elasticsearch PGP Key
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
(2)、Installing from the RPM repository
echo "[elasticsearch-5.x] name=Elasticsearch repository for 5.x packages baseurl=https://artifacts.elastic.co/packages/5.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md" >>/etc/yum.repos.d/elasticsearch.repoyum install -y elasticsearch
修改配置文件
创建 数据目录
mkdir -p /data/es-data
vim /etc/elasticsearch/elasticsearch.yml cluster.name: Mint node.name: Mint-node1 path.data: /data/es-data path.logs: /var/log/elasticsearch bootstrap.memory_lock: true network.host: 0.0.0.0 http.port: 9200
ES集群
cluster.name: Mint 相同就行,同一个局域网 先会广播
修改node.name
cluster.name: Mint
node.name: Mint-node2
path.data: /data/es-data
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: true
network.host: 0.0.0.0
http.port: 9200
插件
head bigdesk kopf 暂时都不支持es5.4
#bootstrap.memory_lock: true 去掉注释会报错
解决方式:修改limit 文件 yum 安装的es,默认使用的是普通用户,需要配置limit.conf
vim /etc/security/limits.conf # allow user 'elasticsearch' mlockall elasticsearch soft memlock unlimited elasticsearch hard memlock unlimited
修改数据路径的权限
chown -R elasticsearch:elasticsearch /data/es-data systemctl enable elasticsearch systemctl start elasticsearch
Installing Logstash
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch cat > /etc/yum.repos.d/logstash.repo <<EOF [logstash-5.x] name=Elastic repository for 5.x packages baseurl=https://artifacts.elastic.co/packages/5.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md EOF yum install -y logstash
/usr/share/logstash/bin/logstash -e 'input { stdin{} } output { stdout{}}'
/usr/share/logstash/bin/logstash -e 'input { stdin{} } output { stdout{ codec => rubydebug} }'
/usr/share/logstash/bin/logstash -e 'input { stdin{} } output { elasticsearch { hosts => "192.168.1.87:9200" protocol => "http"} }'
/usr/share/logstash/bin/logstash -e 'input { stdin{} } output { elasticsearch { hosts => "192.168.1.87:9200" } stdout { codec => rubydebug} }' //同时两个输出 一个es 一个标准输出
vim /etc/logstash/conf.d/01-logstach.conf input { stdin { } } output { elasticsearch { hosts => ["localhost:9200"] } stdout { codec => rubydebug } } /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/01-logstach.conf
各种插件
https://www.elastic.co/guide/en/logstash/current/index.html
Install Kibana with RPM
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
vim /etc/yum.repos.d/kibana.repo
[kibana-5.x] name=Kibana repository for 5.x packages baseurl=https://artifacts.elastic.co/packages/5.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md
yum install kibana -y
修改配置文件
vim /etc/kibana/kibana.yml
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.url: "http://192.168.1.87:9200"
kibana.index: ".kibana"
nginx Module ngx_http_log_module http://nginx.org/en/docs/http/ngx_http_log_module.html
input {file {path => "/var/log/nginx/access_json.log"codec => "json"} } output {stdout {codec => "rubydebug"} }
rsyslog 修改系统日志
修改
vim /etc/rsyslog.conf *.* @@192.168.1.87:514
nc 192.168.1.87 12345 < /etc/passwd
echo “Mint” > /dev/tcp/192.168.1.87/12345 也可以给12345 tcp端口发信息 伪设备
nc 追加文件
logstash 解耦 当需要单独修改logstash时,收集的日志可以暂存于内存中,不至于需要停止收集日志
logstash ---------->redis ---------->logstash -------->elasticsearch----------->kibana
收集 消息队列 分析 存储 显示
192.168.1.87 192.168.1.87 192.168.1.88 192.168.1.87 192.168.1.87
redis ---->rabbitmq------>kafka 一般redis就可以,不能满足的时候
解耦部分的配置文件,于明天整理发出来。再加前面的all.conf,共三个conf文件,shipper.conf、indexer.conf
logstash 写入kibana的时间戳是UTC。
http://192.168.1.87:5601/status 查看kibana状态
ab -n10000 -c1 http://192.168.1.87/ -n次数 -c 每次并发
安全解决方案 :search Guard
生产如何上线ELK
1、日志分类
系统日志 rsyslog logstash syslog插件
访问日志 nginx logstash codec json
错误日志 file logstash file + mulitline
运行日志 file logstash json
设备日志 syslog logstash syslog插件
debug日志 file logstash json or mulitline
2、日志标准化
1.路径 固定
2.格式 尽量json
系统日志开始->错误日志->运行日志->访问日志
欢迎打算使用阿里云服务器的小伙伴,加我私聊!!QQ:3533470970 或直接领取阿里云幸运券:https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=b6h928qb&utm_source=b6h928qb
转载于:https://blog.51cto.com/liqilong2010/1946494
ELK日志平台---老男孩教育笔记相关推荐
- 51CTO平台老男孩教育精品视频全场5-6折,错过了,再等一年!
一直持续关注老男孩教育的小伙伴们,你们的福利又来了,错过了,再等一年! 国内linux运维领域平均就业工资(12K+)第一,且极具责任心的老男孩教育最近发布了非常多的精品视频,并且还正在持续量产中. ...
- Apollo+ES源码改造,构建民生银行的ELK日志平台配置管理中心【转载】
Apollo+ES源码改造,构建民生银行的ELK日志平台配置管理中心 原创 高效开发运维 架构头条 2019-02-28 作者 | 中国民生银行大数据基础平台运维组团队 编辑 | 张婵 随着 IT 业 ...
- Apollo+ES源码改造,构建民生银行的ELK日志平台配置管理中心
作者 | 中国民生银行大数据基础平台运维组团队 编辑 | 张婵 随着 IT 业务系统的迅速发展,中国民生银行需要考虑实现一套完整并适用于民生银行的日志文件智能分析与处理的解决方案.本文详细介绍了中国民 ...
- 亿级 ELK 日志平台构建实践
本篇主要讲工作中的真实经历,我们怎么打造亿级日志平台,同时手把手教大家建立起这样一套亿级 ELK 系统.日志平台具体发展历程可以参考上篇 「从 ELK 到 EFK 演进」 废话不多说,老司机们座好了, ...
- ELK日志平台搭建(一)
ELK企业级日志分析系统 ELK是由Elasticsearch.Logstash.Kiban三个开源软件的组合.在实时数据检索和分析场合,三者通常是配合共用,而且又都先后归于 Elastic.co 公 ...
- ELK日志平台一 ElasticSearch的安装
一.安装 ElasticSearch的版本号从 1.X → 2.X → 5.X → 6.X 其中ES 5.X开始支持的jdk最低版本为jdk1.8 官网下载地址:https://www.elas ...
- 基于Kafka+ELK搭建海量日志平台
早在传统的单体应用时代,查看日志大都通过SSH客户端登服务器去看,使用较多的命令就是 less 或者 tail.如果服务部署了好几台,就要分别登录到这几台机器上看,等到了分布式和微服务架构流行时代,一 ...
- ELK 6下日志平台监控Nginx日志构建实践
整体架构 整体架构主要分为 4 个模块,分别提供不同的功能 Filebeat:轻量级数据收集引擎.基于原先 Logstash-fowarder 的源码改造出来.换句话说:Filebeat就是新版的 L ...
- RabbitMQ + ELK 搭建日志平台
CentOS下使用ELK套件搭建日志分析和监控平台 2015年01月30日 17:32:29 i_chips 阅读数:24252 https://blog.csdn.net/i_chips/artic ...
- ELK日志分析平台.1-搭建
ELK日志分析平台.1-搭建 2017-12-28 | admin 一.简介 1.核心组成 ELK由Elasticsearch.Logstash和Kibana三部分组件组成: Elas ...
最新文章
- maven项目中,如何导出项目所有的jar
- boot spring 没有父子容器_Spring父子容器问题
- Texmaker使用方法、Latex的优缺点
- python 递归乘法
- centos 7.6.1810 升3.7时 python和yum被误删除的恢复
- 你所不知道的getResource()在maven下的黑洞!
- rss spring 接口_spring 接口支持返回多种格式
- Oracle conn 协议适配器错误解决
- linux mysql 静态库_Linux静态库与动态库实例详解
- BZOJ 3626 LCA(离线+树链剖分+差分)
- angular 的进一步深入理解
- 简约的手机APP自适应下载页HTML源码
- P2P网络及节点发现机制
- (1.6w字)浏览器与前端性能灵魂之问,请问你能接得住几个?
- python 在图片的指定位置添加文字及图片
- python中input()函数的返回是什么类型_inputbox函数返回值的类型是什么?
- Qt编写项目作品大全(自定义控件+输入法+大屏电子看板+视频监控+楼宇对讲+气体安全等)...
- 词法解析器 | 从零实现一门语言
- 浙江计算机专业技术考试大纲,浙江省高校计算机等级考试大纲(三级)
- 科技向善,一念天堂。
热门文章
- 一文带你了解知识图谱融入预训练模型哪家强?九大模型集中放送
- 做人不能太“广州有线”了
- Android和风SDK,Android 和风天气SDK获取天气
- 【Jmeter】Jmeter登录带验证码平台
- 卡内基梅隆大学计算机方向,留学美国卡内基梅隆大学计算机硕士研究方向
- 智能驾驶大数据是什么?传统车企如何升级?
- katacontainers二进制安装
- DT算法(暗像元法)在C6.1中的改进:Aerosol Dark Target (10km 3km) Collection 6.1 Changes
- HDU 3221 Brute-force Algorithm(指数降幂公式)
- 葫芦兄弟java7723_颠峰对决之喜羊羊大战葫芦娃