ELKSTACK

本文详细介绍ELK Stack(Elasticsearch, Logstash, Kibana)的安装配置过程,包括依赖环境搭建、各组件安装步骤及集群创建方法。通过API方式采集数据,并展示如何使用JSON格式进行索引操作。
ELKSTACK:
    日志分析

内存锁定
需要依赖与JAVA环境
[root@elk1 ~]# ls
elasticsearch-2.3.3.rpm
[root@elk1 ~]# rpm -ivh elasticsearch-2.3.3.rpm 
[root@elk1 ~]# cd /etc/elasticsearch/
[root@elk1 elasticsearch]# ls
elasticsearch.yml  logging.yml  scripts
[root@elk1 elasticsearch]# cd /var/lib/elasticsearch/
[root@elk1 elasticsearch]# pwd
/var/lib/elasticsearch
[root@elk1 elasticsearch]# vim /etc/elasticsearch/elasticsearch.yml 

[root@elk1 elasticsearch]# /etc/init.d/elasticsearch start
which: no java in (/sbin:/usr/sbin:/bin:/usr/bin)
Could not find any executable java binary. Please install java in your PATH or set JAVA_HOME
[root@elk1 elasticsearch]# cd
[root@elk1 ~]# rpm -ivh jdk-8u121-linux-x64.rpm 
[root@elk1 plugins]# /etc/init.d/elasticsearch start
Starting elasticsearch:                                    [  OK  ]
[root@elk1 ~]# rpm -ql elasticsearch
[root@elk1 plugins]# yum install unzip -y
[root@elk1 ~]# unzip -d  /usr/share/elasticsearch/plugins elasticsearch-head-master.zip 
[root@elk1 elasticsearch-head-master]# netstat -antlp
 0 ::ffff:172.25.30.1:9200     :::*                        LISTEN      1640/java           
tcp        0      0 ::ffff:172.25.30.1:9300     :::*                        LISTEN      1640/java   
[root@elk1 ~]# cd /usr/share/elasticsearch/
[root@elk1 elasticsearch]# ls
bin  lib  LICENSE.txt  modules  NOTICE.txt  plugins  README.textile
[root@elk1 elasticsearch]# cd plugins/
[root@elk1 plugins]# ls
elasticsearch-head-master
[root@elk1 plugins]# cd elasticsearch-head-master/
[root@elk1 elasticsearch-head-master]# ls
elasticsearch-head.sublime-project  LICENCE                       _site
Gruntfile.js                        package.json                  src
grunt_fileSets.js                   plugin-descriptor.properties  test
index.html                          README.textile
[root@elk1 elasticsearch-head-master]#    

&&浏览器访问:http://172.25.30.1:9200/




[root@elk1 ~]# /usr/share/elasticsearch/bin/plugin install file:/root/elasticsearch-head-master.zip 
-> Installing from file:/root/elasticsearch-head-master.zip...
Trying file:/root/elasticsearch-head-master.zip ...
Downloading .........DONE
Verifying file:/root/elasticsearch-head-master.zip checksums if available ...
NOTE: Unable to verify checksum for downloaded plugin (unable to find .sha1 or .md5 file to verify)
Installed head into /usr/share/elasticsearch/plugins/head

http://172.25.30.1:9200/_plugin/head/
    ***创建图形界面

&&创建集群

[root@elk2 ~]# rpm -ivh jdk-8u121-linux-x64.rpm elasticsearch-2.3.3.rpm 
[root@elk1 ~]# scp /etc/elasticsearch/elasticsearch.yml root@172.25.30.2:/etc/elasticsearch/
[root@elk1 ~]# scp /etc/elasticsearch/elasticsearch.yml root@172.25.30.3:/etc/elasticsearch/
vim /etc/elasticsearch/elasticsearch.yml 
.....
cluster.name: my-es
node.name: elk1 #需要主机名解析
path.data: /var/lib/elasticsearch
bootstrap.mlockall: true
network.host: 172.25.30.1
http.port: 9200
discovery.zen.ping.unicast.hosts: ["elk1", "elk2", "elk3"]
....
/etc/init.d/elasticsearch start

&&集群成功
粗的表示实体,细的表示副本

*五角星:主分片服务器
绿色:集群OK
红色:坏





API方式采集数据:
JSON格式:

