Linux下部署ElasticSearch集群

Elasticsearch7.17.8集群的搭建

节点host名称节点ip节点部署内容
k8s-m192.168.40.142主节点 数据节点
k8s-w1192.168.40.141主节点 数据节点
k8s-w2192.168.40.140数据节点

一、准备安装环境

 1.下载安装包 官网 www.elastic.co 下载所有版本地址  点击跳转  下载elasticsearch-7.17.8版本

 2.创建安装环境

        安装jdk并配置环境变量

  3.上传压缩包

  4.解压Elasticsearch压缩包

tar -xzf elasticsearch-7.17.8-linux-x86_64.tar.gz

  5.移动至安装目录

mv elasticsearch-7.17.8 /usr/local

  6.创建目录

cd /usr/local/elasticsearch-7.17.8
mkdir data
mkdir logs

二、修改配置文件

1.修改Elasticsearch的配置文件elasticsearch.yml

vim config/elasticsearch.yml
#为集群设置名称,集群内所有节点配置的名称必须一致
cluster.name: elastic
#当前节点取名,集群内节点名称必须唯一
node.name: k8s-m
#数据存储目录(用逗号分隔多个位置) 这个目录默认不存在,自行创建
path.data: /usr/local/elasticsearch-7.17.8/data
#日志文件路径
path.logs: /usr/local/elasticsearch-7.17.8/logs
#TCP的默认监听端口,默认 9300
transport.tcp.port: 9300
#启动时是否有锁定内存,生产环境需要true(可用内存一般设置可用内存的一半左右)
bootstrap.memory_lock: true
#当前节点地址
network.host: 0.0.0.0
#es对外提供的http端口,默认 9200
http.port: 9200
#写入候选主节点的设备地址,在开启服务后可以被选为主节点
discovery.seed_hosts: ["k8s-m", "k8s-w1", "k8s-w2"]
#始化一个新的集群时需要此配置来选举master
cluster.initial_master_nodes: ["k8s-m", "k8s-w1"]
#配置跨域,以便es-head可视化工具连接
http.cors.enabled: true
http.cors.allow-origin: "*"

2.修改Elasticsearch的配置文件jvm.options

vim config/jvm.options

内存大的可以配置成1g或者更大

-Xms512m
-Xmx512m

三、分发配置修改过的安装包到节点2与节点3

scp /usr/local/elasticsearch-7.17.8 root@192.168.40.141:/usr/local/
scp /usr/local/elasticsearch-7.17.8 root@192.168.40.140:/usr/local/

四、修改节点2与节点3的配置文件

只修改当前节点名称,其余配置和主节点一样

vim /usr/local/elasticsearch-7.17.8/config/elasticsearch.yml
#当前节点取名,集群内节点名称必须唯一
node.name: k8s-w1

==================================================

#当前节点取名,集群内节点名称必须唯一
node.name: k8s-w2

五、修改配置

1.系统配置

修改进程的最大文件数,添加最大创建文件数(*不能去掉),配置/etc/security/limits.conf文件,在底部添加

vim /etc/security/limits.conf
* soft nofile 1048576
* hard nofile 1048576

在这里插入图片描述
配置 /etc/sysctl.conf文件,修改vm.max_map_count参数,该参数设置进程可以适用的的VMA(虚拟内存区域)数量。修改完成后,执行“sysctl -p”命令,使修改的配置生效

vim  /etc/sysctl.conf
vm.max_map_count = 655360
sysctl -p

在这里插入图片描述

六、启动集群

 启动集群不能使用root用户 需要使用普通用户 这里创建elastic用户(每个节点都需要创建赋权限)

useradd elastic -m

设置密码 

passwd elastic

赋予安装包的使用权限(注意如果数据目录不在安装包下 需要再赋予一次数据目录权限)

chown -R elastic:elastic /usr/local/elasticsearch-7.17.8

 启动 : 

su elastic
cd /usr/local/elasticsearch-7.17.8/bin
./elasticsearch 

后台启动

./elasticsearch -d

   配置完成

七、设置开机自启

自定义启动脚本 需要在es账户之间配置免密登录

先查看当前的开机启动服务
chkconfig --list

创建es 的系统启动服务文件,进入到 cd /etc/init.d 目录,编写elasticsearch脚本

#!/bin/sh
# chkconfig: - 85 15
#description: elasticsearch
export ES_HOME=/usr/local/elasticsearch-7.17.8case "$1" in
start)su elastic<<!cd $ES_HOME./bin/elasticsearch -d -p pid
!echo "elasticsearch startup";;
stop)kill -9 `cat $ES_HOME/pid`echo "elasticsearch stopped";;
restart)kill -9 `cat $ES_HOME/pid`echo "elasticsearch stopped"su elastic<<!cd $ES_HOME./bin/elasticsearch -d -p pid
!echo "elasticsearch startup";;
*)echo "start|stop|restart";;
esac
exit $?
chmod 777 elasticsearch

