ELK日志企业案例:(5.3版本)
- wc -l access_20200228.log|cut -d" " -f1
- awk '{print $0}' access_20200228.log|wc -l
- awk '{print NR}' access_20200228.log|tail -1
- sed = access_20200228.log|tail -2|head -1
- grep -aic "" access_20200228.log
4)基于SHELL编程三剑客awk、sed、grep来分析、统计线上nginx日志,统计nginx访问日志全天(09:00-11:00)总的请求数:
- grep "2020:09:00" access_20200228.log|wc -l|more
- grep "2020:11:00" access_20200228.log|wc -l
- sed -n '/2020:09:00/'p access_20200228.log
- awk "/2020:09:00/,/2020:11:00/" access_20200228.log|wc -l
- sed -n '/2020:09:00/,/2020:11:00/'p access_20200228.log|wc -l
5)基于SHELL编程三剑客awk、sed、grep来分析、统计线上nginx日志,统计nginx访问日志全天(09:00-11:00)总的请求数,将访问的用户IP打印出来, 将访问量排前20名IP打印:
将访问用户IP打印出来:
- sed -n '/2020:09:00/,/2020:11:00/'p access_20200228.log|cut -d" " -f1
- sed -n '/2020:09:00/,/2020:11:00/'p access_20200228.log|awk '{print $1}'
- sed -n '/2020:09:00/,/2020:11:00/'p access_20200228.log|grep -oE "([0-9]{1,3}\.){3}[0-9]{1,3}"
将访问量排前20名的IP打印出来:
- sed -n '/2020:09:00/,/2020:11:00/'p access_20200228.log|grep -oE "([0-9]{1,3}\.){3}[0-9]{1,3}"|sort -n|uniq -c
- sed -n '/2020:09:00/,/2020:11:00/'p access_20200228.log|grep -oE "([0-9]{1,3}\.){3}[0-9]{1,3}"|sort -n|uniq -c|sort -nr|head -20

3、ELasticsearch配置实战(5.3版本):
部署配置ES,需要配置JDK 环境,JDK(Java Development Kit)是Java 语言的软件开发工具包(SDK):
分别下载ELK软件包:
- wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.3.0.tar.gz
- wget https://artifacts.elastic.co/downloads/logstash/logstash-5.3.0.tar.gz
- wget https://artifacts.elastic.co/downloads/kibana/kibana-5.3.0-linux-x86_64.tar.gz
1)ELK安装环境信息:(其中Elasticcsearch与Kibana可以安装在一台机器上 )
- 192.168.1.11 Elasticsearch
- 192.168.1.13 Kibana
- 192.168.1.14 Logstash
2)192.168.1.12 安装ES(虚拟机最好给2G):
安装JDK:
- mkdir -p /usr/java
- tar xf jdk1.8.0_131.tar.gz -C /usr/java
- 配置环境变量:vim /etc/profile
- export JAVA_HOME=/usr/java/jdk1.8.0_131
- export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
- export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin
- 使环境变量立刻生效,同时查看JAVA版本,显示版本信息,则证明安装成功:
- source /etc/prefile
- java -version
- 下载ES并配置:
- tar xf elasticsearch-5.3.0.tar.gz
- mv elasticsearch-5.3.0 /usr/local/elasticsearch
修改 /usr/local/elasticsearch/config/jvm.options文件
-xms最小使用内存,-xmx最大使用内存: 两个需要设置为一样,或者启动报错
- -xms最小使用内存,-xmx最大使用内存: 两个需要设置为一样,或者启动报错
- -xms 1g
- -xmx 1g

