众客华禹

 找回密码
立即注册

QQ登录

只需一步,快速开始

查看: 432|回复: 0

Centos7部署Elasticsearch7.8.0

[复制链接]

70

主题

70

帖子

378

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
378
发表于 2022-1-24 16:51:02 | 显示全部楼层 |阅读模式
一、安装准备
1、elasticsearch简介
      ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文检索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
2、搭建环境
es最新软件软件包可在官方网站下载:https://www.elastic.co/downloads/elasticsearch
    1)JDK11环境
    2)CentOS7 IP地址:192.168.112.139
    3)elasticsearch7.8.0
3、准备环境
  1. 关闭防火墙
  2. systemctl stop firewalld
  3. systemctl disable firewalld
复制代码
二、安装部署(单节点)
1、安装jdk
  1. [root@prometheus opt]# rpm -ivh jdk-11.0.12_linux-x64_bin.rpm
复制代码
2、查看版本
  1. [root@prometheus opt]# java -version
  2. java version "11.0.12" 2021-07-20 LTS
  3. Java(TM) SE Runtime Environment 18.9 (build 11.0.12+8-LTS-237)
  4. Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.12+8-LTS-237, mixed mode)
复制代码
3、部署elasticsearch7.8.0
首先在官网当中下载es的软件包,本文采用rpm包安装方式。
注意:在es5.0版本后不支持与logstash和kibana2.x版本的混用,且安全级别的提升,使得es在后续的版本中不允许使用root用户启动,因此我们需要创建另外独立账户专供es使用。并且需要在root权限下将该特定环境准备好。
  1. [root@prometheus opt]# rpm -ivh elasticsearch-7.8.0-x86_64.rpm
  2. [root@client1 opt]# mkdir /data/elasticsearch/{data,logs} -p
  3. [root@client1 opt]# chown -R elasticsearch:elasticsearch /data/elasticsearch/
复制代码
4、修改配置文件(单机版)
  1. vim /etc/elasticsearch/elasticsearch.yml
  2. #设置集群名字
  3. cluster.name: my-cluster
  4. #设置节点名字
  5. node.name: prometheus
  6. #向节点添加自定义属性
  7. node.attr.rack: r1
  8. #设置数据存放路径
  9. path.data: /data/elasticsearch/data
  10. #设置logs存放路径
  11. path.logs: /data/elasticsearch/logs
  12. #设置允许其他主机连接得IP
  13. network.host: 192.168.112.139
  14. #设置服务监听端口号
  15. http.port: 9200
  16. transport.tcp.port: 9300
  17. cluster.initial_master_nodes: 192.168.112.139
复制代码
5、安装分词器
  1. [root@prometheus opt]# yum install -y unzip
  2. [root@prometheus opt]# mkdir /usr/share/elasticsearch/plugins/ik
  3. [root@prometheus opt]# unzip -d /usr/share/elasticsearch/plugins/ik elasticsearch-analysis-ik-7.8.0.zip
  4. [root@prometheus opt]# chown -R elasticsearch:elasticsearch /usr/share/elasticsearch/plugins/ik/
复制代码
6、启动elasticsearch
  1. systemctl start elasticsearch
  2. systemctl enable elasticsearch
复制代码
三、可视化查看
1、推荐一款很棒的UI查询elasticsearch的插件
它是Edge 浏览器的一个插件,功能很强大,可以查询,删除,备份,快照,导出数据等。
安装方式很简单:Edge 浏览器输入:https://microsoftedge.microsoft.com/addons/search/idm
搜索:elasticsearch
安装Elasticvue
es插件.png

插件效果展示
效果展示.png
四、优化参数
1、修改默认的堆内存参数
  1. vim /etc/elasticsearch/jvm.options
  2. -Xms1g
  3. -Xmx1g
  4. 根据主机配置,业务需求来修改
  5. -Xms5g
  6. -Xmx5g
复制代码
五、安装部署集群
1、准备环境
  1. elasticsearch集群至少需要三个节点
  2. 192.168.112.138
  3. 192.168.112.139
  4. 192.168.112.141
  5. 做好hosts解析
  6. vim /etc/hosts
  7. 192.168.112.138    client1
  8. 192.168.112.139    client2
  9. 192.168.112.141    client3
  10. 关闭防火墙
  11. systemctl stop firewalld
  12. systemctl disable firewalld
复制代码
2、安装jdk
  1. [root@client1 opt]# rpm -ivh jdk-11.0.12_linux-x64_bin.rpm
