安装ES集群

目录

1.下载elasticsearch

2.解压安装包

3.直接使用es自带的jdk:

4. 创建elasticsearch用户

5.更改elasticsearch文件夹及内部文件的所属用户及组为elsearch:elsearch

6.修改服务器参数

7.修改参数2

8.集群配置:

9.安装分词器:

10.切换用户 elasticsearch

11.单个节点验证:

12.集群验证

遇到的问题:集群节点没有连接

节点重启

es客户端推荐


1.下载elasticsearch

如下:

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.13.2.tar.gz

2.解压安装包

tar -zxvf elasticsearch-7.13.2-linux-x86_64.tar.gz

3.直接使用es自带的jdk:

cd elasticsearch-7.13.2/bin/elasticsearch-env

修改:

old:

# now set the path to java
if [ ! -z "$ES_JAVA_HOME" ]; then
  JAVA="$ES_JAVA_HOME/bin/java"
  JAVA_TYPE="ES_JAVA_HOME"
elif [ ! -z "$JAVA_HOME" ]; then
  # fallback to JAVA_HOME
  echo "warning: usage of JAVA_HOME is deprecated, use ES_JAVA_HOME" >&2
  JAVA="$JAVA_HOME/bin/java"
  JAVA_TYPE="JAVA_HOME"

new:

# now set the path to java
if [ ! -z "$ES_JAVA_HOME" ]; then
  JAVA="$ES_JAVA_HOME/bin/java"
  JAVA_TYPE="ES_JAVA_HOME"
elif [ ! -z "$JAVA_HOME" ]; then
  # fallback to JAVA_HOME
  echo "warning: usage of JAVA_HOME is deprecated, use ES_JAVA_HOME" >&2
 # JAVA="$JAVA_HOME/bin/java"
 # JAVA_TYPE="JAVA_HOME"
   JAVA="$ES_JAVA_HOME/bin/java"
   JAVA_TYPE="ES_JAVA_HOME"
  echo "hello world"

修改部分主要是:


# JAVA="$JAVA_HOME/bin/java"

# JAVA_TYPE="JAVA_HOME"

   JAVA="$ES_JAVA_HOME/bin/java"
   JAVA_TYPE="ES_JAVA_HOME"

这里修改的目的是如果在服务器上面找不到java环境,就使用ES自带的java环境,老版本的es是不自带jdk的,新版是有的,为了防止部署的时候没有提前安装jdk这里直接一劳永逸解决。

4. 创建elasticsearch用户

说明

如果我们当前登录的用户是root用户,然后进入elasticsearch 的 bin目录中执行启命令:./elasticsearch 时会出现错误,

这是出于系统安全考虑设置的条件。由于ElasticSearch可以接收用户输入的脚本并且执行,为了系统安全考虑, 建议创建一个单独的用户用来运行ElasticSearch

创建elasticsearch 用户组及elasticsearch 用户:

groupadd elasticsearch
​
useradd elasticsearch -g elasticsearch -p elasticsearch-7.13.2

5.更改elasticsearch文件夹及内部文件的所属用户及组为elsearch:elsearch

chown -R elasticsearch:elasticsearch elasticsearch-7.13.2

elasticsearch-7.13.2是解压后的elasticsearch的文件夹的名称

6.修改服务器参数

编辑 vim /etc/security/limits.conf,追加以下内容;

*soft nofile 65536
*hard nofile 131072
*soft nproc 2048
*hard nproc 4096

此文件修改后需要重新登录用户,才会生效

7.修改参数2

编辑 vim /etc/sysctl.conf,追加以下内容:  

vm.max_map_count=262144

保存后,执行:

sysctl -p

8.集群配置:

修改 elasticsearch-7.13.2/config/elasticsearch.yml 文件:

主节点所在服务器:74.1.58.216,两个子节点所在服务器分别是:74.1.58.217,74.1.58.218