添加和删除服务并设置启动方式;

chkconfig --add elasticsearch    # 【添加系统服务】
chkconfig --del elasticsearch    # 【删除系统服务】

关闭和启动服务;

systemctl start elasticsearch      # 【启动服务】
systemctl stop elasticsearch       # 【停止服务】
systemctl restart elasticsearch       # 【重启服务】

设置服务是否开机启动;

#【开启服务】
chkconfig elasticsearch on     
systemctl enable elasticsearch # 【关闭服务】
chkconfig elasticsearch off      
systemctl disable elasticsearch

测试集群
查看集群信息:
http://192.168.40.142:9200/_cat/nodes
成功后连接es
在这里插入图片描述

节点规模扩展

        新添加的节点需要配置cluster.initial_master_nodes,旧节点如果不重启不用修改,如果要重启旧节点,需要修改cluster.initial_master_nodes写入所有节点

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/501413.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity2022接入Google广告与支付SDK、导出工程到Android Studio使用JDK17进行打包完整流程与过程中的相关错误及处理经验总结

注&#xff1a;因为本人也是第一次接入广告与支付SDK相关的操作&#xff0c;网上也查了很多教程&#xff0c;很多也都是只言片语或者缺少一些关键步骤的说明&#xff0c;导致本人也是花了很多时间与精力踩了很多的坑才搞定&#xff0c;发出来也是希望能帮助到其他人在遇到相似问…

Linux中隐藏操作身法

从历史记录中删除指定的命令 假设历史记录中已经包含了一些你不希望记录的命令。这种情况下我们怎么办&#xff1f;很简单。通过下面的命令来删除&#xff1a; history | grep "keyword"例如:history | grep set o history 批量第二条和第四条删除&#xff1a; sed…

【期末复习】一、操作系统概论

题型 选择题 论述题 综合分析题(计算,证明) 算法分析题(根据程序代码分析) 1.方面 操作系统在计算机系统中主要涉及硬件、软件和数据这三个重要方面。 2.操作系统发展历史 手工操作阶段(1940s) 联机批处理系统阶段(1950s) 脱机批处理系统阶段(1950s) 多道…

弧形导轨如何避免生锈?

弧形导轨是机械设备中重要的组成部分&#xff0c;负责支撑和引导运动部件。由于长时间的使用和外部环境的影响&#xff0c;导轨容易出现锈蚀现象&#xff0c;从而影响机械设备的正常运行。因此&#xff0c;导轨的防锈处理是非常重要的&#xff0c;以下是一些有效的防锈方法&…

游泳溺水识别数据集,对25729张图片进行YOLO,COCO JSON, VOC XML 格式的标注,溺水平均识别率在89.9%

游泳溺水识别数据集&#xff0c;对25729张图片进行YOLO&#xff0c;COCO JSON, VOC XML 格式的标注&#xff0c;溺水识别率在92&#xff05; 训练结果 数据集和标签 验证 游泳测试视频 根据测试的视频来获取检测结果&#xff1a; 游泳测试视频的置信度设置60% 检测结果如下&…

一个hive插入数据失败的问题

背景 在生产业务中一个简单的sql(hive on tez)如下: insert overwrite table AAA partition(groupcode) select * from BBB; 突然报错如下: Caused by: org.apache.hadoop.hive.ql.metadata.Hive :xception: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.…

探索Wiki:开源知识管理平台及其私有化部署

在如今的信息时代&#xff0c;企业和团队的知识管理变得愈发重要。如何有效地存储、整理、共享和协作&#xff0c;是提高团队效率和创新能力的关键因素之一。今天&#xff0c;我要为大家介绍一款非常有用的github上开源知识管理工具——Wiki&#xff0c;并分享它的私有化部署方…

Unity UGUI使用技巧与经验总结(不定期更新)

Text自动缩放参考连接&#xff1a; Unity -UGUI中Text文本框的自动调整&#xff0c;字体大小的自适应调节_unity添加的字体大小锁定-CSDN博客 Toggle按钮选择时&#xff0c;显示对应的UI界面&#xff1a; 为Toggle组件的On Value Change事件添加对需要显示的对象的SetActive…

吐卡机开发——指令合集—未来之窗行业应用跨平台架构

