Linux环境下ELK的安装配置

ELK的概述

ELK是Elasticsearch、Logstash、Kibana三大开源框架首字母大写简称。市面上也被成为Elastic Stack。其中Elasticsearch是一个基于Lucene、分布式、通过Restful方式进行交互的近实时搜索平台框架。像类似百度、谷歌这种大数据全文搜索引擎的场景都可以使用Elasticsearch作为底层支持框架,可见Elasticsearch提供的搜索能力确实强大,市面上很多时候我们简称Elasticsearch为es。Logstash是ELK的中央数据流引擎,用于从不同目标(文件/数据存储/MQ)收集的不同格式数据,经过过滤后支持输出到不同目的地(文件/MQ/redis/elasticsearch/kafka等)。Kibana可以将elasticsearch的数据通过友好的页面展示出来,提供实时分析的功能。

通过上面对ELK简单的介绍,我们知道了ELK字面意义包含的每个开源框架的功能。市面上很多开发只要提到ELK能够一致说出它是一个日志分析架构技术栈总称,但实际上ELK不仅仅适用于日志分析,它还可以支持其它任何数据分析和收集的场景,日志分析和收集只是更具有代表性。并非唯一性。我们本教程主要也是围绕通过ELK如何搭建一个生产级的日志分析平台来讲解ELK的使用。

日志管理平台
在过往的单体应用时代,我们所有组件都部署到一台服务器中,那时日志管理平台的需求可能并没有那么强烈,我们只需要登录到一台服务器通过shell命令就可以很方便的查看系统日志,并快速定位问题。随着互联网的发展,互联网已经全面渗入到生活的各个领域,使用互联网的用户量也越来越多,单体应用已不能够支持庞大的用户的并发量,尤其像中国这种人口大国。那么将单体应用进行拆分,通过水平扩展来支持庞大用户的使用迫在眉睫,微服务概念就是在类似这样的阶段诞生,在微服务盛行的互联网技术时代,单个应用被拆分为多个应用,每个应用集群部署进行负载均衡,那么如果某项业务发生系统错误,开发或运维人员还是以过往单体应用方式登录一台一台登录服务器查看日志来定位问题,这种解决线上问题的效率可想而知。日志管理平台的建设就显得极其重要。通过Logstash去收集每台服务器日志文件,然后按定义的正则模板过滤后传输到Kafka或redis,然后由另一个Logstash从KafKa或redis读取日志存储到elasticsearch中创建索引,最后通过Kibana展示给开发者或运维人员进行分析。这样大大提升了运维线上问题的效率。除此之外,还可以将收集的日志进行大数据分析,得到更有价值的数据给到高层进行决策。

作者:laizhiy
链接:https://www.jianshu.com/p/d66bfe7e9127
来源:简书

需要的工具

在这里插入图片描述
链接:https://pan.baidu.com/s/1yHcTBRixN3pDLnqf2ougiA
提取码:jret
以及Mobaxterm
https://blog.csdn.net/qq_40375298/article/details/106817387

ELK的安装步骤

打开虚拟机,并使用Mobaxterm连接,在根目录创建一个software文件夹, 并将上面所说的压缩包放入software文件夹中,用tar语句将elasticsearch-6.2.2.tar.gz问价文件解压到opt目录下使用yum 语句下载unzip依赖包
用同样的方法将node文件,kibana文件和logstash文件解压到opt目录下
使用yum语句下载unzip依赖包解压elasticsearch文件
在这里插入图片描述
并将它移动到opt文件夹下.
移动至opt文件夹下,修改opt文件下的文件的文件名
在这里插入图片描述

Es的配置

1.输入:vi /etc/hostname 修改主机名 输入dd删除 输入你自己的主机名我这里输入的是bigdata01
在这里插入图片描述
2.2.输入:vi /etc/hosts 修改主机列表
在这里插入图片描述
3.配置es的参数
(1)输入:vi /opt/es622/config/elasticsearch.yml,按shift+g,快速定位到尾行,按o在下一行插入以下内容:
cluster.name: test --集群名
node.name: test-master --节点名
node.master: true --是否是主节点
network.host: 192.168.56.110 --本机地址
discovery.zen.ping.unicast.hosts: [“192.168.56.110”] --同上
http.cors.enabled: true
http.cors.allow-origin: “*”
注意这里需要的":"号前后需要置空一个字符的位置
在这里插入图片描述
4.配置系统参数
(1)输入:vi /etc/sysctl.conf 插入内容:vm.max_map_count=655360
最好首次也要使用以下命令刷新 sysctl -w vm.max_map_count=655360
在这里插入图片描述在这里插入图片描述

(2)输入:vi /etc/security/limits.conf 插入内容:
* soft nofile 65536
* hard nofile 65536
* soft nproc 4096
* hard nproc 4096
注意这里的*和后面的字母中间要留一个字符的位置
在这里插入图片描述

5.新建一个用户es
修改es622目录的属组(es不能使用root启动) chown es:es -R elasticsearch-6.2.2/
在这里插入图片描述
6.切换到普通用户;su es
7.在/opt目录下输入:./es622/bin/elasticsearch
底部出现 started即是启动成功
成功画面
在这里插入图片描述
8.在windows界面打开网页,输入http://192.168.56.110:9200/,可以正常出页面,切有节点的信息,即是启动成功
在这里插入图片描述

五、Head-master及node的配置

1.输入:vi /etc/profile 按shift+g定位到底部,然后按o在下一行插入以下内容:
export NODE_HOME=/opt/(你放在opt目录下的node文件)
export PATH= P A T H : PATH: PATH:NODE_HOME/bin
在这里插入图片描述
2.输入:source /etc/profile 激活配置文件,输入node -v 可以查看是否配置成功
在这里插入图片描述
3.输入:cd /opt/eshm
4.输入:npm install -g grunt-cli --等待的时间比较长,要有点耐心
输入:npm install
npm install phantomjs-prebuilt@2.1.14 --ignore-scripts
出错时需要输入:npm config set registry https://registry.npm.taobao.org设置后再下载就可以解决了
在这里插入图片描述
这样算是成功了
5.输入:vi Gruntfile.js 添加一行代码: hostname: ‘*’,
在这里插入图片描述
6.输入:vi _site/app.js,输入4360找到如下代码,
在这里插入图片描述
并进行修改成你自己设置的IP:
在这里插入图片描述
8.输入:npm run start 启动head-master

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

kibana安装,配置和实例

1.输入:cd /opt/kibana622
2.输入:vi config/kibana.yml 按shift+g跳转到行末,按o增加以下内容:
server.host: “192.168.56.110”
elasticsearch.url: “http://192.168.56.110:9200”
在这里插入图片描述
3.输入:./bin/kibana 运行kibana
在windows界面打开网页,输入http://192.168.56.110:5601/
在这里插入图片描述

logstash实例

输入:cd /opt/logstash 进入logstash的安装目录
输入:./bin/logstash -e 'input{ stdin{} } output{ stdout{ codec => rubydebug } elasticsearch{ hosts => [“192.168.56.111:9200”] } }'把控制台输入的数据转换成rubydebug类型的数据,同时上传到es服务器,可以在对应192.168.56.110:9100的页面进行查看
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值