创建elk普通用户,用来启动ES 服务: ES服务为了安全默认不允许root启动ES:
- useradd elk
- chmod -R elk. /usr/local/elasticsearch/
- su - elk
- 启动ES服务
- /usr/local/elasticserch/bin/elasticsearch -d
4、ELasticsearch配置故障演练:
查看日志:
- tailf /usr/local/elasticsearch/logs/elasticsearch.log
- 启动后可能会报错,需要修改如下内核参数设置:
- 1)SecComp功能不支持: 以下为报错信息
- ERROR: bootstrap checks failed
- system call filters failed to install; check the logs and fix your
- configuration or disable system call filters at your own risk;
因为Centos6不支持SecComp,而ES5.3.0默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。
- Seccpmp(全称securecomputing mode)是Linux Kernel从2.6.23版本开始所支持的一种安全机制。
- 在Linux系统里,大量的系统调用(systemcall)直接暴露给勇敢态程序。但是并不是所有的系统调用都被需要,而且不安全的代码滥用系统调用会对系统造成安全威胁。通过Seccomp,我们限制程序使用某些系统调用,这样可以减少系统的暴露免,同时使程序进入一种“安全”的状态。
- 解决方法:
在elasticsearch.yml文件中配置bootstrap.system_call_filter为false,注意要在Memory下面
- bootstrap.memory_lock: false
- bootstrap.system_call_filter: false
2)内核参数设置问题:
max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
- 解决方法: /etc/security/limits.conf文件中最后添加:
* soft nofile 65536- * hard nofile 65536
max mumder of threads [1024] for user [hadoop] is too low,increase to at least [2048]
- 解决方法: /etc/security/limits.d/20-nproc.conf
- soft nproc 2048
- max virtual memory areas vm.max_map_count[65530]is too low, increase to at least [262144]
- 解决方法: /etc/sysctl.conf 修改完 sysctl -p生效
- vm.max_map_count=262144
initial heap size [536870912] not equal to maximum heap size [1073741824];this can canuse resize pauses and prev ts mlockall from locking the entire heap
- 解决方法: /usr/local/elasticsearch/config/jvm.options
- -xms 1g
- -xmx 1g

至此ES配置完毕,如果像配置ES集群模式,同样也非常简单,只需要拷贝ES副本即可,然后修改相对应的参数。
4、Kibana WEB安装配置:
部署安装Kibana 不需要安装JAVA JDK环境,直接下载源码,解压即可:
- tar xzf kibana-5.3.0-linux-x86_64.tar.gz
- mv kibana-5.3.0-linux-x86_64 /usr/local/kibana/
- 修改Kibana配置文件信息,设置ES地址:
- vim /usr/local/kibana/config/kibana.yml
启动Kibana服务:
- 后台启动:
- cd /usr/local/kibana/bin/
- nohup ./kibana &
- 查看监听:
- netstat -nutlp|grep -E "5601"
web浏览访问kibanaIP地址:5601端口:
5、Logstash客户端配置实战:
- 由于Logstash基于JAVA语言开发,Agent部署需要安装JDK运行环境库:
mkdir -p /usr/java/- tar xf jdk-1.8.0_131 -C /usr/java/
- vim /etc/profile添加如下代码:
- export JAVA_HOME=/usr/java/jdk1.8.0_131
- export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
- export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin
- 解压Logstash软件:
- tar xf logstash-5.3.0.tar.gz
- mv logstash-5.3.0 /usr/local/logstash
- mkdir -p /usr/local/logstash/config/etc
cd /usr/local/logstash/config/etc
创建ELK整合配置文件: vim elk.conf内容如下:
- input {
- stdin { }
- }
- output {
- stdout {
- codec => rubydebug {}
- }
- elasticsearch {
- hosts => "192.168.1.11:9200" }
- }
启动logstash服务:
- /usr/local/logstash/bin/logstash -f elk.conf
- 后台启动:
- nohup /usr/local/logstash/bin/logstash -f elk.conf &
- ps -ef|grep java