复制代码
3、查看版本
  1. [root@client1 opt]# java -version
  2. java version "11.0.12" 2021-07-20 LTS
  3. Java(TM) SE Runtime Environment 18.9 (build 11.0.12+8-LTS-237)
  4. Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.12+8-LTS-237, mixed mode)
复制代码
4、部署elasticsearch7.8.0
首先在官网当中下载es的软件包,本文采用rpm包安装方式。
注意:在es5.0版本后不支持与logstash和kibana2.x版本的混用,且安全级别的提升,使得es在后续的版本中不允许使用root用户启动,因此我们需要创建另外独立账户专供es使用。并且需要在root权限下将该特定环境准备好。
  1. [root@client1 opt]# rpm -ivh elasticsearch-7.8.0-x86_64.rpm
  2. [root@client1 opt]# mkdir /data/elasticsearch/{data,logs} -p
  3. [root@client1 opt]# chown -R elasticsearch:elasticsearch /data/elasticsearch/
复制代码
5、修改配置文件(集群版)
  1. vim /etc/elasticsearch/elasticsearch.yml
  2. # ----------------------------------- Paths --------------------------------
  3. path.data: /data/elasticsearch/data
  4. path.logs: /data/elasticsearch/logs
  5. path.repo: /data/elasticsearch/kuaizhao
  6. # ---------------------------------- Cluster -------------------------------
  7. cluster.name: esxi-cluster
  8. # ------------------------------------ Node ------------------------------
  9. node.name: client1                            #根据各节点主机名更改
  10. node.attr.rack: r1
  11. # ---------------------------------- Network -----------------------------
  12. network.host: 192.168.112.138                 #根据各节点ip地址更改
  13. http.port: 9200
  14. transport.tcp.port: 9300
  15. #discovery.zen.ping.unicast.hosts: [{"192.168.112.138","192.168.112.139","192.168.112.141"}]
  16. discovery.seed_hosts: ["192.168.112.138", "192.168.112.139","192.168.112.141"]
  17. cluster.initial_master_nodes: ["192.168.112.138", "192.168.112.139","192.168.112.141"]

  18. discovery.zen.minimum_master_nodes: 2
  19. transport.tcp.compress: true            #设置是否压缩tcp传输时的数据,默认为false,不压缩。
  20. node.data: true                         #指定该节点是否存储索引数据,默认为true。
  21. node.master: true                       #指定该节点是否有资格被选举成为node(注意这里只是设置成有资格, 不代表该node一定就是master)>,默认是true。
  22. discovery.zen.ping_timeout: 6s          #es选举master的超时时间
复制代码
6、安装分词器
  1. [root@client1 opt]# yum install -y unzip
  2. [root@client1 opt]# mkdir /usr/share/elasticsearch/plugins/ik
  3. [root@client1 opt]# unzip -d /usr/share/elasticsearch/plugins/ik elasticsearch-analysis-ik-7.8.0.zip
  4. [root@client1 opt]# chown -R elasticsearch:elasticsearch /usr/share/elasticsearch/plugins/ik/
复制代码
7、启动elasticsearch
  1. systemctl start elasticsearch
  2. systemctl enable elasticsearch
复制代码
8、检查集群状态
  1. [root@client1 ~]# curl http://192.168.112.138:9200
  2. {
  3.   "name" : "client1",
  4.   "cluster_name" : "esxi-cluster",
  5.   "cluster_uuid" : "D8RsqB_5TrWv7Zp0Wncc4g",             ##一定要这里是随机字符串,才算正常
  6.   "version" : {
  7.     "number" : "7.8.0",
  8.     "build_flavor" : "default",
  9.     "build_type" : "rpm",
  10.     "build_hash" : "757314695644ea9a1dc2fecd26d1a43856725e65",
  11.     "build_date" : "2020-06-14T19:35:50.234439Z",
  12.     "build_snapshot" : false,
  13.     "lucene_version" : "8.5.1",
  14.     "minimum_wire_compatibility_version" : "6.8.0",
  15.     "minimum_index_compatibility_version" : "6.0.0-beta1"
  16.   },
  17.   "tagline" : "You Know, for Search"
  18. }
  19. [root@client1 ~]# curl -XGET http://192.168.112.138:9200/_cat/health?v
复制代码
验证.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|众客华禹 ( 蜀ICP备2021016660号 )

GMT+8, 2022-5-17 08:55 , Processed in 0.049149 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表