单点安装

  1. 进入安装目录:cd /usr/local
  2. 获取安装包:
    1. wget http://172.29.50.31/download/ProgramPackage/elasticsearch/elasticsearch-7.6.2-linux-x86_64.tar.gz
    2. wget http://172.29.50.31/download/ProgramPackage/elasticsearch/elasticsearch-analysis-ik-7.6.2.zip
  3. 解压安装包:tar -zxvf elasticsearch-7.6.2-linux-x86_64.tar.gz
  4. 重命名:mv elasticsearch-7.6.2/ elasticsearch
  5. 安装ik插件
    1. unzip elasticsearch-analysis-ik-7.6.2.zip
    2. 将解压文件拷贝至elasticsearch的plugins文件下:cp -r elasticsearch-analysis-ik-7.6.2 /usr/local/elasticsearch/plugins
  6. 修改配置文件:cd elasticsearch/config/

进入到es安装目录下的config文件夹中,修改elasticsearch.yml 文件,配置示例如下:

cluster.name: robot-elastic
node.name: node-1
path.data: /home/data/elasticsearch
path.logs: /home/logs/elasticsearch
bootstrap.system_call_filter: false
network.host: 0.0.0.0
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: "*"
cluster.initial_master_nodes: ["node-1"]

按esc输入 :wq 保存并退出

  1. 补齐目录

    1. mkdir -p /home/data/elasticsearch
    2. mkdir -p /home/logs/elasticsearch
  2. 因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户

    1. useradd dicfin
    2. passwd dicfin
  3. 为用户赋权限

chown -R dicfin:dicfin /usr/local/elasticsearch
chown -R dicfin:dicfin /home/data/elasticsearch
chown -R dicfin:dicfin /home/logs/elasticsearch
  1. 修改系统参数:vim /etc/security/limits.conf ,最后追加
* soft nproc 20480
* hard nproc 20480
* soft nofile 65536
* hard nofile 65536
* soft memlock unlimited
* hard memlock unlimited
  • vim /etc/security/limits.d/20-nproc.conf 修改以下
*     soft  nproc   20480
  • vim /etc/sysctl.conf 修改以下,若无则新增
fs.file-max = 655360
vm.max_map_count = 262144
  • sysctl -p 生效
  1. 切换用户启动ES (验证是否初步安装成功)

    1. cd
    2. su dicfin
    3. cd /usr/local/elasticsearch
    4. bin/elasticsearch &

集群安装

es版本:v7.12.0-x86_64

在三个节点部署es集群:(需要提前安装jdk,本文使用的版本为jdk-8u-251,即jdk1.8)

  • 172.50.13.103
  • 172.50.13.104
  • 172.50.13.105

