一、ES介绍
Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene™ 基础上的搜索引擎.当然 Elasticsearch 并不仅仅是 Lucene 那么简单,它不仅包括了全文搜索功能,还可以进行以下工作:
(1).分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。
(2).实时分析的分布式搜索引擎。
(3).可以扩展到上百台服务器,处理PB级别的结构化或非结构化数据
二、单机ES安装
1.ES下载
ES官网:https://www.elastic.co/cn/downloads/elasticsearch
2.安装
(1).上传后解压
解压命令:tar -zxvf elasticsearch-8.14.3-linux-x86_64.tar.gz
移动解压后的文件到/usr/local/目录下:mv elasticsearch-8.14.3 /usr/local/
(2).ES目录介绍
bin:可执行文件在里面,运行es的命令就在这个里面,包含了一些脚本文件等
1) config:配置文件目录
2) jdk:java环境
3) lib:依赖的jar,类库
4) logs:日志文件
5) modules:es相关的模块
6) plugins:可以自己开发的插件
7) data:这个目录没有,自己新建一下,后面要用->mkdir data,这个作为索引目录
(3).修改核心配置文件elasticearch.yml
vim config/elasticsearch.yml
修改集群名称,默认是elasticsearch,虽然目前是单机,但是也会有默认的
cluster.name: my-application
为当前的节点取个名称,名称随意
node.name: node-1
修改data数据保存地址
path.data: /usr/local/elasticsearch-8.14.3/data
修改日志数据保存地址
path.logs: /usr/local/elasticsearch-8.14.3/logs
绑定es网络IP
network.host: 0.0.0.0
默认端口号,可以自定义修改
http.port: 9200
集群节点,名字可以先改成之前的那个节点名称
discovery.seed_hosts: ["host1"]
cluster.initial_master_nodes: ["node-1"]
(4).修改JVM参数
-Xms256m
-Xmx256m
默认xms和xmx都是1g,虚拟机内存没这么大,修改一下即可,线上环境内存大可以不修改!
(5).添加用户
说明:ES不允许使用root操作es,需要添加用户。
操作如下:
#添加用户
useradd esuser
#授权
chown -R esuser:esuser /usr/local/elasticsearch-8.14.3
su esuser
(6).启动ES
./elasticsearch
如果出现如下错误:
那么需要切换到root用户下去修改配置如下:
vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
vim /etc/sysctl.conf
vm.max_map_count=262145
然后执行sysctl -p刷新一下。(这一步不能忘记,否则vm.max_map_count不生效)
最后再次启动OK
(7).测试
访问地址:https://虚拟机ip:9200,如下则表示OK。
(8).停止和后台启动ES
1).停止ES:
如果是前台启动,直接ctrl+c就可以停止
2).后台启动:
./elasticsearch -d
3).停止杀进程:
jps
kill+进程号
4).端口号意义
9200:Http协议,用于外部通讯
9300:Tcp协议,ES集群之间是通过9300通讯