单点安装

  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. 带大小写忽略的Replace

    #region 以下函数用于忽略大小写替换操作 public static string Replace(string Expression, string Find, string Replacem ...

  2. CTFShow 反序列化 Web 255-266

    CTFShow 反序列化 255-266 漏洞原理 未队用户输入的序列化字符串进行检测,导致攻击者可以控制反序列化过程,从而导致代码执行,SQL注入,目录遍历等后果. 触发条件 unserialize ...

  3. 文心一言 VS chatgpt (13)-- 算法导论3.1 8题 3.2 1题

    八.可以扩展我们的记号到有两个参数n和m的情形,其中的n和m可以按不同速率独立地趋于无穷.对于给定的函数g(n, m),用O(g(n, m))来表示以下函数集: O(g(n, m)) = 对Ω(g(n ...

  4. 2022-09-29:在第 1 天,有一个人发现了一个秘密。 给你一个整数 delay ,表示每个人会在发现秘密后的 delay 天之后, 每天 给一个新的人 分享 秘密。 同时给你一个整数 forg

    2022-09-29:在第 1 天,有一个人发现了一个秘密. 给你一个整数 delay ,表示每个人会在发现秘密后的 delay 天之后, 每天 给一个新的人 分享 秘密. 同时给你一个整数 forg ...

  5. 2021-08-22:定义什么是可整合数组:一个数组排完序之后,除了最左侧的数外,有arr[i] = arr[i-1]+1,则称这个数组为可整合数组,比如{5,1,2,4,3}、{6,2,3,1,5,

    2021-08-22:定义什么是可整合数组:一个数组排完序之后,除了最左侧的数外,有arr[i] = arr[i-1]+1,则称这个数组为可整合数组,比如{5,1,2,4,3}.{6,2,3,1,5, ...

  6. 自动化测试-基础知识—Bash基础

    Bash 在 Bash 中,美元符号 $ 可以用于引用变量或者表达式的值.Bash 中的变量并不需要事先声明,而是在第一次赋值时自动创建.基于这个特性,我们可以通过给变量名加上 $ 的方式来引用它的值 ...

  7. GTX.Zip:一款可以替代 gzip 的基因大数据压缩软件

    今天给大家推荐一款基因大数据压缩的大杀器:GTX.Zip. GTX.Zip 这款软件是由曾在 2016 年 GCTA 风云挑战赛中的那匹黑马--人和未来生物科技有限公司开发的,而当时他们也是打破了基因 ...

  8. 24 式加速你的 Python

    一,分析代码运行时间 第1式,测算代码运行时间 平凡方法 快捷方法(jupyter环境) 第2式,测算代码多次运行平均时间 平凡方法 快捷方法(jupyter环境) 第3式,按调用函数分析代码运行时间 ...

  9. 为什么 Biopython 的在线 BLAST 这么慢?

    用过网页版本 BLAST 的童鞋都会发现,提交的序列比对往往在几分钟,甚至几十秒就可以得到比对的结果:而通过调用 API 却要花费几十分钟或者更长的时间!这到底是为什么呢? NCBIWWW 基本用法 ...

  10. FTL没有映射管理,跟上班没有钱有什么区别

    大家好,我是五月. 前言 FTL(Flash Translation Layer),即闪存转换层,是各种存储设备的核心算法,作用是将Host传下来的逻辑地址转换成物理地址,也就是映射. 可以说,地址映 ...