序号指令10A 09 02 01 01 0D DE20A 09 02 02 01 FD DE30A 09 02 03 01 6D DF40A 09 02 04 01 5D DD50A 09 02 05 01 CD DC60A 09 02 06 01 3D DC70A 09 02 07 01 AD DD80A 09 02 08 01 5D D890A 09 02 09 01 CD D9100A 09 02 10 01 5D D2110A 09 02 11 01 CD D3120A 09 02 12 0…

简单使用linux

1.1 Linux的组成 Linux 内核&#xff1a;内核是系统的核心&#xff0c;是运行程序和管理 像磁盘和打印机等硬件设备的核心程序。 文件系统 : 文件存放在磁盘等存储设备上的组织方法。 Linux 能支持多种目前浒的文件系统&#xff0c;如 ext4 、 FAT 、 VFAT 、 ISO9660 、 NF…

38 Opencv HOG特征检测

文章目录 HOGDescriptor 构造函数setSVMDetector 设置支持向量机&#xff08;SVM&#xff09;检测器&#xff0c;用于目标检测。compute 用于计算图像区域的HOG描述符。detectMultiScale 多尺度检测目标。示例 HOGDescriptor 构造函数 HOGDescriptor(); HOGDescriptor(const S…

SweetAlert2 - 漂亮可定制的 JavaScript 弹窗

https://sweetalert2.github.io/ https://github.com/sweetalert2/sweetalert2 安装&#xff1a; npm install sweetalert2封装&#xff1a; import Swal from sweetalert2/dist/sweetalert2.js import sweetalert2/src/sweetalert2.scss/*** * param {string} icon - ico…

ros2 py文件间函数调用

文章目录 写在前面的话生成python工程包命令运行python函数命令python工程包的目录结构目录结构&#xff08;细节&#xff09; 报错 1&#xff08; no module name ***&#xff09;错误示意 截图终端输出解决方法 报错 2&#xff08; AttributeError: *** object has no attrib…

CentOS7安装配置JDK保姆级教程(图文详解)

1. 安装OpenJDK 直接使用yum命令安装&#xff0c;这里安装的版本是openjdk 11 &#xff08;具体版本根据自己操作系统选择&#xff09; # 查找安装包 yum search java-11# 安装jdk, 同时安装了依赖 java-11-openjdk-headless yum install java-11-openjdk.x86_64# 安装开发工…

默认ip无法访问,利用dhcp功能获取ip进行访问的方法

应用场景&#xff1a; ac的默认ip如192.168.1.1在pc与ac的eth2以后网口直连无法ping通&#xff0c;而且pc改为dhcp自动获取ip也获取不到ip地址&#xff0c;无法进行web配置和命令行操作。 原因是ac或其他设备被修改了默认ip或者端口vlanid&#xff0c;现在的端口vlan对应子接…

库伦值自动化功耗测试工具

1. 功能介绍 PlatformPower工具可以自动化测试不同场景的功耗电流&#xff0c;并可导出为excel文件便于测试结果分析查看。测试同时便于后续根据需求拓展其他自动化测试用例。 主要原理&#xff1a;基于文件节点 coulomb_count 实现&#xff0c;计算公式&#xff1a;电流&…

QQ长截屏

QQ长截屏 第一步&#xff1a;CtrlAltA 第二步&#xff1a;点击剪刀之后&#xff0c;再滑动滚轮就可以了。 展示

高效管理 Nginx 的利器:nginxWebUI 指南和 Docker 部署安装过程

前言 Nginx WebUI 是一个为 Nginx 提供图形化管理界面的工具。通过 WebUI&#xff0c;用户可以轻松管理 Nginx 配置&#xff0c;而无需直接编辑配置文件&#xff0c;尤其适合新手用户和频繁修改配置的场景。 官网文档&#xff1a;nginxWebUI - 文档 本文将分享为什么选择 ngin…

MySQL 05 章——排序与分页

一、排序 &#xff08;1&#xff09;排序规则 使用ORDER BY子句排序 ASC&#xff08;ascend&#xff09;&#xff1a;升序&#xff08;从上至逐渐升高&#xff09;DESC&#xff08;descend&#xff09;&#xff1a;降序&#xff08;从上至下逐渐降低&#xff09;​​​​​​…

【C语言】_指针运算

目录 1. 指针-整数 2. 指针-指针 2.1 指针-指针含义 2.2 指针-指针运算应用&#xff1a;实现my_strlen函数 3. 指针的关系运算&#xff08;大小比较&#xff09; 1. 指针-整数 联系关于指针变量类型关于指针类型和指针-整数相关知识&#xff1a; 原文链接如下&#xff1…