API操作索引
[root@elk1 ~]# rpm -ivh logstash-2.3.3-1.noarch.rpm 
Preparing...                                                            (100########################################### [100%]
   1:logstash                                                           (  1########################################### [100%]
[root@elk1 logstash]# ./bin/logstash -e 'input { stdin {} } output { elasticsearch { hosts => ["172.25.30.1"] index => "logstash-%{+YYYY.MM.dd}" } }'
Settings: Default pipeline workers: 1
Pipeline main started
hello xiaxiaofan
源码地址: https://pan.quark.cn/s/3916362e5d0a 在C#编程平台下,构建一个曲线编辑器是一项融合了图形用户界面(GUI)构建、数据管理及数学运算的应用开发任务。 接下来将系统性地介绍这个曲线编辑器开发过程中的核心知识点:1. **定制曲线面板展示数据曲线**: - 控件选用:在C#的Windows Forms或WPF框架中,有多种控件可用于曲线呈现,例如PictureBox或用户自定义的UserControl。 通过处理重绘事件,借助Graphics对象执行绘图动作,如运用DrawCurve方法。 - 数据图形化:通过线性或贝塞尔曲线连接数据点,以呈现数据演变态势。 这要求掌握直线与曲线的数学描述,例如两点间的直线公式、三次贝塞尔曲线等。 - 坐标系统与缩放比例:构建X轴和Y轴,设定坐标标记,并开发缩放功能,使用户可察看不同区间内的数据。 2. **在时间轴上配置多个关键帧数据**: - 时间轴构建:开发一个时间轴组件,显示时间单位刻度,并允许用户在特定时间点设置关键帧。 时间可表现为连续形式或离散形式,关键帧对应于时间轴上的标识。 - 关键帧维护:利用数据结构(例如List或Dictionary)保存关键帧,涵盖时间戳和关联值。 需考虑关键帧的添加、移除及调整位置功能。 3. **调整关键帧数据,通过插值方法获得曲线**: - 插值方法:依据关键帧信息,选用插值方法(如线性插值、样条插值,特别是Catmull-Rom样条)生成平滑曲线。 这涉及数学运算,确保曲线在关键帧之间无缝衔接。 - 即时反馈:在编辑关键帧时,即时刷新曲线显示,优化用户体验。 4. **曲线数据的输出**: - 文件类型:挑选适宜的文件格式存储数据,例如XML、JSON或...
ELK Stack 是用于构建微服务智能日志管理体系的技术栈,由 Elasticsearch、Logstash 和 Kibana 三个开源工具组成,其核心数据流转流程包含采集、传输和处理环节 [^1]。 在使用方面,以 logstash 安装为例,可通过以下命令进行: ```bash [root@linux-node1 ~]# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch [root@linux-node1 ~]# vim /etc/yum.repos.d/logstash.repo [logstash-6.x] name=Elastic repository for 6.x packages baseurl=https://artifacts.elastic.co/packages/6.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md [root@linux-node1 ~]# yum install logstash -y ``` 此为 logstash 在特定版本(6.x)的安装方式 [^5]。 ELK Stack 的原理如下: - 采集:Filebeat 作为轻量级的数据发送器,部署在微服务实例所在节点,监听日志文件变化,如 Spring Boot 的 app.log,实时采集新增日志。Beats 是一组轻量级的数据发送器,除了 Filebeat 用于采集日志文件,还有 Metricbeat 可采集系统和服务指标、Packetbeat 可采集网络数据等 [^1][^2]。 - 传输:Filebeat 将采集到的原始日志发送到 Logstash,也可直接发送到 Elasticsearch 以简化架构 [^1]。 - 处理:Logstash 通过 Filter 插件对原始日志进行处理,例如用 Grok 模式可将 “2025-12-09 10:30:00 [ERROR] order-service: create order failed, orderNo=PAY20251209001” 解析为结构化数据 [^1]。 - 存储与分析:Elasticsearch 中,所有的文档在存储之前都要首先进行分析。用户可定义文本分割成 token、过滤 token 以及额外处理文本等规则,还能将域中的内容按需排序,并且 ES 能自动根据其值确定域的类型 [^4]。 - 可视化:Kibana 提供了可视化界面,在 Kibana 平台上,程序会自动读取浏览器的当前时区,然后在 web 页面自动将 Elasticsearch 中存储的 UTC 时间转换为当前时区的时间 [^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值