1. 准备

  1. 获取安装包:elasticsearch-7.12.0-linux-x86_64.tar.gz
  2. 解压:tar xf elasticsearch-7.12.0-linux-x86_64.tar.gz
  3. 创建安装目录:mkdir -p /home/{web,data,logs}/elasticsearch
  4. 转移压缩包内容:mv ./elasticsearch-7.12.0/* /home/web/elasticsearch/
  5. 删除es安装包
  6. 创建es用户:
    1. useradd -M elasticsearch
    2. passwd elasticsearch
  7. 授权:
chown -R elasticsearch:elasticsearch /home/web/elasticsearch
chown -R elasticsearch:elasticsearch /home/data/elasticsearch
chown -R elasticsearch:elasticsearch /home/logs/elasticsearch

2. 修改系统参数

/etc/sysctl.conf

fs.file-max = 655360
vm.max_map_count = 262144

执行sysctl -p生效

/etc/security/limits.conf

* soft nproc 20480
* hard nproc 20480
* soft nofile 65536
* hard nofile 65536
* soft memlock unlimited
* hard memlock unlimited

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

修改内容如下:

*     soft  nproc   20480

3. 修改es配置文件

config/jvm.options

-Xms1g
-Xmx1g

以实际情况为准,一般设置为内存的一半最佳。

config/elasticsearch.yml

  • 172.50.13.103
cluster.name: esbigdata
node.name: server1
node.master: true
node.data: true
path.data: /home/data/elasticsearch
path.logs: /home/logs/elasticsearch
bootstrap.memory_lock: true
bootstrap.system_call_filter: true
network.host: 0.0.0.0
http.port: 9200
transport.port: 9300
discovery.seed_hosts: ["172.50.13.103:9300","172.50.13.105:9300"]
cluster.initial_master_nodes: ["server1","server3"]
  • 172.50.13.104
cluster.name: esbigdata
node.name: server2
node.master: true
node.data: true
path.data: /home/data/elasticsearch
path.logs: /home/logs/elasticsearch
bootstrap.memory_lock: true
bootstrap.system_call_filter: true
network.host: 0.0.0.0
http.port: 9200
transport.port: 9300
discovery.seed_hosts: ["172.50.13.103:9300","172.50.13.105:9300"]
cluster.initial_master_nodes: ["server1","server3"]
  • 172.50.13.105
cluster.name: esbigdata
node.name: server3
node.master: true
node.data: true
path.data: /home/data/elasticsearch
path.logs: /home/logs/elasticsearch
bootstrap.memory_lock: true
bootstrap.system_call_filter: true
network.host: 0.0.0.0
http.port: 9200
transport.port: 9300
discovery.seed_hosts: ["172.50.13.103:9300","172.50.13.105:9300"]
cluster.initial_master_nodes: ["server1","server3"]

参数说明:

  • cluster.name:集群名称
  • node.name:节点名
  • node.master:该节点是否有资格被选举为主节点,默认为true
  • node.data:该节点是否存储索引数据,默认为true。如果master和data都为false,则该节点为客户端,负责将集群中的请求转发到主节点
  • path.data:数据存储路径
  • path.logs:日志存储路径
  • bootstrap.memory_lock:锁定只使用物理内存,不使用swap虚拟内存
  • bootstrap.system_call_filter:检测SecComp
  • network.host:若安全起见,可以设置为本机IP
  • http.port:http请求的端口,默认9200
  • transport.port:集群之间通信端口
  • discovery.seed_hosts,用于发现集群节点的主机IP和端口,一般是master节点
  • cluster.initial_master_nodes:初始化⼀个新的集群时需要此配置来选举master

4. 启动

  1. 切换用户:su elasticsearch
  2. 启动:/home/web/elasticsearch/bin/elasticsearch -d
  3. 验证:curl http://172.50.13.103:9300,出现以下内容则集群搭建成功。(如果cluster_uuid为 _na_,则搭建失败)
{
"name" : "server1",
"cluster_name" : "esbigdata",
"cluster_uuid" : "UzHTBNaWSxiyOIJWAUP7Vg",
"version" : {
"number" : "7.12.0",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "78722783c38caa25a70982b5b042074cde5d3b3a",
"build_date" : "2021-03-18T06:17:15.410153305Z",
"build_snapshot" : false,
"lucene_version" : "8.8.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}

[elasticsearch]部署安装单节点和集群的更多相关文章

  1. 使用Minikube运行一个本地单节点Kubernetes集群(阿里云)

    使用Minikube运行一个本地单节点Kubernetes集群中使用谷歌官方镜像由于某些原因导致镜像拉取失败以及很多人并没有代理无法开展相关实验. 因此本文使用阿里云提供的修改版Minikube创建一 ...

  2. K8s二进制部署单节点 etcd集群,flannel网络配置 ——锥刺股

    K8s 二进制部署单节点 master    --锥刺股 k8s集群搭建: etcd集群 flannel网络插件 搭建master组件 搭建node组件 1.部署etcd集群 2.Flannel 网络 ...

  3. ActiveMQ的单节点和集群部署

    平安寿险消息队列用的是ActiveMQ. 单节点部署: 下载解压后,直接cd到bin目录,用activemq start命令就可启动activemq服务端了. ActiveMQ默认采用61616端口提 ...

  4. Kafka单节点及集群配置安装

    一.单节点 1.上传Kafka安装包到Linux系统[当前为Centos7]. 2.解压,配置conf/server.property. 2.1配置broker.id 2.2配置log.dirs 2. ...

  5. 使用Minikube运行一个本地单节点Kubernetes集群

    使用Minikube是运行Kubernetes集群最简单.最快捷的途径,Minikube是一个构建单节点集群的工具,对于测试Kubernetes和本地开发应用都非常有用. ⒈安装Minikube Mi ...

  6. 使用Rancher Server部署本地多节点K8S集群

    当我第一次开始我的Kubernetes之旅时,我一直在寻找一种设置本地部署环境的方式.很多人常常会使用minikube或microk8s,这两者非常适合新手在单节点集群环境下进行操作.但当我已经了解了 ...

  7. RabbitMq安装(单点与集群)rabbitMq以及状态查询

    集群进入某个节点查看指令:rabbitmqctl cluster_status单机版:docker run -d --name rabbit \-e RABBITMQ_DEFAULT_USER=adm ...

  8. Cloudera Manager安装之利用parcels方式安装单节点集群(包含最新稳定版本或指定版本的安装)(添加服务)(CentOS6.5)(四)

    不多说,直接上干货! 福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号:   大数据躺过的坑      Java从入门到架构师      人工智能躺过的坑          ...

  9. 记录一个奇葩的问题:k8s集群中master节点上部署一个单节点的nacos,导致master节点状态不在线

    情况详细描述; k8s集群,一台master,两台worker 在master节点上部署一个单节点的nacos,导致master节点状态不在线(不论是否修改nacos的默认端口号都会导致master节 ...

  10. kubeadm安装单master单node节点k8s集群

    操作系统:centos7.6 podSubnet(pod 网段) 10.244.0.0/16 serviceSubnet(service 网段): 10.10.0.0/16 集群角色 IP 主机名 安 ...

随机推荐

  1. C#自行实现安装卸载程序(不使用官方组件)

    正规软件建议还是使用官方的标准安装程序组件,因为官方的标准安装/卸载组件能更好的与操作系统衔接,安装和卸载流程更加规范. 今天提供一种野路子,全用代码实现安装卸载器. 需要写一个程序,包含安装器.卸载 ...

  2. Web进阶LNMP网站部署

    Web进阶LNMP网站部署 目录 Web进阶LNMP网站部署 LNMP架构工作流程 部署LNMP架构 1.安装nginx 2.安装php 3.安装数据库 将Nginx和PHP建立连接 1.修改ngin ...

  3. pytest插件开发

    插件的加载方式 外部插件: pip install 安装的插件 本地插件: pytest 自动模块发现机制(conftest.py存放) 内置插件: 代码内部的_pytest目录加载 什么是hook ...

  4. 2020-01-20:mysql中,一张表里有3亿数据,未分表,要求是在这个大表里添加一列数据。数据库不能停,并且还有增删改操作。请问如何操作?

    2020-01-20:mysql中,一张表里有3亿数据,未分表,要求是在这个大表里添加一列数据.数据库不能停,并且还有增删改操作.请问如何操作?福哥答案2020-01-20: 陌陌答案:用pt_onl ...

  5. Spring源码:Bean生命周期(终章)

    前言 本系列前面讲解了Spring的bean定义.bean实例化.bean初始化等生命周期.这些步骤使我们能够了解bean从创建到准备好使用所经历的过程.但是,除了这些步骤,bean的销毁也是非常重要 ...

  6. 03、SECS-I 协议介绍

    03.SECS-I 协议介绍 上一篇我们学习了 SECS-II 协议,对 SECS-II 协议有了初略的了解,现在我们再来一起学习 SECS-I 协议. 文章的内容基本上来自参考资料和自己看的文档,若 ...

  7. openlayers获取绘制多边形的顶点坐标

    虽使用Interaction无数次,进行图形绘制与用户交互等,但当需要获取绘制图形的顶点坐标时还是不晓得咋弄? 都知道在绘制完成后回调中能获取到当前的event对象draw.on('drawend', ...

  8. 【LeetCode双向链表】LRU详解,双向链表实战

    LRU缓存 请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构. 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity ...

  9. .net开发者应掌握的利器CommunityToolkit.HighPerformance——MemoryOwner与SpanOwner

    MemoryOwner和SpanOwner都可以理解为是对ArrayPool<>的一个包装,无非一个是在堆栈上,一个是在托管堆上.既然做了包装,那肯定随之而来就是改进和优化. 目录 Mem ...

  10. 【TVM模型编译】1. onnx2relay.md

    上一篇介绍了onnx模型在tvm中优化的总体流程. 在这一篇中,介绍onnx模型到relay模型的转换流程,主要涉及了以下几个方面: onnx算子到relay算子转换 relay算子实现 这一篇介绍o ...