【微服务】日志搜集es+kibana+filebeat+redis+logstash(单机)

日志搜集系统搭建
基于7.17.16版本
ps: 项目是toB的,日志量不大

前置准备

软件下载

7.17.16版本。8.x版本需要JDK11

elastic.co/downloads/past-releases

JDK

java8

Linux

elastic 软件不能以root用户启动,需要创建用户

sudo useradd elastic
#给此用户设置密码
sudo passwd elastic#授权
chown -R elastic /usr/local/kw-microservices/elastic/elasticsearch
chown -R elastic /usr/local/kw-microservices/elastic/kibana

软件安装

  • redis
  • elasticsearch
  • kibana
  • logstash
  • filebeat
    下载tar包,解压即可

es部署

配置ES_JAVA_HOME

elasticsearch.yml

修改config/elasticsearch.yml中参数

#默认只能被本机访问
#修改config/elasticsearch.yml中参数
network.host: 0.0.0.0#开启远程连接之后,就默认以生产模式启动,是集群的,需要修改
#修改为
cluster.initial_master_nodes: ["node-1"]
#修改为
discovery.seed_hosts: ["127.0.0.1:9300"]
系统参数修改
#切换回root
vim /etc/sysctl.conf
#修改为
vm.max_map_count=262144
#执行
sysctl -p
sysctl -a|grep vm.max_map_countvi /etc/security/limits.conf
* soft nofile 65535
* hard nofile 65537
# 不配置 启动报错 max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]#需要重新登陆一下,查看是否生效
ulimit  -H -n#说明: soft nofile表示软限制,hard nofile表示硬限制。两行语句表示,es用户的软限制为65535,硬限制为65537,即表示es用户能打开的最大文件数量为65537,不管它开启多少个shell
修改jvm参数

jvm.options
默认4G,也可以不改,看硬件配置。
-Xms1g
-Xmx1g

kibana

修改kibana.yml

#允许远程访问
server.host: "0.0.0.0"
#es地址
elasticsearch.hosts: ["http://localhost:9200"]
#指定语言 en、zh-CN,推荐使用英文
i18n.locale: "zh-CN"

日志搜集核心配置

filebeat

# ============================== Filebeat inputs ===============================filebeat.inputs:
- type: logpaths:- /Users/kw/Downloads/all.logfields:app: admin-serviceenv: dev# ============================== Filebeat modules ==============================filebeat.config.modules:# Glob pattern for configuration loadingpath: ${path.config}/modules.d/*.yml# Set to true to enable config reloadingreload.enabled: false# Period on which files under path should be checked for changes#reload.period: 10s# ================================== Outputs ===================================
output.redis:hosts: ["localhost"]password: "123456"key: "filebeat"db: 0timeout: 5# ================================= Processors =================================
processors:- drop_fields:fields: ["log","host","input","agent","ecs"]ignore_missing: false

logstash

