elk 学习-安装 elasticsearch 服务器
全文搜索属于最常见的需求,开源的 Elasticsearch 是目前全文搜索引擎的首选,它的底层是开源库 Lucene。但是我们没法直接使用 Lucene,必须自己写代码去调用它的接口。
Elasticsearch 是 Lucene 的封装,提供了 REST API 的操作接口,非常方便。
一、安装 Java 8
Elasticsearch 需要 Java 8 的环境。(目前的版本,好像不需要安装)
如果还没安装,请参考:
http://blog.csdn.net/justdoit_potato/article/details/77962670
二、安装 Elasticsearch
1. 下载
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.2-linux-x86_64.tar.gz
2. 解压
tar -xvf elasticsearch-7.10.2-linux-x86_64.tar.gz
3. 启动
./elasticsearch-6.0.1/bin/elasticsearch
启动时会报错:不允许 root 用户运行
接下来需要我们做一些启动前的准备工作。
三、配置文件
1. 本身配置
默认情况下,elasticsearch 只允许本机访问,如果需远程访问。
# 打开配置文件 vim elasticsearch-6.0.1/config/elasticsearch.yml
修改如下配置
# 放开注释 node.name: node-1 # 改为 0.0.0.0,支持远程访问 network.host: 0.0.0.0 # 修改为 cluster.initial_master_nodes: ["node-1"]
2. 修改最大内存区域
编辑
vim /etc/sysctl.conf
增加或修改
vm.max_map_count=262144
设置生效
sysctl -p
3. 进程配置
编辑
vim /etc/security/limits.conf
增加配置
# 每个进程同时可以打开的文件数 * soft nofile 655350 * hard nofile 655350 # 最大线程个数 * soft nproc 4096 * hard nproc 4096
查看配置
ulimit -Hn
ulimit -Sn
4. 切换用户
创建用户
adduser [user]
赋予权限
chown -R [user] [elasticsearch安装目录]
切换用户
su [user]
5. 启动
切换到非 root 用户。
启动:
./elasticsearch-6.0.1/bin/elasticsearch
或 守护线程启动:
./elasticsearch-6.0.1/bin/elasticsearch -d
6. 测试
浏览器打开:http://ip:9200/
输出:
四、集群
1. 在本机上创建第二个实例:
切换到非 root 用户,在 elasticsearch 目录下创建 data1 文件夹后,执行命令:
./bin/elasticsearch -Ehttp.port=8200 -Epath.data=/.../elasticsearch-6.0.1/data1
这条命令会覆盖配置文件中的参数。
2. 查看是否启动成功
浏览器访问:http://ip:8200
如果正确输出配置信息,表示启动成功。
3. 如何查看新创建的节点是否加入集群
浏览器访问:http://ip:8200/_cat/nodes?v
可以看到,出现两条节点信息。
master 的 * 号表示当前节点信息表示主实例。
五、常用命令
// 查看当前节点的所有Index _cat/indices // 查看当前Index的所有Type _mapping?pretty=true // 新建Index PUT weather // 删除Index DELETE weather