01_Elasticsearch 7.4 的安装

1 Elasticsearch 7.4 单机版的安装

1.1 首先访问 Elasticsearch 的官网


网址为:https://www.elastic.co/cn/downloads/elasticsearch

image.png

官网上的最新版本已经到了 7.9.3,但是我们选择的版本为 7.4.2,点击下图所示的区域,选择 past releases

image.png

选择 7.4.2 的版本,进行下载]

image.png

下载 Linux 版本的 Elasticsearch

image.png

1.2 安装 Elasticsearch 单机

1.2.1 首先上传安装包文件到服务器,比如上传到目录 software 下面


image.png

1.2.2 在根目录下新建 /elk/es_single 文件夹,用于安装 elasticsearch


image.png

1.2.3 解压安装包到该目录下


解压命令:tar -zxvf elasticsearch-7.4.2-linux-x86_64.tar.gz -C /elk/es_single

image.png

1.2.4 切换到 Elasticsearch 的安装目录下,配置环境


切换命令:cd /elk/es_single/elasticsearch-7.4.2/
查看该目录下的文件和路径,查看命令:ll -h

image.png

需要配置的文件应该集中在 bin 目录和 config 目录下

1.2.4 可以通过不断试错的方式来调整配置 Elasticsearch 的配置

1.2.4.1 首先启动 Elasticsearch,观察报错情况


启动命令:bin/elasticsearch

image.png

报错原因:Elasticsearch 所需的 jdk 版本为 11,但是本机的 jdk 版本为 8
解决办法:Elasticsearch 自带 jdk 11 的版本,需要将其路径复制到 bin 目录下的 配置文件 elasticsearch-env


首先切换到 jdk 11 所在的路径,然后 pwd 打印其路径并选中复制

image.png

然后在配置文件 elasticsearch-env 中添加 jdk 的路径,JAVA_HOME="/elk/es_single/elasticsearch-7.4.2/jdk"
修改文件的命令:vim bin/elasticsearch-env

image.png

1.2.4.2 再次启动 Elasticsearch,观察报错情况


image.png

报错原因:处于安全的考虑,不允许以 root 的身份启动
解决方案:添加非 root 用户,然后切换身份重新启动
创建 support 用户组和 support 用户,并将其添加到用户组 support 中

groupadd support
useradd support -g support

image.png

更改 es_single 文件夹及内部文件的所属用户及组为 support: support

chown -Rf support:support /elk/es_single/
chown [选项]... [所有者][:[组]] 文件...
必要参数:
    -c 显示更改的部分的信息
    -f 忽略错误信息
    -h 修复符号链接
    -R 处理指定目录以及其子目录下的所有文件
    -v 显示详细的处理信息
    -deference 作用于符号链接的指向,而不是链接文件本身

image.png

1.2.4.3 切换到 support 用户,再次启动 Elasticsearch,观察报错情况


su support
bin/elasticsearch

image.png

报错原因:因为刚刚使用 root 用户的身份启动过,所以现在默认以 root 身份启动
解决方案:删除 log 和 data 目录中的所有文件和文件夹,然后重新启动
image.png

报错原因:因为 Centos 6 不支持 SecComp,而 Elasticsearch 默认 bootstrap.system_call_filter 为 true 进行检测,所以导致检测失败,失败后直接导致 Elasticsearch 不能启动解决
解决方案:在 config 目录中的 elasticsearch.yml 添加一下内容

bootstrap.memory_lock: false
bootstrap.system_call_filter: false

image.png

1.2.4.4 再次启动 Elasticsearch,观察报错情况


image.png

这个版本的GC好像被移除了,所以需要更改配置,推荐使用:
-XX:+UseG1GC
在 elasticsearch-7.4.2/config/jvm.options 文件中添加
-XX:+UseG1GC
然后注释掉:-XX:+UseConcMarkSweepGC

vim config/jvm.options

image.png

1.2.4.5 再次启动 Elasticsearch,观察报错情况


image.png

这些警告信息必须解决,不然后续会报错无法启动

首先修改配置文件:vim /etc/security/limits.conf,在该文件末尾>添加以下内容:

  •           soft            nofile          65535
    
  •           hard            nofile          65535
    
  •           soft            nproc           4096
    
  •           hard            nproc           4096
    
image.png

然后设置最大内存:vim /etc/sysctl.conf

image.png

然后进行刷新操作,必须进行刷新操作
刷新的命令:sysctl -p

image.png

1.2.4.5 再次启动 Elasticsearch,观察报错情况


image.png

第一个警告的原因是因为“用户线程数量太少”
解决方案:vim /etc/security/limits.d/90-nproc.conf
在该文件中修改:soft nproc 1024 为 4096

image.png

然后刷新 sysctl -p

1.2.4.6 最后修改 config/elasticsearch.yml 文件,进行环境的配置


需要修改的地方:
集群名称:cluster.name: my_elasticsearch
节点名称:node.name: node-1
开启可以访问的节点:network.host: 0.0.0.0 (设置所有节点都可以访问)
服务端口:http.port: 9200

最后再添加以下内容:
http.cors.enabled: true (是否开启跨域访问)
http.cors.allow-origin: "*" (开启跨域访问后的地址限制,*表示无限制)
discovery.seed_hosts: ["192.168.124.34"]
cluster.initial_master_nodes: ["node-1"]
discovery.zen.ping_timeout: 60s

1.2.4.7 最后保存,重新启动

发现没有报错,去浏览器中验证是否是否安装成功
在浏览器中键入:192.168.124.34:9200

image.png

2 Elasticsearch 7.4 完全分布式的安装

  1. 因为 elasticsearch 是比较消耗资源的,如果在单机上搭建伪分布式集群,可能会导致内存溢出的问题,因此这里搭建的是完全分布式集群。
  2. 注意不要使用刚刚搭建好的 elasticsearch 单机来搭建集群,因为刚刚启动过的单机已经存在历史记录,如果使用其来搭建集群会导致失败。
  3. 搭建 Elasticsearch 集群需要在多台节点上进行配置,每台节点上的配置和单机的配置基本无异。

2.1 首先准备 3 台节点,分别在每台节点上创建新的用户和用户组


注意:这里选用的节点名称分别是:node001, node002, node003

分别在 node001, node002, node003 上创建用户和用户组
groupadd support
useradd support -g support

image.png

如何查看用户和用户组呢?
查看用户:cat /etc/passwd
查看用户组:cat /etc/group

image.png

image.png

image.png

如何完全删除用户和用户组呢?
第一种方法:使用 userdel -r 用户名 命令删除。
第二种方法:先使用 [userdel 用户名] 删除账户和组的信息,再使用 [find / -name "用户名"] 查找所有于该用户的相关文件,在使用 rm -rf 删除

image.png
image.png

2.2 分别在 3 台节点上创建 elasticsearch 的安装目录并准备安装包,然后解压安装包到该目录下

创建多级目录
mkdir -p /elk/es_cluster

image.png

tar -zxvf elasticsearch-7.4.2-linux-x86_64.tar.gz -C /elk/es_cluster/

image.png

接着需要将安装目录的权限赋给刚刚创建的用户和用户组

chown -Rf support:support /elk

image.png

然后切换身份,进入 Elasticsearch 的安装目录进行配置

su support
cd /elk/es_cluster/elasticsearch-7.4.2/

image.png

注意:这里不能进行试错安装,一旦启动就成了单机版,因此需要配置完所有信息之后才能启动,这里以 node001 为例,其余两台节点的配置类似

2.3 配置节点

2.3.1 配置 jdk 的路径

首先切换到 jdk 11 所在的路径,然后 pwd 打印其路径并选中复制

image.png

然后在配置文件 elasticsearch-env 中添加 jdk 的路径,JAVA_HOME="/elk/es_single/elasticsearch-7.4.2/jdk"
修改文件的命令:vim bin/elasticsearch-env

image.png

2.3.2 如果是CentOS 6 的系统,需要在在 config 目录中的 elasticsearch.yml 添加以下内容

bootstrap.memory_lock: false
bootstrap.system_call_filter: false

image.png

2.3.3 修改 GC

在 elasticsearch-7.4.2/config/jvm.options 文件中添加
-XX:+UseG1GC
然后注释掉:-XX:+UseConcMarkSweepGC

image.png

2.3.4 修改配置文件,vim /etc/security/limits.conf,在该文件末尾>添加以下内容

soft nofile 65535
hard nofile 65535
soft nproc 4096
hard nproc 4096

image.png

2.3.5 修改配置文件,/etc/sysctl.conf,设置最大内存为 262144


image.png

然后进行刷新操作,必须进行刷新操作,刷新的命令:sysctl -p

2.3.6 修改线程数为 4096

vim /etc/security/limits.d/90-nproc.conf

image.png

[然后刷新 sysctl -p]

2.4 最后修改 config/elasticsearch.yml 文件,进行环境的配置

node001 节点上的配置
需要修改的地方:
集群名称:cluster.name: my_elasticsearch
节点名称:node.name: node-1
开启可以访问的节点:network.host: 0.0.0.0 (设置所有节点都可以访问)
服务端口:http.port: 9200
最后再添加以下内容:
http.cors.enabled: true (是否开启跨域访问)
http.cors.allow-origin: "*" (开启跨域访问后的地址限制,*表示无限制)
discovery.seed_hosts: ["192.168.124.31", "192.168.124.32", "192.168.124.33"]
cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]
discovery.zen.ping_timeout: 60s

node002 节点上的配置
需要修改的地方:
集群名称:cluster.name: my_elasticsearch
节点名称:node.name: node-2
开启可以访问的节点:network.host: 0.0.0.0 (设置所有节点都可以访问)
服务端口:http.port: 9200
最后再添加以下内容:
http.cors.enabled: true (是否开启跨域访问)
http.cors.allow-origin: "" (开启跨域访问后的地址限制,表示无限制)
discovery.seed_hosts: ["192.168.124.31", "192.168.124.32", "192.168.124.33"]
cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]
discovery.zen.ping_timeout: 60s

node003 节点上的配置
需要修改的地方:
集群名称:cluster.name: my_elasticsearch
节点名称:node.name: node-3
开启可以访问的节点:network.host: 0.0.0.0 (设置所有节点都可以访问)
服务端口:http.port: 9200
最后再添加以下内容:
http.cors.enabled: true (是否开启跨域访问)
http.cors.allow-origin: "" (开启跨域访问后的地址限制,表示无限制)
discovery.seed_hosts: ["192.168.124.31", "192.168.124.32", "192.168.124.33"]
cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]
discovery.zen.ping_timeout: 60s

2.5 最后保存启动

发现没有报错,去浏览器中验证是否是否安装成功
在浏览器中键入:192.168.124.31:9200

image.png

在 head 插件中进行访问


image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,612评论 5 471
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,345评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,625评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,022评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,974评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,227评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,688评论 3 392
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,358评论 0 255
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,490评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,402评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,446评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,126评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,721评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,802评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,013评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,504评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,080评论 2 341

推荐阅读更多精彩内容