Linux部署elasticsearch集群

文章目录

  • 一、集群规划
  • 二、安装前准备(所有节点操作)
    • 创建数据目录
    • 修改系统配置文件/etc/sysctl.conf
    • 创建用户组
    • 设置limits.conf
  • 三、初始化配置(在节点1上操作)
    • 下载安装包
    • 解压安装包
    • 修改jvm.options文件下配置的所占内存
    • 修改集群配置文件elasticsearch.yml
    • 将安装包传到另外两个节点
    • 在另外两个节点上修改elasticsearch.yml
  • 四、配置开机自启动(所有节点操作)
  • 五、启动集群(在所有节点依次操作)
  • 六、查看集群状态


一、集群规划

IP角色
192.168.1.10node-1
192.168.1.20node-2
192.168.1.30node-3

二、安装前准备(所有节点操作)

创建数据目录

mkdir /data

修改系统配置文件/etc/sysctl.conf

echo "vm.max_map_count = 655360" >> /etc/sysctl.conf
sysctl -p    #重新加载

创建用户组

groupadd elastics
useradd -r -g elastics elastics
mkdir /home/elastics
chown -R elastics:elastics /home/elastics

设置limits.conf

vi /etc/security/limits.conf
在最后增加:

elastics soft nofile 655360   #solf是软限制的意思,hard是硬限制;软限制可以在程序的进程中自行改变(突破限制),而硬限制则不行(除非程序进程有root权限)
elastics hard nofile  655360  #nofile 文件描述符
elastics soft nproc 655360    #nproc  进程的限制
elastics hard nproc 655360
elastics soft memlock unlimited
elastics hard memlock unlimited

在这里插入图片描述
注意:该配置需要重新登录方可生效

三、初始化配置(在节点1上操作)

下载安装包

官网下载地址:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.13.4-linux-x86_64.tar.gz

解压安装包

tar xvf elasticsearch-7.13.4-linux-x86_64.tar.gz -C /data/
cd /data/
mv elasticsearch-7.13.4 elasticsearch
mkdir -p /data/elasticsearch/{data,logs}

修改jvm.options文件下配置的所占内存

vi /data/elasticsearch/config/jvm.options

修改为:(按照实际情况来定,一般为内存的一半)

-Xms2g
-Xmx2g

在这里插入图片描述

修改集群配置文件elasticsearch.yml

vi /data/elasticsearch/config/elasticsearch.yml
增加如下配置

#集群名称
cluster.name: my-application
#节点名称,三台不能一样
node.name: node-1
#是否有资格竞选主节点
node.master: true
node.data: true
path.data: /data/elasticsearch/data
path.logs: /data/elasticsearch/logs
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
transport.tcp.compress: true
#节点发现,填写对应节点虚机地址,单机部署只有一个
discovery.seed_hosts: ["192.168.1.10","192.168.1.10","192.168.1.10"]
cluster.initial_master_nodes: ["node-1","node-2","node-3"]
discovery.zen.minimum_master_nodes: 2
gateway.recover_after_nodes: 2
gateway.recover_after_time: 5m
gateway.expected_nodes: 2
search.max_buckets: 90000000
indices.query.bool.max_clause_count: 10240
#cluster.routing.allocation.same_shard.hos: true
bootstrap.memory_lock: true
http.cors.enabled: true
http.cors.allow-origin: "*"

将安装包传到另外两个节点

rsync -avzP /data/elasticsearch 192.168.1.20:/data/
rsync -avzP /data/elasticsearch 192.168.1.30:/data/

在另外两个节点上修改elasticsearch.yml

只需将node.name的值分别修改为node-2和node-3即可

四、配置开机自启动(所有节点操作)

vi /etc/init.d/elasticsearch
修改文件内容为:(需在非root用户执行,若为root用户,则切换为别的用户)

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

设置开机自启

chmod 777 /etc/init.d/elasticsearch
chkconfig --add elasticsearch
chkconfig elasticsearch on

五、启动集群(在所有节点依次操作)

