2021年大数据elk:安装elasticsearch(代码片段)

Lansonli Lansonli     2023-02-08     681

关键词:

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 

新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。

目录

系列历史文章

安装Elasticsearch

一、创建普通用户

二、为普通用户添加sudo权限

三、上传压缩包并解压

四、修改配置文件

1、修改elasticsearch.yml

2、修改jvm.option

五、将安装包分发到其他服务器上面

六、node2与node3修改es配置文件

七、修改系统配置,解决启动时候的问题

1、普通用户打开文件的最大数限制

2、普通用户启动线程数限制

3、普通用户调大虚拟内存

八、启动ES服务


系列历史文章

2021年大数据ELK(六):安装Elasticsearch

2021年大数据ELK(五):Elasticsearch中的核心概念

2021年大数据ELK(四):Lucene的美文搜索案例

2021年大数据ELK(三):Lucene全文检索库介绍

2021年大数据ELK(二): Elasticsearch简单介绍

2021年大数据ELK(一):集中式日志协议栈Elastic Stack简介

安装Elasticsearch

一、创建普通用户

ES不能使用root用户来启动,必须使用普通用户来安装启动。这里我们创建一个普通用户以及定义一些常规目录用于存放我们的数据文件以及安装包等。

创建一个es专门的用户(必须

# 使用root用户在三台机器执行以下命令

useradd lanson
passwd lanson

二、为普通用户添加sudo权限

为了让普通用户有更大的操作权限,我们一般都会给普通用户设置sudo权限,方便普通用户的操作

三台机器使用root用户执行visudo命令然后为es用户添加权限

visudo
# 第100行
lanson      ALL=(ALL)       ALL

三、上传压缩包并解压

以下操作 使用root用户es的相关的目录, 三台虚拟机都需要创建

# 在node1、node2、node3创建es文件夹,并修改owner为lanson用户
mkdir -p /export/server/es
chown -R lanson:lanson /export/server/es

将es的安装包下载并上传到node1.服务器的/export/software路径下,然后进行解压

使用lanson用户来执行以下操作,将es安装包上传到node1服务器,并使用es用户执行以下命令解压。

# 解压Elasticsearch
cd /export/software/ 
tar -zvxf elasticsearch-7.6.1-linux-x86_64.tar.gz -C /export/server/es/

四、修改配置文件

1、修改elasticsearch.yml

node1服务器使用lanson用户来修改配置文件

cd /export/server/es/elasticsearch-7.6.1/config
mkdir -p /export/server/es/elasticsearch-7.6.1/log
mkdir -p /export/server/es/elasticsearch-7.6.1/data
rm -rf elasticsearch.yml

vim elasticsearch.yml
cluster.name: lanson-es
node.name: node1
path.data: /export/server/es/elasticsearch-7.6.1/data
path.logs: /export/server/es/elasticsearch-7.6.1/log
network.host: node1
http.port: 9200
discovery.seed_hosts: ["node1", "node2", "node3"]
cluster.initial_master_nodes: ["node1", "node2"]
bootstrap.system_call_filter: false
bootstrap.memory_lock: false
http.cors.enabled: true
http.cors.allow-origin: "*"

2、修改jvm.option

修改jvm.option配置文件,调整jvm堆内存大小

node1使用lanson用户执行以下命令调整jvm堆内存大小,每个人根据自己服务器的内存大小来进行调整。

cd /export/server/es/elasticsearch-7.6.1/config
vim jvm.options
-Xms2g
-Xmx2g

五、将安装包分发到其他服务器上面

node1使用lanson用户将安装包分发到其他服务器上面去

cd /export/server/es/
scp -r elasticsearch-7.6.1/ node2:$PWD
scp -r elasticsearch-7.6.1/ node3:$PWD

六、node2与node3修改es配置文件

node与node3也需要修改es配置文件

node2使用lanson用户执行以下命令修改es配置文件

cd /export/server/es/elasticsearch-7.6.1/config
mkdir -p /export/server/es/elasticsearch-7.6.1/log
mkdir -p /export/server/es/elasticsearch-7.6.1/data

vim elasticsearch.yml
cluster.name: lanson-es
node.name: node2
path.data: /export/server/es/elasticsearch-7.6.1/data
path.logs: /export/server/es/elasticsearch-7.6.1/log
network.host: node2
http.port: 9200
discovery.seed_hosts: ["node1", "node2", "node3"]
cluster.initial_master_nodes: ["node1", "node2"]
bootstrap.system_call_filter: false
bootstrap.memory_lock: false
http.cors.enabled: true
http.cors.allow-origin: "*"

node3使用lanson用户执行以下命令修改配置文件

cd /export/server/es/elasticsearch-7.6.1/config
mkdir -p /export/server/es/elasticsearch-7.6.1/log
mkdir -p /export/server/es/elasticsearch-7.6.1/data

vim elasticsearch.yml
cluster.name: lanson-es
node.name: node3
path.data: /export/server/es/elasticsearch-7.6.1/data
path.logs: /export/server/es/elasticsearch-7.6.1/log
network.host: node3
http.port: 9200
discovery.seed_hosts: ["node1", "node2", "node3"]
cluster.initial_master_nodes: ["node1", "node2"]
bootstrap.system_call_filter: false
bootstrap.memory_lock: false
http.cors.enabled: true
http.cors.allow-origin: "*"

七、修改系统配置,解决启动时候的问题

由于现在使用普通用户来安装es服务,且es服务对服务器的资源要求比较多,包括内存大小,线程数等。所以我们需要给普通用户解开资源的束缚

1、​​​​​​​普通用户打开文件的最大数限制

问题错误信息描述

max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]