#主节点:
cluster.name: test-application
node.name: node-1
node.master: true
network.host: 74.1.58.216
http.port: 9200
transport.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
discovery.seed_hosts: ["74.1.58.217","74.1.58.218"]
cluster.initial_master_nodes: ["node-1"]
​
#子节点1:
cluster.name: test-application
node.name: node-2
network.host: 74.1.58.217
http.port: 9200
transport.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
discovery.seed_hosts: ["74.1.58.216","74.1.58.218"]
cluster.initial_master_nodes: ["node-1"]
​
#子节点2:
cluster.name: test-application
node.name: node-3
network.host: 74.1.58.218
http.port: 9200
transport.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
discovery.seed_hosts: ["74.1.58.216","74.1.58.217"]
cluster.initial_master_nodes: ["node-1"]

9.安装分词器:

elasticsearch-7.13.2/bin目录下

./elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.13.2/elasticsearch-analysis-ik-7.13.2.zip

如果服务器报错,显示下载不了那么,就本地安装:

下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases 根据es版本下载对应的分词器版本

然后解压到 elasticsearch-7.13.2/plugins目录下的 analysis-ik文件夹里面,即可,如果es已经启动,记得重启。


10.切换用户 elasticsearch

su elasticsearch

进入elasticsearch-7.13.2/bin 执行

./elasticsearch

(这个是前台启动, crtl+C 结束运行)

后台启动命令为:

./elasticsearch -d

注意: 三个节点需要分别指定第十步!


11.单个节点验证:

在浏览器中输入 ip:端口 74.1.58.216:9200

应该会有显示:

{
  "name" : "node-1",
  "cluster_name" : "test-application",
  "cluster_uuid" : "x1PxZAzWSHmyeY6WqPRzzQ",
  "version" : {
    "number" : "7.13.2",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "4d960a0733be83dd2543ca018aa4ddc42e956800",
    "build_date" : "2021-06-10T21:01:55.251515791Z",
    "build_snapshot" : false,
    "lucene_version" : "8.8.2",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

否则说明节点启动有问题

12.集群验证

查看集群节点连接状态,在任意集群的服务器上面输入:

curl -XGET 'http://74.1.58.216:9200/_cluster/health?pretty'

正常情况下回显示:

[root@216 ~]# curl -XGET 'http://74.1.58.216:9200/_cluster/health?pretty'
{
  "cluster_name" : "test-application",
  "status" : "yellow",
  "timed_out" : false,
  "number_of_nodes" : 3,
  "number_of_data_nodes" : 3,
  "active_primary_shards" : 0,
  "active_shards" : 0,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 100
}
[root@216 ~]#

遇到的问题:集群节点没有连接

集群节点之前没有连接起来,经排查是服务器防火墙没关闭

查看防火墙:

systemctl status firewalld

关闭防火墙:

systemctl stop firewalld

节点重启

然后重启es各个节点,

重启方式:先杀死进程,然后后台启动

查找进程:

ps -ef | grep elsatic

找个按个进程id

kill -9 进程id

然后后台启动:

./elasticsearch -d

es客户端推荐

这里推荐一个es集群查看工具 elasticHD ,感觉搜索不是很对,不过可以凑合用,ElasticHD: ElasticHD 是一款 ElasticSearch的可视化应用。不依赖ES的插件安装,更便捷;导航栏直接填写对应的ES IP和端口就可以操作Es了。,无脑安装即可。

本博客仅做学习只用,如有侵权,联系速删!

参考博客:

elasticsearch7已配置JAVA_HOME的情况下使用自带jdk__荣耀之路_的博客-CSDN博客_elasticsearch7使用自带jdk

elasticsearch7已配置JAVA_HOME的情况下使用自带jdk__荣耀之路_的博客-CSDN博客_elasticsearch7使用自带jdk

启动elasticsearch时报错:找不到本地JDK或者JDK版本不匹配_我是时生的博客-CSDN博客

elasticsearch 单机安装 - 谋知 - 博客园

linux下 ElasticSearch 报错bootstrap checks failed [1]: the default discovery settings are unsuitable fo_LICAZ1122的博客-CSDN博客

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值