您的位置:首页 > 其它

Lucene 学习-安装 Elasticsearch 服务器

2017-12-08 23:53 141 查看
全文搜索属于最常见的需求,开源的 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-6.0.1.zip[/code] 
2. 解压

unzip elasticsearch-6.0.1.zip


3. 启动

./elasticsearch-6.0.1/bin/elasticsearch


启动时可能报错:不允许 root 用户运行



解决办法:

1. 创建新用户

adduser [user]


2. 给新用户赋予权限

chown -R [user] [elasticsearch安装目录]


3. 切换到新用户

su [user]


完成。

三、远程访问

默认情况下,elasticsearch 只允许本机访问,如果需远程访问。

1. 打开配置文件

vim elasticsearch-6.0.1/config/elasticsearch.yml


2. 将 network.host 配置去掉注释,值改为 0.0.0.0(建议改为具体的客户端IP)

network.host: 0.0.0.0


3. 改完后可能会无法启动,报错:



解决办法:

1. sysctl.conf 配置文件

vi /etc/sysctl.conf


增加或修改配置

fs.file-max=655350
vm.max_map_count=655360


保存后设置生效

// 使生效
sysctl -p


2. limits.conf 配置文件

vim /etc/security/limits.conf


增加配置

* soft nofile 655350
* hard nofile 655350


4. 修改防火墙

firewall-cmd --zone=public --add-port=9200/tcp --permanent
firewall-cmd --reload


5. 重新登录 SSH,再次尝试启动 elasticsearch。

切换到非 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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: