下载

https://www.elastic.co/cn/downloads/elasticsearch
下载你需要的版本

准备三台Linux系统

192.168.28.129
192.168.28.130
192.168.29.131

创建es帐号

Elasticsearch不能在 root 用户下启动,我们需要在三台机器上分别创建一个普通用户:

# 创建elastic用户
useradd elastic
# 设置用户密码
passwd elastic
# 切换到elastic用户
su elastic这样创建的用户的目录默认在/home/elastic 下面

关于创建用户的:linux:用户,用户组_zhuchunyan_aijia的博客-CSDN博客Linux/Unix 是多用户多任务操作系统,所有的文件皆有其拥有者(Owner)。利用 chown命令 可以将文件的拥有者加以改变。一般来说,这个命令只能由系统管理者(root)使用,一般用户没有权限来改变别人的文件的拥有者,也没有权限可以将自己的文件的拥有者改设为别人。只有系统管理者(root)才有这样的权限。方法/步骤chown更改文件或目录的所有者 注意:所有者,必须存在...https://blog.csdn.net/zhuchunyan_aijia/article/details/104156407

创建目录

分别在三台机器上的 /home/elastic/ 目录下创建elasticsearch文件夹,然后在elasticsearch文件夹下分别创建data、logs文件夹。 用的elastic登陆创建哟

在生产环境下我们要把Elasticsearch生成的索引文件数据存放到自定义的目录下
data:存储Elasticsearch索引文件数据
logs:存储日志文件

解压缩

随便那一台机器将下载的elasticsearch-7.17.0-linux-x86_64.tar.gz 移动 /home/elastic/下

解压缩:  tar zxvf  elasticsearch-7.17.0-linux-x86_64.tar.gz

修改elasticsearch.yml

vi   config/elasticsearch.yml

cluster.name: my-applicationnode.name: node-1path.data: /home/elastic/elasticsearch/datapath.logs: /home/elastic/elasticsearch/logsnetwork.host: 192.168.28.129http.port: 9200discovery.seed_hosts: ["192.168.28.129", "192.168.28.130", "192.168.28.131"]cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]node.master: true
node.data: false
node.ingest: false
search.remote.connect: false

主要修改如下几处配置:

  1. cluster.name:集群的名称,集群中所有节点的 cluster.name 的值必须要相同。
  2. node.name:集群中每个Elasticsearch的节点名称,不可以重复。
  3. path.data:设置存放Elasticsearch索引文件数据的路径。
  4. path.logs:设置存放日志文件的路径。
  5. network.host:Elasticsearch绑定的IP,外界可以通过这个IP访问到当前Elasticsearch节点,一般配配置当前系统的IP,或者 0.0.0.0 (任何地址都能访问到)。
  6. http.port:当前启动Elasticsearch的端口号,一般默认 9200 即可,当然你也可以修改
  7. discovery.seed_hosts:配置所有Elasticsearch节点绑定的IP地址。
  8. cluster.initial_master_nodes:配置那些节点可以有资格被选为主节点。node.master=true的
  9. xpack.monitoring.collection.enabled:收集监控数据默认为false不收集监控数据。

不过不配置默认是 如下

 node.master: true
node.data: true
node.ingest: false
search.remote.connect: false

参考如下:

https://blog.csdn.net/zhuchunyan_aijia/article/details/128720341

可以配置3个master节点, 其余都是data 节点. 也不需要ingest 和 协调节点

其他2台机器配置

我们已经配置好一台Elasticsearch节点了接下来我们只需要把这台配置好的Elasticsearch复制到另外两台机器中在做一些简单的修改就就可以了。

我们使用 scp 命令复制当前配置好的Elasticsearch到另外两台机器中:

scp -r /home/elastic/elasticsearch/elasticsearch elastic@192.168.28.130:/home/elastic/elasticsearch/scp -r /home/elastic/elasticsearch/elasticsearch
elastic@192.168.28.131:/home/elastic/elasticsearch/

分别在两台机器中修改几处配置:
192.168.28.130 这台机器修改elasticsearch.yml配置文件如下

node.name: node-2
network.host: 192.168.28.130

启动Elasticsearch

从命令行运行Elasticsearch

Elasticsearch可以从命令行启动,如下所示:

./bin/elasticsearch

作为后台启动

要将Elasticsearch作为后台程序运行,请在命令中指定-d,然后使用-p将进程ID记录在文件中:

./bin/elasticsearch -d -p pid

分别在三台机器上启动Elasticsearch,启动过程中建议单个机器启动成功后在启动另一台。

启动一般都会报错处理

bootstrap check failure [1] of [2]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
bootstrap check failure [2] of [2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
ERROR: Elasticsearch did not exit normally - check the logs at /home/elastic/logs/xxxxx

 以下配置需要在root帐号下处理

Linux打开文件数限制:报too many open files_zhuchunyan_aijia的博客-CSDN博客一、说明有的时候程序或者数据运行时会报too many open files,根本原因就是打开的文件超过了系统限制的数量。二、查询1、查询某个进程已经开启的文件句柄lsof -p 进程pid | wc -l查看所有进程各自打开的文件数lsof -n|awk ‘{print $2}’|sort|uniq -c|sort -nr|more2、查看当前操作系统已经打开的文件总量cat /proc/sys/fs/file-nr注:第一个值是已开启的,第二个值是分配但未使用,第三个值是总限制数https://blog.csdn.net/zhuchunyan_aijia/article/details/122636355

修改linux 最大进程数_zhuchunyan_aijia的博客-CSDN博客_linux修改用户最大进程数https://www.cnblogs.com/xinlibao/p/9952461.html一、查看用户打开到最大进程数ulimit -amax user processes (-u) #系统限制某用户下最多可以运行多少进程过线程二、这些值到由来root 账号下 ulimit -u 出现到 max user processes 的值 默认是 # cat /proc...https://blog.csdn.net/zhuchunyan_aijia/article/details/102918001 总结修改如下:

1.  /etc/security/limits.conf

*               soft    nofile           65535
*               hard    nofile           65535
elastic         soft    memlock          unlimited
elastic         hard    memlock          unlimited

2. /etc/security/limits.d/20-nproc.conf

*          soft    nproc     65535
root       soft    nproc     unlimited

3. /etc/sysctl.conf

vm.max_map_count = 655360
vm.swappiness=1
kernel.pid_max = 65535保存后执行:sysctl -p 生效

检查集群

接下来我们来检查一下集群是否已经形成,给三台服务器中的任意一台发送http请求:

http://192.168.28.129:9200/_cat/health?v

cluster:显示的是当前集群的名称
status:显示的是 green 表示当前集群是健康的状态
node.total:显示 3 表示当前集群有三个节点

es系列:es集群部署相关推荐

  1. 1.ElasticSearch系列之集群部署

    第一步:安装JDK JDK要求jdk1.8+,不安装也可以,ES自带JDK 第二步:系统配置 2.1 禁用交换区 sudo swapoff -a 2.2 开最大文件数的限制 编辑文件 /etc/sec ...

  2. Linux服务集群部署实战--MySQL、Redis、ES、RocketMQ、Zookeeper

    部署架构 部署计划 MySQL服务部署 架构 规划 部署pxc集群 部署MySQL主从架构 部署mycat集群 创建表以及测试 部署HAProxy redis集群部署 redis集群采用3主3从的架构 ...

  3. Elasticsearch7.9集群部署,head插件,canal同步mysql数据到es,亲自测试,无坑

    Elasticsearch集群部署 1.服务器规划 10.4.7.11 node1 10.4.7.12 node2 10.4.7.13 node3 1. 集群相关    一个运行中的 Elastics ...

  4. Elasticsearch——Windows下ES集群部署 Linux下ES单节点、集群部署

    1.开篇 在之前的两篇文章中,说白了就是在windows下部署的ES单节点的环境. 这篇文章主要是说一下windows下部署ES集群.Linux下单节点部署. 单台 Elasticsearch 服务器 ...

  5. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录

    0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.感谢 在此感谢.net ...

  6. 架构系列三:使用Keepalived+Nginx+tomcat实现集群部署

    架构系列三:使用Keepalived+Nginx+tomcat实现集群部署 介绍了通过Nginx配置Tomct集群,当其中一个Tomcat服务停止后,Nginx可自动识别并选择另一个服务器响应用户请求 ...

  7. 架构系列二:使用Nginx+tomcat实现集群部署

    架构系列二:使用Nginx+tomcat实现集群部署 一.环境介绍  VM1:Ubuntu-S100 IP:192.168.130.128 部署Tomcat应用及Nginx  VM2:Ubuntu-S ...

  8. Kafka系列(七)、Kafka套件 Confluent Platform 单机/集群部署

    目录 简介 单机部署 集群部署 尾巴 Kafka系列: kafka 2.4.1单机版部署及使用 kafka监控系统kafka eagle安装使用 滴滴开源的kafka-manager编译及部署使用 k ...

  9. 【运维】K8S集群部署系列之ETCD集群搭建(四)

    ETCD集群扩容和缩容 本文将介绍生产环境下如何对ETCD集群进行扩容和缩容. 文章目录 ETCD集群扩容和缩容 新节点环境准备(node3) 下载安装包并初始化环境 网络准备 生成`node3`对等 ...

  10. 数据库系列之SequoiaDB高可用集群部署(二)

    SequoiaDB作为存储引擎,支持高并发的HTAP场景.本位总结运维分析项目中使用SequoiaDB作为数据存储的高可用部署实战,并接入Kafka进行高并发的更新业务和Spark进行高并发的批量查询 ...

最新文章

  1. 实战:一次失败的WEB攻击试验,欢迎高手补充
  2. OpenVINO2021.4+YOLOX目标检测模型部署测试
  3. SAP MM PO中的Delivery Date并非保存在EKPO表里
  4. TLV5618 双路12位DAC 模拟SPI驱动
  5. 本地安装UCSC基因组浏览器
  6. signature=14a3e4f784cf9004647ea52bac22e550,维族老年慢性阻塞性肺疾病患者合并肺动脉高压的临床研究...
  7. java中的静态代码块、构造代码块、构造方法
  8. 3.excel 生成 sql
  9. 在C++上利用onnxruntime (CUDA)和 opencv 部署模型onnx
  10. python函数完整语法和分类
  11. 安卓干货——安卓NFC通信
  12. java8分组lambda_Java 8,Lambda:在分组列表中排序并将所有组合并到列表中
  13. kindle电子书和新闻推送及RSS资源…
  14. 一周电子取证行业热点简讯
  15. html5跳动的心电图,jquery制作心电图跳动特效
  16. 微信公众号开发之使用eclipse创建微信web工程并发布到BAE测试
  17. 【企业级物联网】hj212数据解析模块详解
  18. 基于微信小程序的在线免费小说阅读系统
  19. 《四平青年》是部好电影
  20. 北京邮电大学计算机学院李立,郑霄龙(博导)

热门文章

  1. 真实月活仅3.7万,矿工横行 —— EOS DApp生态爆发背后的隐患
  2. 将字典列表转换为Pandas DataFrame
  3. 分分钟爬取51job
  4. python决策树 多分类_Python中的决策树分类:您需要了解的一切
  5. 一个月SRC挖洞之旅总结
  6. php 证书 paypal,php – SHA-256证书的PayPal更改
  7. 退休后的程序员,不会遇到太多经济困难?
  8. 常用GIS行业技术架构总结-技术运维产品
  9. 3亿颗市场规模逐鹿,国产Zigbee芯片盘点
  10. 朱兰的质量三部曲——《可以量化的管…