elasticsearch 7.8.1集群安装教程

elasticsearch 7.8.1下载

方式一

linux执行以下命令
wget https://repo.huaweicloud.com/java/jdk/8u201-b09/jdk-8u201-linux-x64.tar.gz

方式二

在windows上登录网站下载linux版本,在上传至服务器(相对耗时)
登录网站
https://www.elastic.co/cn/downloads/elasticsearch
点击历史版本
下载截图,找历史版本
知道对应版本,开始下载
找到下载版本,开始下载

linux jdk环境安装

1、执行下载命令
wget https://repo.huaweicloud.com/java/jdk/8u201-b09/jdk-8u201-linux-x64.tar.gz
2、解压
tar -zxvf jdk-8u201-linux-x64.tar.gz
3、改名
mv jdk1.8.0_201 jdk1.8
4、移动至 /usr/local/下
mv jdk1.8 /usr/local/
5、新增java环境变量,编辑 /etc/profile
vim /etc/profile
6、最下方加入
export JAVA_HOME=/usr/local/jdk1.8
export PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH
export CLASSPATH=.: J A V A H O M E / l i b / d t . j a r : JAVA_HOME/lib/dt.jar: JAVAHOME/lib/dt.jar:JAVA_HOME/lib/tools.jar
7、突出保存,立即生效
source /etc/profile
8、查看java环境
java -version
结果如下
jdk环境

安装

  1. linux执行解压命令
    tar -zxvf elasticsearch-7.8.1-linux-x86_64.tar.gz
    解压后生成 elasticsearch-7.8.1 目录
  2. 移动到 /usr/local/下
    mv elasticsearch-7.8.1 /usr/local/
  3. 备份 /usr/local/elasticsearch-7.8.1/config/elasticsearch.yml
    cp elasticsearch.yml elasticsearch.yml.bak
  4. 编辑elasticsearch.yml,新增配置
    vi elasticsearch.yml
    cluster.name: escluster
    node.name: es1
    node.master: true
    node.data: true
    path.data: /usr/local/elasticsearch-7.8.1/data
    path.logs: /usr/local/elasticsearch-7.8.1/logs
    bootstrap.memory_lock: false
    bootstrap.system_call_filter: false
    http.port: 9200
    network.host: 0.0.0.0
    discovery.zen.minimum_master_nodes: 2
    discovery.zen.ping_timeout: 3s
    discovery.zen.ping.unicast.hosts: ["IP1:9300","IP2:9300","IP3:9300"]
    
    http.cors.enabled: true
    http.cors.allow-origin: "*"
    

在这里插入图片描述
退出保存

配置文件重点参数解析
  1. cluster.name
    集群名字,三台集群的集群名字都必须一致
  2. node.name
    节点名字,三台ES节点字都必须不一样
  3. discovery.zen.minimum_master_nodes:2
    表示集群最少的master数,如果集群的最少master数据少于指定的数,将无法启动,官方推荐node master数设置为集群数/2+1,我这里三台ES服务器,配置最少需要两台master,整个集群才可正常运行,
  4. node.master
    该节点是否有资格选举为master,如果上面设了两个mater_node 2,也就是最少两个master节点,则集群中必须有两台es服务器的配置为node.master: true的配置,配置了2个节点的话,如果主服务器宕机,整个集群会不可用,所以三台服务器,需要配置3个node.masdter为true,这样三个master,宕了一个主节点的话,他又会选举新的master,还有两个节点可以用,只要配了node master为true的ES服务器数正在运行的数量不少于master_node的配置数,则整个集群继续可用,我这里则配置三台es node.master都为true,也就是三个master,master服务器主要管理集群状态,负责元数据处理,比如索引增加删除分片分配等,数据存储和查询都不会走主节点,压力较小,jvm内存可分配较低一点
  5. node.data
    存储索引数据,三台都设为true即可
  6. bootstrap.memory_lock: true
    锁住物理内存,不使用swap内存,有swap内存的可以开启此项
  7. discovery.zen.ping_timeout: 3000s
    自动发现拼其他节点超时时间
  8. discovery.zen.ping.unicast.hosts:
    [“ip1:9300”,“iP2:9300”,“ip3:9300”]
    设置集群的初始节点列表,集群互通端口为9300

更多es信息解读参考链接
https://www.cnblogs.com/sunsky303/p/9438737.html

启动

elasticsearch不允许root用户启动,需要新增普通用户es
1、新增用户
groupadd es
useradd es -g es -p es
2、目录更改权限
chown -R es:es /usr/local/elasticsearch-7.8.1 (是这个用户拥有es安装目录的权限)
3、切换 es用户
su - es
4、启动es
./bin/elasticsearch -d
(-d为在后台启动,不加-d时可以看到启动过程,出现started时启动完成)
./elasticsearch -d -Xmx2g -Xms2g #后台启动,启动时指定内存大小(2G)
./elasticsearch -d -Des.logger.level=DEBUG #可以在日志中打印出更加详细的信息。
5、验证es启动情况
jps启动成功
浏览器验证
ip1:9200 访问
es浏览器截图

Head插件安装

  1. 下载插件
    wget https://github.com/mobz/elasticsearch-head/archive/master.zip

  2. yum源方式安装zip解压缩命令
    yum install -y zip unzip

  3. 解压
    unzip master.zip

  4. 移动到 /usr/local/
    mv elasticsearch-head-master /usr/local/

  5. 下载node.js
    wget https://npm.taobao.org/mirrors/node/latest-v4.x/node-v4.4.7-linux-x64.tar.gz

  6. 解压node
    tar -zxvf node-v4.4.7-linux-x64.tar.gz

  7. 移动 /usr/local/
    mv node-v4.4.7-linux-x64 /usr/local/

  8. 编辑环境变量
    vi /etc/profile

    export NODE_HOME=/usr/local/node-v4.4.7-linux-x64
    export PATH=$NODE_HOME/bin:$PATH
    
  9. 立即生效
    source /etc/profile

  10. 验证node环境
    node -v
    命令结果

  11. 安装grunt
    ##进入到插件目录下面
    cd /opt/elasticsearch-6.5.4/es-head/elasticsearch-head-master
    ##下载安装grunt
    npm install -g grunt-cli
    ##检测是否安装成功,如果执行命令后出现版本号就表明成功
    grunt -version
    grunt验证结果

  12. 修改插件源码配置
    vi /usr/local/elasticsearch-head-master/Gruntfile.js
    新增
    port: 9100,
    hostname: ‘*’,
    配置

  13. 修改head的连接地址:
    vi /usr/local/elasticsearch-head-master/_site/app.js

    this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://localhost:9200";
    把localhost修改成你es的服务器地址,如:
    this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://ip1:9200";
    
  14. 安装
    npm install
    grunt server
    nohup grunt server & 后台运行
    nohup npm run start & 窗口退出后仍可后台运行

  15. 浏览器中访问ip:9100查看es的结构
    es浏览器图片

修改系统参数

vi /etc/sysctl.conf
fs.file-max=655360
vm.max_map_count=655360
sysctl -p

vim /etc/security/limits.conf
## 65535修改为65536
* soft nofile 65536
* hard nofile 65536

## 文件末尾追加
* soft nproc 4096
* hard nproc 4096
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值