ES因为需要大量的创建索引文件,需要大量的打开系统的文件,所以我们需要解除linux系统当中打开文件最大数目的限制,不然ES启动就会抛错

三台机器使用lanson用户执行以下命令解除打开文件数据的限制

sudo vi /etc/security/limits.conf

添加如下内容: 注意*不要去掉了

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

此文件修改后需要重新登录用户,才会生效

2、普通用户启动线程数限制

问题错误信息描述

max number of threads [1024] for user [es] likely too low, increase to at least [4096]

修改普通用户可以创建的最大线程数

max number of threads [1024] for user [es] likely too low, increase to at least [4096]
原因:无法创建本地线程问题,用户最大可创建线程数太小
解决方案:修改90-nproc.conf 配置文件。

三台机器使用lanson用户执行以下命令修改配置文件

Centos6
sudo vi /etc/security/limits.d/90-nproc.conf
Centos7
sudo vi /etc/security/limits.d/20-nproc.conf

找到如下内容:

* soft nproc 1024
#修改为

* soft nproc 4096

3、普通用户调大虚拟内存

错误信息描述:

max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]

调大系统的虚拟内存

原因:最大虚拟内存太小

每次启动机器都手动执行下。

三台机器执行以下命令

第一种调整: 临时调整, 退出会话 重新登录 就会失效的 (测试环境下配置)

sudo  sysctl -w vm.max_map_count=262144    

第二种: 永久有效  (生产中配置)

sudo vim /etc/sysctl.conf

在最后添加一行

vm.max_map_count=262144  

备注:以上三个问题解决完成之后,重新连接secureCRT或者重新连接xshell生效

八、​​​​​​​启动ES服务

三台机器使用lanson用户执行以下命令启动es服务

nohup /export/server/es/elasticsearch-7.6.1/bin/elasticsearch 2>&1 &

启动成功之后jsp即可看到es的服务进程,并且访问页面

http://node1:9200/?pretty

http://node2:9200/?pretty

http://node3:9200/?pretty

能够看到es启动之后的一些信息

注意:如果哪一台机器服务启动失败,那么就到哪一台机器的

/export/server/es/elasticsearch-7.6.1/log

这个路径下面去查看错误日志


  • 📢博客主页:https://lansonli.blog.csdn.net
  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
  • 📢大数据系列文章会每天更新,停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨

2021年大数据elk:安装elasticsearch(代码片段)

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录系列历史文章安装Elasticsearch一、创建普通用户二、为普通用户itcast添加sudo权限三、上... 查看详情

