ES入门实践
Elasticsearch核心俗语
核心概念
ES -> 数据库
索引index -> 表
文档document -> 行(记录)
字段fields -> 列
stu_index
{
"id":1001,
"name":"dog",
"age":19
},{
"id":1002,
"name":"cat",
"age":18
},{
"id":1003,
"name":"pig",
"age":24
}
集群相关
分片(shard)∶把索引库拆分为多份,分别放在不同的节点上,比如有3个节点,3个节点的所有数据内容加在一起是一个完整的索引库。分别保存到三个节点上,目的为了水平扩展,提高吞吐量。
备份(replica)∶每个shard的备份。
简称
shard = primary shard(主分片)
replica= replica shard(备份节点)
安装Elasticsearch
-
上传后解压
-
移动解压后的es文件夹
-
ES目录介绍
- bin: 可执行文件在里面,运行es的命令就在这个里面,包含了一些脚本文件等
- config: 配置文件目录
- JDK: java环境
- lib: 依赖的jar类库
- logs: 日志文件
- modules: es相关的模块
- plugins: 可以自己开发的插件
- data: 这个目录没有,自己可以新建一下,后面要用 -> mkdir data, 这个作为索引目录
-
修改核心配置文件 elasticsearch.yml
-
修改集群名称,默认是elasticsearch,虽然目前是单机,但是也会有默认的
-
为当前的es节点取个名称,名称随意,如果在集群环境中,都要有相应的名字
-
修改data数据保存地址
-
修改日志数据保存地址
-
绑定es网络ip,原理同redis
-
默认端口号,可以自定义修改
-
集群节点,名字可以先改成之前的那个节点名称
-
-
修改JVM参数
默认Xmx和Xms都是1g,虚拟机内存没这么大,修改一下即可
- 添加用户,ES不允许使用root操作es,需要添加用户,操作如下
useradd esuser
chown -R esuser:esuser /usr/local/elasticsearch-7.4.2/
su esuser
whoami
- 启动ES,进入bin目录,执行
./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
- 测试
访问你的虚拟机ip+端口号9200,如下则表示OK
停止es,如果是前台启动,直接Ctrl+C就可以停止,后台启动./elasticsearch -d
,停止杀进程
端口号意义:
- 9200: Http协议,用于外部通讯
- 9300: Tcp协议,ES集群之间使用9300通讯
本文原创自博客园文章,想了解Java相关知识,欢迎到我的博客踩踩~ 地址:https://www.cnblogs.com/potterCoding/