首页 > 系统相关 >ElasticSearch系列---【linux离线安装elasticsearch7.8集群】

ElasticSearch系列---【linux离线安装elasticsearch7.8集群】

时间:2024-03-02 22:44:22浏览次数:27  
标签:elasticsearch7.8 initial 离线 --- cluster 集群 elasticsearch 节点 es

linux离线安装elasticsearch7.8

1.官网下载地址

https://www.elastic.co/cn/downloads/past-releases/elasticsearch-7-8-0

2.上传到服务器指定目录

例如这里我上传到/opt/app/middles/目录下

3.解压软件

# 解压缩
tar -zxvf elasticsearch-7.8.0-linux-x86_64.tar.gz

4.创建用户

Elasticsearch 不允许 root 用户直接运行,所以要创建新用户,在 root 用户中创建新用户。

useradd es #新增 es 用户
passwd es #为 es 用户设置密码,例`elasticadmin`
userdel -r es #如果错了,可以删除再加
chown -R es:es /opt/app/middles/elasticsearch-7.8.0 #文件夹所有者

5.修改配置文件

5.1第一个节点的配置文件

注意:第一个节点的配置文件和其他节点启动的配置文件稍微不一样。

vi /opt/app/middles/elasticsearch-7.8.0/config/elasticsearch.yml
# 加入如下配置
cluster.name: my-study-es
node.name: node-1
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300

# The default list of hosts is ["127.0.0.1", "[::1]"]
#对于第一个Elasticsearch节点,您不需要显式地在配置中指定discovery.seed_hosts。因为第一个节点是集群的初始节点,它将成为种子节点,等待其他节点加入。

#当您启动第一个Elasticsearch节点时,它将自动成为集群的初始节点,并监听默认的传输端口9300和HTTP端口9200。其他节点可以通过该初始节点的IP地址和端口来发现和加入集群。

#因此,对于第一个节点的配置,您只需确保cluster.name的值与其他节点相同,以确保它们属于同一个集群。第一个节点无需配置
#discovery.seed_hosts: ["192.168.43.101:9300", "host2"]
#
# Bootstrap the cluster using an initial set of master-eligible nodes:
#一旦集群已经初始化并且主节点选举成功完成,您应该从所有节点的配置中移除 cluster.initial_master_nodes 参数。集群状态将被保存,所以在后续的重新启动中,这个参数不再需要。
#请注意,只有在形成全新集群或添加新的主节点候选到集群时,才需要设置 cluster.initial_master_nodes 参数。在日常操作中,这个参数通常不需要在 elasticsearch.yml 文件中出现。
#最后,主节点的稳定性非常关键,因此在选择主节点候选时,应确保这些节点的硬件资源、网络连接和可靠性都是足够的。
#移除 cluster.initial_master_nodes 参数后,通常情况下不需要重启 Elasticsearch 节点。一旦集群形成并且第一次主节点选举已经成功完成,集群状态将会持久化。这个参数仅在集群的初始启动阶段需要,用于避免分裂脑症状并确保正确的主节点选举。
#这个参数,启动完注释掉,集群不用重启
cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]

# 跨域问题
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type

5.2第2个节点的配置文件

注意:后面再加多少节点,都按照这个配置文件加就行。

cluster.name: my-study-es
node.name: node-2
network.host: 0.0.0.0
http.port: 9201
transport.tcp.port: 9301

# Pass an initial list of hosts to perform discovery when this node is started:
# The default list of hosts is ["127.0.0.1", "[::1]"]
#对于第一个Elasticsearch节点,您不需要显式地在配置中指定discovery.seed_hosts。因为第一个节点是集群的初始节点,它将成为种子节点,等待其他节点加入。
#当您启动第一个Elasticsearch节点时,它将自动成为集群的初始节点,并监听默认的传输端口9300和HTTP端口9200。其他节点可以通过该初始节点的IP地址和端口来发现和加入集群。
#最佳实践通常是在所有节点上配置相同的discovery.seed_hosts列表
discovery.seed_hosts: ["192.168.43.101:9300", "192.168.43.101:9301"]
#
# Bootstrap the cluster using an initial set of master-eligible nodes:
#一旦集群已经初始化并且主节点选举成功完成,您应该从所有节点的配置中移除 cluster.initial_master_nodes 参数。集群状态将被保存,所以在后续的重新启动中,这个参数不再需要。
#请注意,只有在形成全新集群或添加新的主节点候选到集群时,才需要设置 cluster.initial_master_nodes 参数。在日常操作中,这个参数通常不需要在 elasticsearch.yml 文件中出现。
#最后,主节点的稳定性非常关键,因此在选择主节点候选时,应确保这些节点的硬件资源、网络连接和可靠性都是足够的。
#移除 cluster.initial_master_nodes 参数后,通常情况下不需要重启 Elasticsearch 节点。一旦集群形成并且第一次主节点选举已经成功完成,集群状态将会持久化。这个参数仅在集群的初始启动阶段需要,用于避免分裂脑症状并确保正确的主节点选举。
#这个参数,启动完注释掉,集群不用重启
cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]

# 跨域问题
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type

6.修改/etc/security/limits.conf

vi /etc/security/limits.conf
# 在文件末尾中增加下面内容
# 每个进程可以打开的文件数的限制
es soft nofile 65536
es hard nofile 65536

