|
一、安装准备
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、准备环境
- 关闭防火墙
- systemctl stop firewalld
- systemctl disable firewalld
复制代码 二、安装部署(单节点)
1、安装jdk
- [root@prometheus opt]# rpm -ivh jdk-11.0.12_linux-x64_bin.rpm
复制代码 2、查看版本
- [root@prometheus opt]# java -version
- java version "11.0.12" 2021-07-20 LTS
- Java(TM) SE Runtime Environment 18.9 (build 11.0.12+8-LTS-237)
- 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权限下将该特定环境准备好。
- [root@prometheus opt]# rpm -ivh elasticsearch-7.8.0-x86_64.rpm
- [root@client1 opt]# mkdir /data/elasticsearch/{data,logs} -p
- [root@client1 opt]# chown -R elasticsearch:elasticsearch /data/elasticsearch/
复制代码 4、修改配置文件(单机版)
- vim /etc/elasticsearch/elasticsearch.yml
- #设置集群名字
- cluster.name: my-cluster
- #设置节点名字
- node.name: prometheus
- #向节点添加自定义属性
- node.attr.rack: r1
- #设置数据存放路径
- path.data: /data/elasticsearch/data
- #设置logs存放路径
- path.logs: /data/elasticsearch/logs
- #设置允许其他主机连接得IP
- network.host: 192.168.112.139
- #设置服务监听端口号
- http.port: 9200
- transport.tcp.port: 9300
- cluster.initial_master_nodes: 192.168.112.139
复制代码 5、安装分词器
- [root@prometheus opt]# yum install -y unzip
- [root@prometheus opt]# mkdir /usr/share/elasticsearch/plugins/ik
- [root@prometheus opt]# unzip -d /usr/share/elasticsearch/plugins/ik elasticsearch-analysis-ik-7.8.0.zip
- [root@prometheus opt]# chown -R elasticsearch:elasticsearch /usr/share/elasticsearch/plugins/ik/
复制代码 6、启动elasticsearch
- systemctl start elasticsearch
- systemctl enable elasticsearch
复制代码 三、可视化查看
1、推荐一款很棒的UI查询elasticsearch的插件
它是Edge 浏览器的一个插件,功能很强大,可以查询,删除,备份,快照,导出数据等。
安装方式很简单:Edge 浏览器输入:https://microsoftedge.microsoft.com/addons/search/idm
搜索:elasticsearch
安装Elasticvue
插件效果展示
四、优化参数
1、修改默认的堆内存参数
- vim /etc/elasticsearch/jvm.options
- -Xms1g
- -Xmx1g
- 根据主机配置,业务需求来修改
- -Xms5g
- -Xmx5g
复制代码 五、安装部署集群
1、准备环境
- elasticsearch集群至少需要三个节点
- 192.168.112.138
- 192.168.112.139
- 192.168.112.141
- 做好hosts解析
- vim /etc/hosts
- 192.168.112.138 client1
- 192.168.112.139 client2
- 192.168.112.141 client3
- 关闭防火墙
- systemctl stop firewalld
- systemctl disable firewalld
复制代码 2、安装jdk
- [root@client1 opt]# rpm -ivh jdk-11.0.12_linux-x64_bin.rpm
复制代码 3、查看版本
- [root@client1 opt]# java -version
- java version "11.0.12" 2021-07-20 LTS
- Java(TM) SE Runtime Environment 18.9 (build 11.0.12+8-LTS-237)
- 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权限下将该特定环境准备好。
- [root@client1 opt]# rpm -ivh elasticsearch-7.8.0-x86_64.rpm
- [root@client1 opt]# mkdir /data/elasticsearch/{data,logs} -p
- [root@client1 opt]# chown -R elasticsearch:elasticsearch /data/elasticsearch/
复制代码 5、修改配置文件(集群版)
- vim /etc/elasticsearch/elasticsearch.yml
- # ----------------------------------- Paths --------------------------------
- path.data: /data/elasticsearch/data
- path.logs: /data/elasticsearch/logs
- path.repo: /data/elasticsearch/kuaizhao
- # ---------------------------------- Cluster -------------------------------
- cluster.name: esxi-cluster
- # ------------------------------------ Node ------------------------------
- node.name: client1 #根据各节点主机名更改
- node.attr.rack: r1
- # ---------------------------------- Network -----------------------------
- network.host: 192.168.112.138 #根据各节点ip地址更改
- http.port: 9200
- transport.tcp.port: 9300
- #discovery.zen.ping.unicast.hosts: [{"192.168.112.138","192.168.112.139","192.168.112.141"}]
- discovery.seed_hosts: ["192.168.112.138", "192.168.112.139","192.168.112.141"]
- cluster.initial_master_nodes: ["192.168.112.138", "192.168.112.139","192.168.112.141"]
- discovery.zen.minimum_master_nodes: 2
- transport.tcp.compress: true #设置是否压缩tcp传输时的数据,默认为false,不压缩。
- node.data: true #指定该节点是否存储索引数据,默认为true。
- node.master: true #指定该节点是否有资格被选举成为node(注意这里只是设置成有资格, 不代表该node一定就是master)>,默认是true。
- discovery.zen.ping_timeout: 6s #es选举master的超时时间
复制代码 6、安装分词器
- [root@client1 opt]# yum install -y unzip
- [root@client1 opt]# mkdir /usr/share/elasticsearch/plugins/ik
- [root@client1 opt]# unzip -d /usr/share/elasticsearch/plugins/ik elasticsearch-analysis-ik-7.8.0.zip
- [root@client1 opt]# chown -R elasticsearch:elasticsearch /usr/share/elasticsearch/plugins/ik/
复制代码 7、启动elasticsearch
- systemctl start elasticsearch
- systemctl enable elasticsearch
复制代码 8、检查集群状态
- [root@client1 ~]# curl http://192.168.112.138:9200
- {
- "name" : "client1",
- "cluster_name" : "esxi-cluster",
- "cluster_uuid" : "D8RsqB_5TrWv7Zp0Wncc4g", ##一定要这里是随机字符串,才算正常
- "version" : {
- "number" : "7.8.0",
- "build_flavor" : "default",
- "build_type" : "rpm",
- "build_hash" : "757314695644ea9a1dc2fecd26d1a43856725e65",
- "build_date" : "2020-06-14T19:35:50.234439Z",
- "build_snapshot" : false,
- "lucene_version" : "8.5.1",
- "minimum_wire_compatibility_version" : "6.8.0",
- "minimum_index_compatibility_version" : "6.0.0-beta1"
- },
- "tagline" : "You Know, for Search"
- }
- [root@client1 ~]# curl -XGET http://192.168.112.138:9200/_cat/health?v
复制代码
|
|