mv elasticsearch-6.2.4/ elasticsearch
进入目录
cd elasticsearch
新建目录
mkdir data
mkdir logs
修改配置
cd config
vi elasticsearch.yml
添加内容
path.data: /usr/local/elasticsearch/data # 数据目录位置
path.logs: /usr/local/elasticsearch/logs # 日志目录位置
修改绑定的ip
network.host: 0.0.0.0 # 绑定到0.0.0.0,允许任何ip来访问
其他可配置信息:
运行
./bin/elasticsearch
可能的错误:
错误1:内核过低
在elasticsearch.yml下面添加配置:
bootstrap.system_call_filter: false
禁用这个插件,然后重启
错误2:文件权限不足
[1]max file descriptors…是文件权限不足
用root登录,然后修改配置文件:
vim /etc/security/limits.conf
添加下面的内容:
-
soft nofile 65536
-
hard nofile 131072
-
soft nproc 4096
-
hard nproc 4096
错误3:线程数不足
[2]: max number of threads … 是线程数不足
修改配置:
vim /etc/security/limits.d/20-nproc.conf
修改下面的内容:
- soft nproc 1024
改为:
- soft nproc 4096
错误4:进程虚拟内存不足
[3]: max virtual memory… 进程虚拟内存不足
修改配置文件:
vim /etc/sysctl.conf
添加下面内容:
vm.max_map_count=655360
然后执行命令:
sysctl -p
再次启动ES
两个端口:
9300:集群节点间通讯接口
9200:客户端访问接口
我们在浏览器中访问
Kibana安装
======================================================================
Kibana是ES的客户端工具
需要先安装nodejs
tar -vxf node-v12.18.2-linux-x64.tar.xz
mv node-v12.18.2-linux-x64 nodejs
ln -s /usr/local/nodejs/bin/node /usr/local/bin
ln -s /usr/local/nodejs/bin/npm /usr/local/bin
node -v
解压kibana
tar -vxf kibana-6.2.4-linux-x86_64.tar.gz
mv kibana-6.2.4-linux-x86_64 kibana
修改 config/kibana.yml 添加
server.host: “0.0.0.0”
elasticsearch.url: “http://机器IP:9200”
启动
./bin/kibana
kibana的端口是5601,在浏览器打开后,可以测试查询
安装分词器
===========================================
《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》
【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享
========================
分词器能把一个字符串拆分成多个单词,搜索时再按每个单词分别索引,这样能大大提高搜索效率。
如:“我是中国人"拆分为"我”、“是”、“中国”、“国人”、“中国人”。
安装步骤:
下载分词器文件,版本和ES版本一致
如: elasticsearch-analysis-ik-6.2.4.zip
上传到elasticsearch/plugins目录中
解压
unzip elasticsearch-analysis-ik-6.2.4.zip
使用kibana测试
Elasticsearch基本操作
===============================================================================
创建索引
PUT /test
创建类型并进行映射
PUT /test/_mapping/student
{
“properties”: {
“name” :{
“type”: “text”,
“analyzer”: “ik_max_word”
},
“gender”:{
“type”: “keyword”
},
“age”:{
“type”: “integer”
}
}
}
添加数据
POST /test/student
{
“name”:“张三三”,
“gender”:“男”,
“age”:“20”