chown -R elastics:elastics /data/elasticsearch
su - elastics
service elasticsearch start

六、查看集群状态

http://192.168.1.10:9200/_cat/nodes?v
在这里插入图片描述

http://192.168.1.10:9200/_cat/health?v
在这里插入图片描述

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

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

相关文章

00后卷王真的很卷吗?

前言 都在传00后躺平、整顿职场,但该说不说,是真的卷,感觉我都要被卷废了... 前段时间,公司招了一个年轻人,其中有一个是00后,工作才一年多,直接跳槽到我们公司,薪资据说有18K&…

《微信小程序开发从入门到实战》学习三十九

4.2 云开发JSON数据库 4.2.10 查询数组和对象 1.匹配记录中的嵌套字段 db.collection(testOne).add({data:{style:{color:red}}}) db.collection(testOne).add({data:{style:{color:blue}}}) 插入两天记录,如果希望查询style.color为blue的记录,有两种…

Linux学习——模拟实现mybash小程序

目录 一,跟正宗的bash见个面 二,实现一个山寨的bash 1.提示符 2.输入命令与回显命令 3.解析命令 4.执行命令 5.执行逻辑 三,全部代码 一,跟正宗的bash见个面 在这篇文章中,我会写一个myshell小程序。这个小程序…

logback-spring.xml详解

《springboot使用logback日志框架超详细教程》文中,filter中最重要的两个过滤器LevelFilter(日志级别精确匹配)、ThresholdFilter(阈值过滤) 的描述非常准确: springboot使用logback日志框架超详细教程_sp…

SQL Server数据库部署

数据库简介 使用数据库的必要性 使用数据库可以高效且条理分明地存储数据,使人们能够更加迅速、方便地管理数据。数据库 具有以下特点。 》可以结构化存储大量的数据信息,方便用户进行有效的检索和访问。 》 可以有效地保持数据信息的一致性&#xff0c…

vue el-cascader 省市区封装及使用

使用了 Element UI 中的 el-cascader 组件&#xff0c;并对其进行了进一步封装和定制 创建组件index.vue (src/components/addressCascader/index.vue) <template><div><el-cascaderv-if"showca"size"large":props"props":optio…

【个人记录】NGINX反向代理grpc服务

最开始使用proxy_pass去代理了grpc服务&#xff0c;结果请求时候报错提示&#xff1a; rpc error: code Unavailable desc connection error: desc "error reading server preface: http2: frame too large"后来才知道代理grpc服务需要使用grpc_pass&#xff0c;…

Jenkins——节点

Jenkins服务运行在一台服务器上&#xff0c;但是服务器的资源时有限的&#xff0c;那Jenkins服务的构建速度也是有限的。当项目比较多或规模大时&#xff0c;会超出Jenkins的构建能力。单个Jenkins不能满足需求&#xff0c;但是布置多个Jenkins服务比较麻烦&#xff0c;管理起来…

【Casbin】一篇文章入门Casbin

Casbin Casbin模型基础&#xff08;PERM&#xff09;Policy定义Request定义MatchersEffect ACL模型RBAC模型Go语言实战使用前先下载casbin包新建一个Casbin enforcer判断是否能通过增加Policy删除Policy更新Policy获取Policy Casbin 权限管理在几乎每个系统中都是必备的模块。…

java设计模式学习之【桥接模式】

文章目录 引言桥接模式简介定义与用途&#xff1a;实现方式 使用场景优势与劣势桥接模式在Spring中的应用绘图示例代码地址 引言 想象你正在开发一个图形界面应用程序&#xff0c;需要支持多种不同的窗口操作系统。如果每个系统都需要写一套代码&#xff0c;那将是多么繁琐&am…

【vue-router】useRoute 和 useRouter 的区别

&#x1f680; 作者主页&#xff1a; 有来技术 &#x1f525; 开源项目&#xff1a; youlai-mall &#x1f343; vue3-element-admin &#x1f343; youlai-boot &#x1f33a; 仓库主页&#xff1a; Gitee &#x1f4ab; Github &#x1f4ab; GitCode &#x1f496; 欢迎点赞…

