ELK生态圈(es、logstash、kibana)的介绍和安装部署

Elasticsearch的介绍和安装部署

一、ELasticsearch的原理

1.什么是ELasticsearch(简称ES)?

​ 首先我们看ES官网的解释:ES是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。

​ 其次,ES也是使用java开发的,底层基于Lucene来实现索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。

2.那Lucene又是什么?

​ Lucene是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎。其原理就是基于倒排索引实现的。

3.倒排索引和正排索引

​ 倒排索引:通俗的理解就是使用文档中的词来作为索引,记录每个词在哪个文档的哪个位置。这就需要大量的构建索引,虽然前期构建索慢,但有了前期的铺垫,后期在查询的时候就非常快。

​ 正排索引:与之相反,正排索引使用文档ID作为索引,记录每个词出现的次数与在该文档中的位置,优点是构建索引时较快,缺点是查询时较慢,需要每个索引都查询一遍。

二、ELasticsearch的安装和部署

在安装之前我们了解一下ELK的生态体系

ELK=ELasticsearch+Logstash+Kibana

在这里插入图片描述

Elasticsearch:后台分布式存储以及全文检索 .

Logstash: 是用来日志的搜集、过滤日志的工具,支持大量的数据获取方式。

Kibana:数据可视化展示。

ELK架构为数据分布式存储、可视化查询和日志解析创建了一个功能强大的管理链。 三者相互配合,取长补短,共同完成分布式大数据处理工作。

1.安装包的准备

本次安装版本都是7.12.1(放在了/opt目录下)

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

2.安装部署ES集群

我们首先准备三台节点,分别为es1,es2,es3。

2.1修改每台机器的host和hostname
vim /etc/hosts
vim /etc/hostname
2.2安装jdk
rpm -ivh jdk-8u144-linux-x64.rpm
(会自动安装在/usr/java/下)
vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_144
export PATH=$PATH:$JAVA_HOME
2.3解压elasticsearch安装包,修改配置文件
cd /opt
# 解压安装包
tar -xzf elasticsearch-7.12.1-linux-x86_64.tar.gz -C ./
# 修改配置文件 
vim /opt/elasticsearch-7.12.1/config/elasticsearch.yml

配置文件修改以下几个的地方:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

集群其他几台节点同样的操作

2.4创建es用户、修改es目录所有者
useradd es
passwd es
chown -R es:es /opt/elasticsearch-7.12.1
2.5修改系统文件打开数
#查看可打开文件数量
ulimit -Hn
#用户最大可创建文件数太小,需要修改
echo "* soft nofile 65536" >> /etc/security/limits.conf
echo "* hard nofile 65536" >> /etc/security/limits.conf

2.6修改虚拟内存大小
# 查看虚拟内存大小
sysctl -a |grep vm.max_map_count
# 修改虚拟内存大小
echo "vm.max_map_count=262144" >> /etc/sysctl.conf
# 从 /etc/sysctl.conf 加载系统参数
sysctl -p
2.7 启动es集群
# 切换至es用户
su - es
# 后台运行es服务
/opt/elasticsearch-7.12.1/bin/elasticsearch -d

在这里插入图片描述

没报错且能看到进程,就可以去访问web页面了

2.8访问es页面

es web ui:http://ip:9200

在这里插入图片描述

我们也可以用es的插件(elasticsearch-head)去查看我们的集群的整体情况

在这里插入图片描述

3.安装部署Kibana

3.1解压kibana安装包,修改配置文件
cd /opt
# 解压
tar -xzf kibana-7.12.1-linux-x86_64.tar.gz -C ./
# 修改配置文件 
vim /opt/kibana-7.12.1-linux-x86_64/config/kibana.yml
配置文件添加如下内容:
server.port: 5601
server.host: "es1"
server.name: "es1"
# 如果有多个可用逗号分隔比如 ["http://worker-1:9200", "http://worker-2:9200"]
elasticsearch.hosts: ["http://es1:9200", "http://es2:9200", "http://es3:9200"]
kibana.index: ".kibana"
elasticsearch.username: "es"
elasticsearch.password: "es"

在这里插入图片描述

3.2修改kibana目录为es 所有
chown -R es:es /opt/kibana-7.12.1-linux-x86_64
3.3启动kibana
# 切换到es用户
su - es
# 启动kibana
nohup /opt/kibana-7.12.1-linux-x86_64/bin/kibana > /dev/null 2>&1 &
3.4访问es页面

kibana web ui:http://ip:5601

在这里插入图片描述

进去之后就长这个样子了兄弟mer

在这里插入图片描述

4.安装部署Logstash

4.1解压安装包
cd /opt
# 解压
tar -zxvf logstash-7.12.1-linux-x86_64.tar.gz -C ./
4.2创建软连接
ln -s /opt/logstash-7.12.1/bin/logstash /usr/local/bin/
4.3创建配置文件目录
mkdir -p /opt/logstash-7.12.1/config/config-logstash
#编写配置文件
vim /opt/logstash-7.12.1/config/config-logstash/01-stdin-to-stdout.conf
#填写以下内容
input {
  stdin {}
}

output {
  stdout{}
}

#检查配置文件语法
logstash -tf /opt/logstash-7.12.1/config/config-logstash/01-stdin-to-stdout.conf

在这里插入图片描述

4.4启动logstash实例
logstash -f /opt/logstash-7.12.1/config/config-logstash/01-stdin-to-stdout.conf

启动成功之后可以直接交互式采集了

在这里插入图片描述

最后:如需要安装包可关注留言获取

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值