2021年大数据elk:安装elasticsearch-head插件

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录系列历史文章安装Elasticsearch-head插件一、安装nodejs1、下载安装包2、创建软连接3、修改... 查看详情

2021年大数据elk:elasticsearch简单介绍

...案例六、ElasticSearch对比Solr七、发展历史系列历史文章2021年大数据ELK(六):安装Elasticsearch2021年大数据ELK(五):Elasticsearch中的核心概念2021年大数据ELK(四):Lucene的美文搜索案例2021年大数... 查看详情

2021年大数据elk:elasticsearch中的核心概念

...、总结ES中的相关的术语总结:注意:系列历史文章2021年大数据ELK(六):安装Elasticsearch2021年大数据ELK(五):Elasticsearch中的核心概念2021年大数据ELK(四):Lucene的美文搜索案例2021年大数... 查看详情

2021年大数据elk:elasticsearch安装ik分词器插件(代码片段)

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录系列历史文章安装IK分词器一、下载ElasticsearchIK分词器二、切换到lanson用户,并在es... 查看详情

2021年大数据elk:lucene的美文搜索案例(代码片段)

...行效果​​​​​​​​​​​​​​系列历史文章2021年大数据ELK(六):安装Elasticsearch2021年大数据ELK(五):Elasticsearch中的核心概念2021年大数据ELK(四):Lucene的美文搜索案例2021年大数据... 查看详情

2021年大数据elk:lucene全文检索库介绍

...围搜索速度非常缓慢3、可靠性无法保障系列历史文章2021年大数据ELK(六):安装Elasticsearch2021年大数据ELK(五):Elasticsearch中的核心概念2021年大数据ELK(四):Lucene的美文搜索案例2021年大数... 查看详情

2021年大数据elk:集中式日志协议栈elasticstack简介(代码片段)

...构三、集中式日志协议栈组件功能简介系列历史文章2021年大数据ELK(六):安装Elasticsearch2021年大数据ELK(五):Elasticsearch中的核心概念2021年大数据ELK(四):Lucene的美文搜索案例2021年大数据... 查看详情

2021年大数据elk:使用vscode测试分词器(代码片段)

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录使用VSCode测试分词器一、准备VSCode开发环境1、打开VSCode,在应用商店中搜索elasticsea... 查看详情

2021年大数据elk(二十四):安装kibana(代码片段)

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。安装Kibana在Linux下安装Kibana,可以使用Elasticstack提供tar.gz压缩包。官方下载地址:Kiba... 查看详情

2021年大数据elk:集中式日志协议栈elasticstack简介(代码片段)

...构三、集中式日志协议栈组件功能简介系列历史文章 2021年大数据ELK(二): Elasticsearch简单介绍2021年大数据ELK࿰ 查看详情

2021年大数据elk:elasticsearch简单介绍

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录系列历史文章 一、Elasticsearch简介1、介绍2、创始人二、Elasticsearch可以做什么1、信息检... 查看详情

2021年大数据elk:elasticsearch架构原理(代码片段)

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录Elasticsearch架构原理一、Elasticsearch的节点类型1、Master节点2、DataNode节点二、分片和副本... 查看详情

2021年大数据elk:elasticsearch中的核心概念

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录系列历史文章Elasticsearch中的核心概念一、索引index二、映射mapping三、字段Field四、类型T... 查看详情

2021年大数据elk(二十一):logstash简介和安装(代码片段)

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录Logstash简介和安装一、简介1、经典架构2、对比Flume3、对比FileBeat二、安装Logstash1、切换... 查看详情

2021年大数据elk:lucene全文检索库介绍

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录系列历史文章一、什么是全文检索1、结构化数据与非结构化数据2、搜索结构化数据和... 查看详情

2021年大数据elk:安装elasticsearch-head插件(代码片段)

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录安装Elasticsearch-head插件一、安装nodejs1、下载安装包2、创建软连接3、修改环境变量4、验... 查看详情

2021年大数据elk:lucene的美文搜索案例(代码片段)

全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录系列历史文章美文搜索案例一、需求二、准备工作1、创建IDEA项目2、创建父工程3、添加... 查看详情