Linux搭建ElasticSearch单节点及集群

这篇具有很好参考价值的文章主要介绍了Linux搭建ElasticSearch单节点及集群。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

环境准备

1.虚拟机CentOS7.6
2.elasticsearch7.8.0:https://www.elastic.co/cn/downloads/past-releases/elasticsearch-7-8-0
将tar包解压到指定目录

配置文件

1.Linux环境安装了jdk的,会和es自带jdk冲突,需要指定使用自带jdk,修改es的bin目录下elasticsearch如下:

#   ES_JAVA_OPTS="-Xms8g -Xmx8g" ./bin/elasticsearch

#=======添加配置解决jdk版本问题=====
export JAVA_HOME=/app/software/elasticsearch/elasticsearch-7.8.0-target/jdk
export PATH=$JAVA_HOME/bin:$PATH
#============

source "`dirname "$0"`"/elasticsearch-env

ES_JAVA_OPTS=`export ES_TMPDIR; "$JAVA" "$XSHARE" -cp "$ES_CLASSPATH" org.elasticsearch.tools.launchers.JvmOptionsParser "$ES_PATH_CONF"`

#=======添加配置解决jdk版本问题=====

if [ -x "$JAVA_HOME/bin/java" ]; then
        JAVA="/app/software/elasticsearch/elasticsearch-7.8.0-target/jdk/bin/java"
else
        JAVA=`which java`
fi
#============

# manual parsing to find out, if process should be detached

2.如果机器内存不够用,需要调小启动内存,在es的config目录下jvm.options文件:

默认配置如下:
-Xms2g
-Xmx2g
默认的配置占用内存太多了,调小一些:
-Xms256m
-Xmx256m

3.创建启动用户:es不允许用root启动,创建一个user-es用户:
①useradd user-es
②chown user-es:user-es -R /app/software/elasticsearch/elasticsearch-7.8.0

4.修改属性值:在config目录下的elasticsearch.yml
①path.data和path.log不指定会默认在es目录下
②network.host: 0.0.0.0
③cluster.name: elasticsearch
node.name: node1
cluster.initial_master_nodes: [“node1”]
④http.port: 9200

启动Elasticsearch

①切换到user-es:su user-es
②进入es的bin目录,./elasticsearch启动es,观察启动日志