一起学docker系列之十四Dockerfile微服务实践

目录 1 前言2 创建微服务模块2.1 **创建项目模块**2.2 **编写业务代码** 3 编写 Dockerfile4 构建 Docker 镜像5 运行 Docker 容器6 测试微服务7 总结8 参考地址 1 前言 微服务架构已经成为现代软件开发中的一种重要方式。而 Docker 提供了一种轻量级、便携式的容器化解决方案…

业务运营常用的ChatGPT通用提示词模板

业务目标设定和策略制定&#xff1a;请帮助我设定明确的业务目标&#xff0c;并制定相应的运营策略&#xff0c;以便我能够更好地指导团队开展工作。 市场调研和分析&#xff1a;请帮助我进行市场调研和分析&#xff0c;包括竞争对手、市场规模、客户需求等方面的内容&#xf…

ESP32和ESP8266的ESP-MESH

ESP32和ESP8266的ESP-MESH 功能介绍一、介绍ESP-MESH二、安装painlessMesh库三、ESP-MESH基本示例&#xff08;广播消息&#xff09;四、示范 功能介绍 了解如何使用ESP-MESH网络协议通过ESP32和ESP8266 NodeMCU板构建网状网络。 ESP-MESH允许多个设备&#xff08;节点&#x…

位运算的高频算法题

关卡名 位运算的高频算法题 我会了✔️ 内容 1.理解位运算如何统计1的个数的 ✔️ 2.理解位运算如何实现加法 ✔️ 3.理解递归乘法是如何实现的 ✔️ 1 位移的妙用 位移操作是一个很重要的问题&#xff0c;可以统计数字中1的个数&#xff0c;在很多高性能软件中也大量应…

群晖NAS配置之自有服务器frp实现内网穿透

什么是frp frp 是一个专注于内网穿透的高性能的反向代理应用&#xff0c;支持 TCP、UDP、HTTP、HTTPS 等多种协议&#xff0c;且支持 P2P 通信。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。今天跟大家分享一下frp实现内网穿透 为什么使用 frp &a…

基于瑞芯微rk3588+寒武纪 | 38TOPS INT8算力的AI边缘计算盒子,智能安防、智慧工地、智慧城管、智慧油站

边缘计算盒子 瑞芯微rk3588寒武纪 | 38TOPS INT8算力 ● 采用 Big-Little 大小核架构&#xff0c;搭载四核 A76四核 A55&#xff0c;CPU主频高达 2.4GHz &#xff0c;提供1MB L2 Cache 和 3MB L3 &#xff0c;Cache提供更强的 CPU 运算能力。 ● 高性能四核 Mali-G610 GPU&a…

【2024秋招】2023-9-22 金山云文档服务端开发一面

1 OS 1.1 堆和栈的区别&#xff0c;什么时候用到堆&#xff0c;什么时候用到栈呢 堆和栈是两种不同的内存分配方式&#xff0c;它们在计算机编程中有着各自的用途和特点。以下是它们之间的主要区别以及在何时使用它们&#xff1a; 1.1.1 堆&#xff08;Heap&#xff09;&…

在vue中如何书写 SSR 友好的代码

文章目录 前言服务端的响应性​组件生命周期钩子​访问平台特有 API​跨请求状态污染​激活不匹配​自定义指令​teleports​后言 前言 hello world欢迎来到前端的新世界 &#x1f61c;当前文章系列专栏&#xff1a;vue.js &#x1f431;‍&#x1f453;博主在前端领域还有很多…

i++和++i的区别

i和i的区别 一、基本概念 两者的作用都是自增加1。 单独拿出来说的话&#xff0c;i和i&#xff0c;效果都是一样的&#xff0c;就是ii1 public static void main(String[] args) {int i 0;i;System.out.println(i);}public static void main(String[] args) {int i 0;i;Sys…