# Sample Logstash configuration for creating a simple
# Beats -> Logstash -> Elasticsearch pipeline.input {redis {id => "kw_localhost"#消息被消费完,key会丢失,有消息进来会重新创建keykey => "filebeat"host => "localhost"password => "123456"port => 6379db => "0"data_type => "list"}
}filter {grok {#匹配日志中的时间,并存储到一个字段中log_timestamp#TIMESTAMP_ISO8601 为grok中的一种时间匹配模式,具体要看自己的时间格式match => { "message" => "%{TIMESTAMP_ISO8601:log_timestamp}" }}date {match => ["log_timestamp", "yyyy-MM-dd HH:mm:ss.SSS"] #匹配timestamp字段target => "@timestamp"  #将匹配到的数据写到@timestamp字段中}#需要删除字段mutate {  remove_field => ["log_timestamp"]  }  
}output {#stdout {}elasticsearch {hosts => ["localhost:9200"]index => "backend-%{[fields][app]}-%{+YYYY.MM.dd}"}
}

服务启动

filebeat

./filebeat -e -c 指定配置文件
./filebeat test config -e -c filebeat.yml
#test config: 这是filebeat的一个子命令,用于测试配置文件是否正确。
#-e: 这个参数表示如果遇到任何错误,立即退出。
#-c 这个参数指定了要测试的配置文件的路径。在这个例子中,配置文件是filebeat.yml,并且它应该在当前目录下#后台启动
nohup ./filebeat -e -c filebeat.yml >/dev/null 2>&1 &
#查看
jobs
#查看进程
ps -ef|grep filebeat|grep -v grep
#调为前台进程 ctrl c关闭进程 或者 直接kill -9 pid
fg %1

logstash

#解压即可
tar -zxvf
#启动
./bin/logstash -f 指定配置文件
#检测配置是否正确
./bin/logstash -t -f 指定配置文件#后台启动,使用nohup

es

#bin目录 启动
./elasticsearch#后台启动nohup

kibana

#bin目录 启动
./kibana
#后台启动nohup

测试效果

访问kibana localhost:5601
在这里插入图片描述
在这里插入图片描述

问题记录

kibana启动,有错误信息

有错误信息,但不影响使用。
报如下错误,下载插件失败,需要科学上网,重启即可

Error: Failed to download https://storage.googleapis.com/headless_shell/chromium-38c7255-locales-linux_x64.zip: Error: Unable to download https://storage.googleapis.com/headless_shell/chromium-38c7255-locales-linux_x64.zip: Error: read ECONNRESET

es启动报错

linux报这个错
org.elasticsearch.ElasticsearchException: not all primary shards of [.geoip_databases] index are active
不解决得话,head插件,head这里点不了
在这里插入图片描述

#能启动,但报错如下:(百度说,这是个bug)
[node-1] error updating geoip database [GeoLite2-Country.mmdb]
java.net.SocketException: Connection reset#解决 elasticsearch.yml增加配置
#关闭geoip数据库的更新
ingest.geoip.downloader.enabled: false

启动报错
ElasticsearchException[Failure running machine learning native code. This could be due to running on an unsupported OS or distribution, missing OS libraries, or a problem with the temp directory. To bypass this problem by running Elasticsearch without machine learning functionality set [xpack.ml.enabled: false].]

#解决 elasticsearch.yml增加配置
xpack.ml.enabled: false

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/614650.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决:ModuleNotFoundError: No module named ‘pymysql’

解决:ModuleNotFoundError: No module named ‘pymysql’ 文章目录 解决:ModuleNotFoundError: No module named pymysql背景报错问题报错翻译报错位置代码报错原因解决方法方法一,直接安装方法二,手动下载安装方法三,…

云贝教育 |【技术文章】存储对象的LIBRARY CACHE LOCK/PIN实验(一)

注: 本文为云贝教育 刘峰 原创,请尊重知识产权,转发请注明出处,不接受任何抄袭、演绎和未经注明出处的转载。 实验环境 操作系统:Red Hat Enterprise Linux release 8.8 (Ootpa) 数据库:oracle Version 19.3.0.0.0 …

UE 引擎工具笔记

2023虚幻技术分享会视频 1.2023年虚幻引擎最新功能和技巧 [UFSH2023]2023年虚幻引擎最新功能和技巧 | Chris Murphy Epic Games_哔哩哔哩_bilibili 推荐细看下.总结了UE5的功能大概 2.调试技巧 [UFSH2023]总有一个你不知道的虚幻引擎调试技巧 | 陈拓 Epic Games_哔哩哔哩_…

深信服态势感知一体机SIP-1000 Y2100 3.0.1Y升级3.0.3Y步骤

当前版本:3.0.1Y 升级后版本:3.0.3Y PS:3.0.1Y不能直升3.0.3Y,需要先通过升级工具升级到3.0.2Y,再安装前置补丁从3.0.2Y升级到3.0.3Y;每一次升级时间为20-30分钟,设备升级会重启,需提…

计算机网络-VLAN间通信

之前复习了VLAN的概念以及几个接口类型。VLAN在二层可以实现广播域的划分,VLAN间可以实现二层通信,但是不能实现三层通信,需要借助其它方式。 一、概述 实际网络部署中一般会将不同IP地址段划分到不同的VLAN。同VLAN且同网段的PC之间可直接进…

2023 Gartner® 云数据库管理系统魔力象限发布 PingCAP 入选“荣誉提及”

近日,全球 IT 市场研究和咨询 公司 Gartner 发布最新报告《Magic Quadrant™ for Cloud Database Management Systems》(云数据库管理系统魔力象限), 企业级开源分布式数据库厂商 PingCAP 入选“荣誉提及” 。前不久,P…

GENMARK控制器维修SMALL SMC4092

晶圆转移机器人SMALL CONTROLLER控制器维修 SMC1100 半导体设备机械臂GENMARK控制器维修 eSensor特点: (1)基于DNA杂交和电化学检测原理; (2)电化学传感检测,并非荧光或光学检测。 电子信号的…

查准率与查全率在自然语言处理中的核心概念与联系、核心概念和实践应用,如何使用朴素贝叶斯、SVM 和深度学习实现查准率和查全率的计算?

查准率与查全率在自然语言处理中的核心概念与联系、核心概念和实践应用,如何使用朴素贝叶斯、SVM 和深度学习实现查准率和查全率的计算? 人工智能核心技术有:1. 深度学习;2.计算机视觉;3.自然语言处理;4.数据挖掘。其中,深度学习就是使用算法分析数据,从中学习并自动归…

【Oracle】数据库查询与SQL语句

Oracle查询 一、单表查询 1、简单条件查询 1)精确查询 SELECT* FROMT_OWNERS WHEREwatermeter 304082)模糊查询 SELECT* FROMt_owners WHEREname LIKE %刘%3)and运算符 SELECT* FROMt_owners WHEREname LIKE %刘% AND housenumb…