ELK日志企业案例:(5.3版本)的更多相关文章
- ELK+Kafka 企业日志收集平台(一)
背景: 最近线上上了ELK,但是只用了一台Redis在中间作为消息队列,以减轻前端es集群的压力,Redis的集群解决方案暂时没有接触过,并且Redis作为消息队列并不是它的强项:所以最近将Redis ...
- ELK Stack企业日志平台文档
ELK Stack企业日志平台文档 实验环境 主机名 IP地址 配置 系统版本 用途 controlno ...
- Asp-Net-Core-搭建ELK日志平台-Docker-Compose版本
title: Asp.Net Core 搭建ELK日志平台(Docker-Compose版本) date: 2022-09-27 15:16:59 tags: - .NET 由于暂时用不上Logsta ...
- ES系列十七、logback+ELK日志搭建
一.ELK应用场景 在复杂的企业应用服务群中,记录日志方式多种多样,并且不易归档以及提供日志监控的机制.无论是开发人员还是运维人员都无法准确的定位服务.服务器上面出现的种种问题,也没有高效搜索日志内容 ...
- ELK 日志分析系统概述及部署
ELK 日志分析系统概述及部署 1.ELK概述: ELK简介 : ELK平台是一套完整的日志集中处理解决方案,将 ElasticSearch.Logstash 和 Kiabana 三个开源工具配合使用 ...
- ELK 日志分析系统的部署
一.ELK简介 ElasticSearch介绍Elasticsearch是一个基于Lucene的搜索服务器. 它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口. Elasti ...
- ELK 日志分析体系
ELK 日志分析体系 ELK 是指 Elasticsearch.Logstash.Kibana三个开源软件的组合. logstash 负责日志的收集,处 ...
- ELK日志分析系统的应用
收集和分析日志是应用开发中至关重要的一环,互联网大规模.分布式的特性决定了日志的源头越来越分散, 产生的速度越来越快,传统的手段和工具显得日益力不从心.在规模化场景下,grep.awk 无法快速发挥作 ...
- ELK日志框架(2):log4net.ElasticSearch+ Kibana实现日志记录和显示
环境说明 1. windows server 2012 R2 64位 2. log4net.ElasticSearch 3. kibana-5.5.0-windows-x86.zip 架构说明 数据采 ...
- 小白都会超详细--ELK日志管理平台搭建教程
目录 一.介绍 二.安装JDK 三.安装Elasticsearch 四.安装Logstash 五.安装Kibana 六.Kibana简单使用 系统环境:CentOS Linux release 7.4 ...
随机推荐
- Lifecycle解决了什么问题,以及它的基本用法
1.为何要引入Lifecycle? 我首先来举个大家都比较常见的例子:我们在android开发的时候,经常需要在页面的onCreate()方法中对组件进行初始化,在onPause()方法中停止组件,而 ...
- 嵌入式低功耗WiFi设备保活功耗分析
(一)嵌入式低功耗设备介绍 在物联网(IoT)领域,设备可以使用以太网和无线网进行网络连接. 以太网: 网络稳定,带宽高,延迟低,但是以太网需要拉网布线,设备安装邻活便利性能差. 无线网络:安装位置灵 ...
- eclipse在主题商城下载安装黑色主题
Eclipse配置黑色主题方法: 1. 借用国外一个Elipse主题网站分享的主题配置文件来配置一个黑色的主题. 主题网址 2. 在这个网站下载自己喜欢的主题,单击主题进入下载页面,建议大家选择EPF ...
- UG NX实现叉车运输货物功能遇见的问题
在前一段时间编写模拟叉车运输功能时遇到,货物无法跟随的问题(如下动图) 后面发现是速度太快的原因导致货物没有跟着动,类似于抽桌布的感觉 解决办法有两种:第一种解决办法很简单就是把速度降低到不超过 2 ...
- 2021-7-6 Vue实现记事本功能
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script sr ...
- Kitex微服务开发实践(ETCD服务注册)
服务注册通常用于分布式系统或微服务架构中,是一种用于管理和发现这些分布式服务的机制.它的目标是让服务能够动态地找到其他服务,并能够与其进行通信,而无需显式地配置其位置信息 本文简单讲述使用etcd进行 ...
- 【译】All-In-One Search 在 Visual Studio 17.6 中可用
一体化搜索体验是在17.2预览版中首次引入的,从那以后我们一直在改进它的质量.新的搜索将代码和特性搜索功能合并到一个 UI 中,因此您可以在一个地方找到所需的东西.实时结果和结果预览加速了这个过程,让 ...
- ArcMap时间滑块绘制遥感影像的动态变化过程
本文介绍基于ArcMap软件,利用时间滑块功能,对大量多时相栅格遥感影像数据进行动态显示,并生成视频或动图的方法. 首先,我们需要在ArcMap软件中新建一个镶嵌数据集,并将全部的多时像遥感影 ...
- 【译】Silverlight 不会消亡 XAML for Blazor 到来
Userware 正在使用早已消失的.令人怀念的微软 Silverlight Web 开发平台的遗留来支持其新的"XAML for Blazor"产品,该产品允许 .NET 开发人 ...
- centos7关闭防火墙后只有22端口可以telnet的解决方法
1.问题描述 防火墙已经关闭 22端口可以telnet 其他端口无法telnet 2.解决方法 注意:下列命令要用root账号/权限执行 2.1.开启防火墙 systemctl start firew ...