遇到的两个错误:
1.ERROR: [1] bootstrap checks failed. You must address the points described in the following [1] lines before starting Elasticsearch.
bootstrap check failure [1] of [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决方法:在 /etc/sysctl.conf 文件最后添加如下内容,即可永久修改

切换到root用户
执行命令:su root

执行命令
vim /etc/sysctl.conf

添加如下内容
vm.max_map_count=262144

保存退出,刷新配置文件
sysctl -p

切换user-es用户,继续启动
su user-es

启动es服务
./bin/elasticsearch

2.[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
解决方法:切换到root用户,执行命令:
vi /etc/security/limits.conf

#<domain>      <type>  <item>         <value>
#

#*               soft    core            0
#*               hard    rss             10000
*                soft    nofile          65536
*                hard    nofile          65536
#@student        hard    nproc           20

reboot重启服务器,再./bin/elasticsearch重启es
浏览器访问http://虚拟机ip:9200/后看到类似如下信息,表示ES启动成功

{
	"name": "node1",
	"cluster_name": "elasticsearch",
	"cluster_uuid": "SRwJX4sYQ8el4N5wj4tOmA",
	"version": {
	"number": "7.8.0",
	"build_flavor": "default",
	"build_type": "tar",
	"build_hash": "4d960a0733be83dd2543ca018aa4ddc42e956800",
	"build_date": "2021-06-10T21:01:55.251515791Z",
	"build_snapshot": false,
	"lucene_version": "8.8.2",
	"minimum_wire_compatibility_version": "6.8.0",
	"minimum_index_compatibility_version": "6.0.0-beta1"
	},
	"tagline": "You Know, for Search"
}

集群搭建

1.克隆两台机器,将刚刚的es压缩包解压到相同路径
2.修改配置文件:
①cluster.name: elasticsearch7.8.0(三个节点名字要相同)
②node.name: node1(各不相同)
③节点类型node.master负责调度,node.data负责存储数据,正式环境一般主节点不要存储数据,每个节点单一功能整体效率更高。我的三个配置:
第一台
node.master: true
node.data: false
node.ingest: false
第二台
node.master: true
node.data: true
node.ingest: false
第三台
node.master: true
node.data: true
node.ingest: false
④写入候选主节点:discovery.seed_hosts: [“192.168.32.1”, “192.168.32.2”,“192.168.32.3”]
⑤初始化集群选举master:cluster.initial_master_nodes: [“node2”]
配置完逐台重启即可。我是启动es单独一个窗口,要退出直接ctrl+c,其他操作在新的窗口。
连接linux推荐SSH工具:MobaXterm,开源免费,相当于xshell和xftp的合体,操作命令时能同时传输文件,功能十分强大。
验证:浏览器访问http://192.168.32.2:9200/_cat/nodes?v(任意集群节点),出现类似以下信息则证明集群搭建完成文章来源地址https://www.toymoban.com/news/detail-600297.html

ip           heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
192.168.32.1           19          71   2   29.07   10.51     4.49 lmr       -      node1-source
192.168.32.2            8          61   0    7.07    2.58     0.99 dlmrt     *      node2-source
192.168.32.3            8          96   1    0.04    0.04     0.05 dlmrt     -      node3-source

到了这里,关于Linux搭建ElasticSearch单节点及集群的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Elasticsearch8 集群搭建(二)配置篇:(1)节点和集群配置

    安装完Elasticsearch后,需要对其进行配置,包括以下几部分:节点和集群配置、系统配置、安全配置。 此篇记录节点和集群配置的内容,后续将更新系统配置和安全配置。 通过编辑/usr/local/elasticsearch-8.10.2/config/elasticsearch.yml文件进行配置,在集群内每个节点上都要进行配置。

    2024年01月18日
    浏览(25)
  • CentOS 7 使用Docker方式搭建ElasticSearch 7.7.0 三节点集群,并配置elasticsearch-head插件,ik分词器,以及Kibana可视化平台

    IP 角色 172.16.31.191 elasticsearch-1 172.16.31.192 elasticsearch-2 172.16.31.193 elasticsearch-3 并创建相关挂载目录,3台虚拟机都要,如下 还要对文件夹加设置开放权限,如果不开放权限,则会报错无法写入数据的情况,3台虚拟机都要,如下 172.16.31.191 172.16.31.192 172.16.31.193 172.16.31.191 172.16.3

    2024年02月04日
    浏览(34)
  • linux安装搭建配置docker,mysql,nacos,redis哨兵集群,kafka,elasticsearch,kibana,IK分词器,安装Rabbitmq,安装并配置maven

    目录 搭建docker 1.2安装yum工具  1.3更新阿里镜像源 1.4下载docker 1.5关闭防火墙 1.6启动docker 1.7查看docker版本 1.8配置阿里云镜像 1.8.1 创建文件夹 1.8.2在文件夹内新建一个daemon.json文件 1.8.3重载文件 1.9重启docker 2安装MySQL 3安装nacos 3.1拉取nacos镜像并启动 3.2启动nacos命令 3.3命令敲完

    2024年02月03日
    浏览(45)
  • Linux集群部署Elasticsearch-8.8.2

    本教程采用vm虚拟机搭建,与实际物理环境可能不同,仅做参考学习 准备工作 准备至少三个节点 节点名称 节点IP node-1 192.168.190.128 node-2 192.168.190.129 node-3 192.168.190.130 使用 ifconfig 查看ip 关闭三个节点的防火墙 安装包准备 将 elasticsearch-8.8.2-linux-x86_64.tar.gz 分别拷贝到三个节点

    2024年02月05日
    浏览(25)
  • Elasticsearch:如何从 Elasticsearch 集群中删除数据节点

    Elasticsearch 集群通常包含多个节点,并且可能存在需要从集群中删除节点的情况。 应谨慎执行此过程,以确保数据的完整性和可用性。 在本文中,我们将引导你完成从 Elasticsearch 集群安全删除节点的步骤。 在尝试从 Elasticsearch 集群中删除节点之前,确保集群处于健康状态(

    2024年02月07日
    浏览(39)
  • Linux:ELK:日志分析系统(使用elasticsearch集群)

    1. 将日志进行集中化管理(beats) 2. 将日志格式化(logstash) 将其安装在那个上面就对那个进行监控 3. 对格式化后的数据进行索引和存储(elasticsearch) 4. 前端数据的展示(kibana) 要准备安装包 elasticsearch elasticsearch-head kibana logstash node phantomjs 这些安装包都在网上很好找,自

    2024年02月14日
    浏览(31)
  • ElasticSearch集群管理--往集群内添加新节点

    本节描述的集群,都是基于docker对elasticsearch节点进行进行管理。 本节描述elasticsearch基于版本8.5.0 本节描述的集群部署方式只是用来学习和测试,不是为了生产环境 注意,加入这个参数-e ES_JAVA_OPTS=“-Xms1g -Xmx1g”,防止添加新容器后,master节点挂掉 在Kibana监控上可以看到已经

    2024年02月11日
    浏览(24)
  • Elasticsearch的集群与节点管理

    Elasticsearch是一个分布式、实时的搜索和分析引擎,它可以处理大量数据并提供快速、准确的搜索结果。在大规模数据处理和搜索场景中,Elasticsearch的集群和节点管理是非常重要的。本文将深入探讨Elasticsearch的集群与节点管理,涵盖其核心概念、算法原理、最佳实践、实际应

    2024年02月21日
    浏览(30)
  • ElasticSearch实战--集群管理--向集群中添加新节点

    基于ElasticSearch版本8.5.0 本文描述的集群部署方式,只用以测试和学习使用,不能作为生产环境 本文描述的集群方式基于docker ElasticSearch文档

    2024年02月11日
    浏览(34)
  • Elasticsearch+Kibana集群部署(3节点)

    l i n d o r − − 良民笔记 lindor--良民笔记 l in d or − − 良民笔记 前言    仅作为笔记并记录elk搭建过程和搭建中遇到的问题, 转载请注明出处 ,目前该章节只讲述了 elasticsearch+Kibana 的安装过程,以及安装中的一些简单报错;适合有适当基础的同学,理论表的比较少。 ‍

    2024年02月09日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包