HTML--文本

文本一般存在于 body下 段落标签&#xff1a;<p> </p> 换行标签&#xff1a;<br/> 放在一句话里可以换行 <p>这是一段话<br/>这是另一段话</p>文本标签分以下几种&#xff1a; 粗体标签&#xff1a;strong&#xff0c;b 斜体标签&#xf…

VUE+bpmn.js实现工作流

1、安装bpmn.js npm install bpmn-js7.3.1 // 我安装的版本是7.3.1npm install bpmn-js-properties-panel0.37.2npm install bpmn-moddle7.1.3 npm install --save camunda-bpmn-moddle 2、配置axios&#xff0c;在main.js中引入axios import axios from axiosVue.proto…

小汪,TCP连接和断连夺命6连问你可能扛得住?

目录 TCP三次握手连接和四次挥手断连的几处疑问 一、建立连接&#xff0c;为什么是三次握手&#xff0c;而不是二次握手&#xff1f; 二、为什么每次建立 TCP 连接时&#xff0c;初始化的序列号都要求不一样呢&#xff1f; 三、断开连接&#xff0c;为什么是四次握手&#x…

机器学习激活函数

激活函数 激活函数是人工神经网络中的一个重要组成部分。它们用于向神经网络中添加非线性因素&#xff0c;使得网络能够解决复杂问题&#xff0c;如图像识别、语言处理等。激活函数的作用是决定一个神经元是否应该被激活&#xff0c;也就是说&#xff0c;它帮助决定神经元的输…

科技顶天,市场立地 。璞华科技“顶天立地”的成长之路

科技顶天&#xff0c;市场立地。 几十年来&#xff0c;我们越来越深刻地认识到&#xff0c;这就是真理&#xff0c;质朴而深刻。尤其在当前特殊的国际国内商业环境中&#xff0c;这一理念不但没有过时&#xff0c;反而恰逢其时。有这么一家企业&#xff0c;一直践行“科技顶天…

使用阿里云镜像创建一个Spring Boot项目

由于现在的idea在创建项目时已经不支持Java8版本了&#xff0c;如果我们还想用8版本&#xff0c;可以使用阿里云镜像创建。所以得改变原有的地址为&#xff1a;https://start.aliyun.com springboot版本选择2开头的任意版本的。 1.配置6个依赖 2.改变下载依赖地址 下载依赖默认…

Proteus仿真stm32f103r6输出PWM/正弦波

资料下载地址&#xff1a;Proteus仿真stm32f103r6输出PWM/正弦波 一、仿真图 Proteus仿真stm32f103r6输出PWM/正弦波 二、程序 #include "pbdata.h"u16 fre; void RCC_Configuration(void); void GPIO_Configuration(void); void TIM3_Configuration();void Dela…

动物脚掌“温度升降”体验:ZL-021大小鼠冷热板测痛仪

ZL-021大小鼠冷热板测痛仪用于评估动物对疼痛的敏感度。通过将小鼠或大鼠放置在温度可调的热板上&#xff0c;记录它们在板上停留的时间来评估它们对不同温度刺激的反应。 优点说明&#xff1a;设备能够明确指示组织损伤情况&#xff0c;同时对动物影响较小&#xff0c;可以反…

学生评教,问卷调查表评价教师统计,python+pandas处理数据

先上一个结果表格 几个关键步骤 1、问卷网站上设置相关题目&#xff0c;条目&#xff0c;最好用评分题目&#xff08;点击文本选项&#xff0c;但是保存下来的是分值&#xff09;&#xff0c;如图 2、pandas清洗数据&#xff0c;包括unstack&#xff0c;其目的是把所有学生得…

快速了解VR全景拍摄技术运用在旅游景区的优势

豆腐脑加了糖、烤红薯加了勺&#xff0c;就连索菲亚大教堂前都有了“人造月亮”&#xff0c;在这个冬季&#xff0c;“尔滨”把各地游客宠上了天。面对更多的游客无法实地游玩&#xff0c;哈尔滨冰雪世界再添新玩法&#xff0c;借助VR全景拍摄技术对冬季经典冰雪体验项目进行全…

什么是Modbus协议?

Modbus协议是一种在工业自动化领域广泛应用的通信协议&#xff0c;它允许不同设备之间进行可靠的数据交换和控制。该协议最初由Modicon公司于1979年创建&#xff0c;旨在提供一种简单而有效的方法&#xff0c;使PLC&#xff08;可编程逻辑控制器&#xff09;和其他自动化设备能…