elasticsearch 单节点搭建与爬坑记录 – G[亲测有效]

elasticsearch 单节点搭建与爬坑记录 – G[亲测有效]elasticsearch 单节点搭建与爬坑记录 prepare 虚拟机或者云服务器(这里用的是阿里云ECS) linux centos7 安装完毕的jdk 相应的安装包(在https://www.c

elasticsearch 单节点搭建与爬坑记录 - G

elasticsearch 单节点搭建与爬坑记录

 

prepare

 

  • 虚拟机或者云服务器(这里用的是阿里云ECS)

  • linux—centos7

  • 安装完毕的jdk

  • 相应的安装包(在https://www.cnblogs.com/G-Aurora/p/13099459.html中有快速下载的镜像站)

  • ps.下文主要指出主要注意的地方,步骤按照标注的数字来即可(编写此文时使用的是市面上多数新版参考书所使用的Elasticsearch5.x版)

 

用户组

首先需要高度关注的是文件夹的“归属”和权限。

Elasticsearch在Linux下只能通过root用户启动。并且为了尽量避免解压缩后再次回头修改文件夹的”归属“,我建议使用新建的用户解压安装包,这样解压缩后的文件夹的归属就直接归属于新用户。

  1. 创建新用户

    详见:

    https://www.cnblogs.com/G-Aurora/p/13100261.html

  2. 解压缩安装包

 

启动前修改参数

我个人的建议是要根据自己机器的实际情况判断是否需要更改,不足的就改,有余的可以不改(以root用户修改

 

vim /etc/security/limits.conf

增加最大文件数

* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096

代码100分

elasticsearch 单节点搭建与爬坑记录 - G[亲测有效]

拓展阅读:https://www.cnblogs.com/youngerger/p/9128245.html

 

所有配置完成后启动出现:

代码100分ERROR: bootstrap checks failed
max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]

那是因为配置没有生效,我们可以使用

ulimit -Hn

来进行检验,如果小于等于65535,那么通过

代码100分ulimit -Hn 65536

使配置生效,再次使用ulimit -Hn进行检验即可

 

哈哈,但是还是有可能报相同的错误

例如在我的启动过程中,我是使用xshell同时开了为root和es两个用户开了两个窗口,当我在root下修改了limits.conf并ulimit -Hn 65536后,分别使用root和es使用ulimit -Hn进行检验,发现两个用户的返回结果不一样,es的还是默认的65535

此时你可以选择

  • 重启
  • 在返回了已更改的ulimit -Hn结果的用户下(root),切换为es再进行启动,(当然后面的配置要完成)。Great,you get it.

 

vim /etc/security/limits.conf/90-nproc.conf

增大最大进程数

* soft nproc 2048  //修改,而非添加

elasticsearch 单节点搭建与爬坑记录 - G[亲测有效]

在我的ECS机器上只发现了20-nproc.conf文件,配置参数有余,而且应该不用手动创建90-nporoc.conf文件(后来事实证明也是如此)

拓展阅读:https://yq.aliyun.com/articles/238584

对于拓展文章的拓展:https://www.cnblogs.com/ftl1012/p/ulimit.html

需要考虑修改nproc的情况 :

  • Cannot create GC thread. Out of system resources
  • java.lang.OutOfMemoryError: unable to create new native thread

 

vim /etc/sysctl.conf

增加虚拟内存

vm.max_map_count=655360

elasticsearch 单节点搭建与爬坑记录 - G[亲测有效]

记得

sysctl -p

 

启动

在es用户下进入elasticsearch/bin

使用

elasticsearch

即可启动

elasticsearch 单节点搭建与爬坑记录 - G[亲测有效]

 

检验

  • 通过curl

    curl -XGet "http://localhost:9200/"
    

    elasticsearch 单节点搭建与爬坑记录 - G[亲测有效]

  • 任意用户使用jps

    elasticsearch 单节点搭建与爬坑记录 - G[亲测有效]

    elasticsearch 单节点搭建与爬坑记录 - G[亲测有效]

 

解决只能通过localhost+端口访问的问题

https://www.cnblogs.com/G-Aurora/p/13111162.html

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/7916.html

(0)
上一篇 2023-03-11
下一篇 2023-03-11

相关推荐

  • 8种ETL算法汇总大全!看完你就全明白了[通俗易懂]

    8种ETL算法汇总大全!看完你就全明白了[通俗易懂]摘要:ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库…

    2023-03-17
    146
  • MySQL主从之延时复制

    MySQL主从之延时复制 一、延时复制 延时从库只做备份,不提供任何对外服务,正常情况下我们是不会有刻意延迟从库的需求的,因为正常的线上业务自然是延迟越低越好。 但是针对测试场景,业务上偶尔需要测试延迟场景下业务是否…

    2023-03-27
    156
  • Python中文乱码

    Python中文乱码对于使用Python进行编程的开发者来说,中文显示可能会出现乱码问题。这是因为Python默认采用的是ASCII编码,而不是Unicode编码,因此导致了中文乱码的问题。

    2024-05-01
    81
  • MySQL第三课_一年级语文第三课

    MySQL第三课_一年级语文第三课首先创建一个数据库: CREATE DATABASE ku; Query OK, 1 row affected 查看一下是否有此数据库: SHOW DATABASES; + +| Database |

    2022-12-16
    142
  • 基于Python的慢性病数据复杂条件查重方法实现及改进「终于解决」

    基于Python的慢性病数据复杂条件查重方法实现及改进「终于解决」近期因为工作需要,对原来的SAS慢性病监测数据季报审核程序进行了Python的重构,在重写的过程中,发现查重部分特别有意思,写出来和大家分享一下。 在网上说起查重,大部分的搜索结果是用pandas里…

    2023-03-28
    157
  • JAVA中的事务是什么?事务模块总结[通俗易懂]

    JAVA中的事务是什么?事务模块总结[通俗易懂]大家好,这是一个为了梦想而保持学习的博客。这是第二篇文章,分享一下我对【事务】的理解。文章的风格会一直保持问答的方式讲述,这是我个人喜欢的一种风格,也是相当于模拟面试。 什么是事务? 简单的来说,一…

    2023-02-01
    147
  • Python Tuple: 定义与使用

    Python Tuple: 定义与使用Tuple(元组是Python编程语言中的一种基本数据类型),是有序、不可变的序列。和列表(List)非常相似,但是不同于列表的是,元组中的元素是不可变的,即初始化后便不能对其中的元素进行修改。

    2024-03-22
    81
  • mysql学习笔记之explain分析

    mysql学习笔记之explain分析mysql explain功能中展示各种信息的解释: id:优化器选定的执行计划中查询的序列号。 select_type:所用的查询类型,主要由以下这集中查询类型。 . DEPENDENT UNIO…

    2023-03-11
    146

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注