ELK开发实战(1):一文搞懂 elasticsearch 的安装部署

本文详述Elasticsearch 7.0.1版本的本地部署全过程,包括配置文件解析、常见启动问题及解决方案,如内存配置、权限调整、系统配置优化等,适合初学者快速上手。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2019年6月8日


目录

官网:

解压后文件结构:

1、文件结构

2、文件结构介绍

3、进入lib目录

配置文件介绍

配置文件

配置项

启动FAQ

1、启动命令

2、修改启动内存

3、启动权限不足

4、短暂启动成功...最后还是报错了

5、解决一些系统配置问题:sysctl.conf

6、解决一些系统配置问题:limits.conf

7、解决elasticsearch.yml 的配置问题:

8、启动完成,restful测试

小结:

可能用得到的文章推荐:


 

 

官网:

https://www.elastic.co/cn/ ;从官网下载压缩包并解压 。(本人使用的是7.0.1版本的es)

解压后文件结构:

1、文件结构

2、文件结构介绍

类型

描述

默认位置

设置

home

es安装主目录

 

path.home

bin

二进制脚本包含启动节点的elasticsearch

{path.home}/bin

 

conf

配置文件包含elasticsearch.yml

{path.home}/config

path.conf

data

在节点上申请的每个index/shard的数据文件的位置。可容纳多个位置

{path.home}/data

path.data

logs

日志文件位置

{path.home}/logs

path.logs

plugins

插件文件位置。每个插件将包含在一个子目录中。

{path.home}/plugins

path.plugins

repo

共享文件系统库位置。可以容纳多个位置。文件系统库可以放在这里指定的任何目录的任何子目录中。

没有配置

path.repo

script

脚本文件的位置

{path.conf}/scripts

path.scripts

3、进入lib目录

很多jar包,因为elasticsearch就是用java写的。

仔细观察,发现很多以“lucene”开头的jar包,它是东东捏?

  • ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

 

配置文件介绍

配置文件

  • vim /etc/elasticsearch/elasticsearch.yml

配置项

cluster.name: es	         #集群名称
path.data: /data/elk/data    #数据路径
path.logs: /data/elk/logs    #日志路径
bootstrap.mlockall: true     #设置为true来锁住内存。因为当jvm开始swapping时es的效率会降低,所以要保证它不swap,可以把ES_MIN_MEM和ES_MAX_MEM两个环境变量设置成同一个值,并且保证机器有足够的内存分配给es。
network.host: 0.0.0.0	     #设置其它节点和该节点交互的ip地址,如果不设置它会自动判断,值必须是个真实的ip地址。
http.port: 9200	             #设置节点间交互的tcp端口,默认是9300。
discovery.zen.ping.unicast.hosts: ["192.168.2.215", "host2"]  #

启动FAQ

启动elasticsearch时我就碰到了很多莫名其妙的问题,查了很多资料才一步步填完坑,在此做个总结。

1、启动命令

直接执行elasticsearch.sh脚本,一般情况会有各种报错。继续看下文。

2、修改启动内存

修改elasticsearch的jvm配置文件,因为es默认启动时由机器分配1g的内存,所以内存吃紧的要改小一点;进入config,修改jvm.options;

配置完成,继续启动es。

3、启动权限不足

哦哦,原来elasticsearch用户没有该文件夹的权限,那么就要分配权限,执行命令:

  • chown -R 用户名:用户名 /usr/local/elasticsearch/

    eg:sudo chown -R mmb:mmb /usr/local/install/es/

4、短暂启动成功...最后还是报错了

 

官网介绍,如果es启动成功,通过restful接口可以查看其状态,那么我试试。。

chrome访问:http://192.168.0.103:9200/ ,然而无法访问,看来是有问题了...(192.168.0.103是我本机的ip地址)。。

然后我发现启动日志最后还是报错了,可恶!

 

5、解决一些系统配置问题:sysctl.conf

在文件末尾添加配置信息:

  •  sudo vim /etc/sysctl.conf

继续启动。

6、解决一些系统配置问题:limits.conf

同样在文件末尾添加配置信息:

  • sudo vim /etc/security/limits.conf

继续启动。

 

7、解决elasticsearch.yml 的配置问题:

【1】在 elasticsearch.yml  添加discovery.seed_hosts:

【2】把 elasticsearch.yml 的 bootstrap.memory_lock 改为 false

继续启动。

 

8、启动完成,restful测试

小结:

  • 以上,就是我的本地部署elasticsearch的全过程,包括各种踩过的坑;发现新版本的es跟旧的版本es安装流程有些差异,主要是配置文件差别很大;另外,学习一个新技术时,别太害怕,多查查资料,多了解项目背景,慢慢熟悉就好。

可能用得到的文章推荐:

  1. https://blog.youkuaiyun.com/baoxifu/article/details/84424247
  2. https://blog.youkuaiyun.com/sinat_27747695/article/details/77433677
  3. https://blog.youkuaiyun.com/u014073556/article/details/80666393
  4. https://blog.youkuaiyun.com/HingCheung/article/details/77144574
  5. https://blog.youkuaiyun.com/wzf862187413/article/details/87888473

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

后台技术汇

对你的帮助,是对我的最好鼓励。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值