7.修改/etc/security/limits.d/20-nproc.conf

vi /etc/security/limits.d/20-nproc.conf
# 在文件末尾中增加下面内容
# 每个进程可以打开的文件数的限制
es soft nofile 65536
es hard nofile 65536
# 操作系统级别对每个用户创建的进程数的限制
* hard nproc 4096
# 注: * 带表 Linux 所有用户名称

8.修改/etc/sysctl.conf

vi /etc/sysctl.conf
# 在文件中增加下面内容
# 一个进程可以拥有的 VMA(虚拟内存区域)的数量,默认值为 65536
vm.max_map_count=655360

9.重新加载配置文件

sysctl -p

10.使用es用户启动es

su - es
cd /opt/app/middles/elasticsearch-7.8.0/
#后台启动
bin/elasticsearch -d  
bin/elasticsearch -d -Xmx2g -Xms2g #后台启动,启动时指定内存大小(2G)
bin/elasticsearch -d -Des.logger.level=DEBUG  #可以在日志中打印出更加详细的信息。

11.测试软件

浏览器中输入地址: http://ip:9200/,如下图,表示成功了,如果访问不到,记得排查防火墙。

标签:elasticsearch7.8,initial,离线,---,cluster,集群,elasticsearch,节点,es
From: https://www.cnblogs.com/hujunwei/p/18049407

相关文章

  • Codeforces Round 931 (Div. 2) A-D2
    A.TooMinTooMax贪心、排序。对数组排序后,显然当下标\(i\)、\(j\)、\(k\)、\(l\)分别选择\(1\)、\(n\)、\(2\)、\(n-1\)时求得最大值。时间复杂度:\(O(nlogn)\)。#include<bits/stdc++.h>usingnamespacestd;#definecctieios::sync_with_stdio(0);cin.tie(0)......
  • 24-3-2 个人赛
    A-LastTrain难度:⭐⭐⭐⭐题目大意现有n个车站,每个车站都有6个属性,l,d,k,c,A,B;从时刻l开始发车,每隔时间d发一辆,一共发k辆;并且火车是从A点前往B点,所需时间是c;设F(x)指从车站x的车最晚什么时候出发可以到车站n;解题思路因为所有车站的目标都是n,......
  • ElasticSearch系列---【es设置开机启动】
    1.在/etc/systemd/system目录下创建elasticsearch1.service注意:如果您的系统使用的不是Systemd,请根据您的init系统调整命令(如Upstart或SysVinit)。如果在同一台机器启动多个节点,就按照本文再创建elasticsearch2.service就行了。下面是elasticsearch1.service脚本内容把目录/......
  • #SOR-序列超松弛算法
    \(\textbf{SOR(SuccessiveOver-Relaxation)}\)算法是一种用于解线性方程组的迭代方法,它通过引入松弛因子来加快收敛速度。SOR算法的基本步骤如下:将系数矩阵\(A\)分解为\(A=D-L-U\),其中D是A的对角线元素构成的对角矩阵,\(L\)是\(A\)的下三角部分(不含对角线)构成的矩阵,\(U\)是\(A\)......
  • 初中英语优秀范文100篇-095No Gains without Pains-没有付出就没有收获
    PDF格式公众号回复关键字:SHCZFW095记忆树1Thereisnodoubtthattheonlywaytosuccessistoworkhard.翻译毫无疑问,通往成功的唯一途径就是努力工作简化记忆努力句子结构Thereisnodoubtthat...这是一个常见句型,意为毫无疑问的是...表示说话者对某件事......
  • What does -> mean in Python function definitions?
    Whatdoes->meaninPythonfunctiondefinitions?InPython,the"->"symbolisusedtoindicatethereturntypeofafunction.ItispartofthefunctiondefinitioninaPython3.5orlater.Forexample,thefollowingcodedefinesafunct......
  • pnpm link --global 用于全局链接本地开发的包
    pnpmlink--global是pnpm(一个更快、更节省磁盘空间的Node.js包管理器)中的命令,它用于全局链接本地开发的包。当你在开发一个自定义的npm包,并希望在全局环境中像已安装的全局包那样试用它时,可以使用pnpmlink--global命令。具体步骤如下:首先,确保你已经在你的包目录中......
  • ubuntu-CUDA 开发环境搭建
    CUDA开发环境搭建1.安装CUDAToolKit查询驱动支持的CUDA版本#命令输出第一行版本nvidia-smi命令的版本,nvidia驱动版本与支持的cuda版本,当前本地机器支持的cuda版本为12.2nvidia-smi进入官网下载对应版本的cuda安装,历史版本归档下载链接:https://developer.nvidia.com/......
  • 洛谷题单指南-二分查找与二分答案-P1182 数列分段 Section II
    原题链接:https://www.luogu.com.cn/problem/P1182题意解读:每段和的最大值越小,则分段数就越多,因此可以通过给定每段和的最大值,将分段数划分为两类:<=M,>M,对每段和的最大值进行二分即可。解题思路:二分的判定条件为,给定每段和的最大值,计算分段数,计算逻辑如下:依次遍历每一个数,求当前......
  • Go 100 mistakes - #92: Writing concurrent code that leads to false sharing
      ......