Lucene 学习-安装 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-6.0.1.zip
2. 解压
unzip elasticsearch-6.0..zip
3. 启动
./elasticsearch-6.0./bin/elasticsearch
启动时可能报错:不允许 root 用户运行

解决办法:
1. 创建新用户
adduser [user]
2. 给新用户赋予权限
chown -R [user] [elasticsearch安装目录]
3. 切换到新用户
su [user]
完成。
三、远程访问
默认情况下,elasticsearch 只允许本机访问,如果需远程访问。
1. 打开配置文件
vim elasticsearch-6.0./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=
vm.max_map_count=
保存后设置生效
// 使生效
sysctl -p
2. limits.conf 配置文件
vim /etc/security/limits.conf
增加配置
* soft nofile
* hard nofile
4. 修改防火墙
firewall-cmd --zone=public --add-port=/tcp --permanent
firewall-cmd --reload
5. 重新登录 SSH,再次尝试启动 elasticsearch。
切换到非 root 用户。
启动:
./elasticsearch-6.0./bin/elasticsearch
或 守护线程启动:
./elasticsearch-6.0./bin/elasticsearch -d
6. 测试
浏览器打开:http://ip:9200/
输出:

四、集群
1. 在本机上创建第二个实例:
切换到非 root 用户,在 elasticsearch 目录下创建 data1 文件夹后,执行命令:
./bin/elasticsearch -Ehttp.port= -Epath.data=/.../elasticsearch-6.0./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
Lucene 学习-安装 Elasticsearch 服务器的更多相关文章
- Lucene 学习-安装 Kibana 视图界面
Kibana 是一个开源的分析与可视化平台,设计出来用于和 Elasticsearch 一起使用的. 你可以使用 Kibana 搜索.查看.交互存放在 Elasticsearch 索引里的数据.使用各 ...
- ELK学习笔记(一)安装Elasticsearch、Kibana、Logstash和X-Pack
最近在学习ELK的时候踩了不少的坑,特此写个笔记记录下学习过程. 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因 ...
- ELK日志框架(1):安装Elasticsearch组建单服务器多节点集群
ELK简介 最近有个需求搭建一套日志系统用于集成几个业务系统的日志提供快速的检索功能,目前是用Log4net存数据库+Error级别发邮件方式,也算简单暴力好用,但历史日志的模糊查询确实很慢,所以使用 ...
- ElasticSearch 5学习(1)——安装Elasticsearch、Kibana和X-Pack
安装准备: 安装Elasticsearch唯一的要求是安装官方新版的Java,包括对应的Jdk. 安装Elasticsearch 首先到官网下载最新版本的Elasticsearch压缩包. 可以使用命 ...
- Elasticsearch 学习笔记 Elasticsearch及Elasticsearch head安装配置
一.安装与配置 1.到官网下载Elasticsearch,https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6. ...
- ElasticSearch6学习(1)-安装Elasticsearch
安装准备: 安装Elasticsearch唯一的要求是安装Java8,包括对应的Jdk.其他java9/java10没尝试,考虑兼容问题.我这里只用了java8 安装java8可以参考我之前写的一篇文 ...
- 在Windows上安装Elasticsearch 5.0
在windows上安装Elasticsearch Elasticsearch可以使用.zip软件包安装在Windows上. elasticsearch-service.bat命令,它将设置Elasti ...
- ES1:Windows下安装ElasticSearch
ElasticSearch(简称ES)是一个基于Lucene的分布式全文搜索服务器,本随笔演示在Windows安装ElasticSearch和用于管理ES的Head插件. ElasticSearch官 ...
- ElasticSearch入门 第一篇:Windows下安装ElasticSearch
这是ElasticSearch 2.4 版本系列的第一篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...
随机推荐
- jQuery获取Table某列的值
在写此篇博文时,发现在以前曾写过<获取DataTable选择第一行某一列值>http://www.cnblogs.com/insus/p/5434062.html . 但是与此篇所说的完全 ...
- Facebook内部报告:争取青少年用户的鸡贼小技巧
翻译:吴祺深 欢迎访问网易云社区,了解更多网易技术产品运营经验. 去年十月,Facebook收购了TBH,最后却关闭了这款APP,不过一则内部报告透露了,通过这款流行的投票APP,这家公司学会了如何去 ...
- python--Websocket实现, 加密 sha1,base64
需要用到gevent-websocket包,这里我们用下图这个 一.websocket简单实现 ep1.py from geventwebsocket.handler import WebSocket ...
- Python 爬虫(二十五) Cookie的处理--cookielib库的使用
Python中cookielib库(python3中为http.cookiejar)为存储和管理cookie提供客户端支持. 该模块主要功能是提供可存储cookie的对象.使用此模块捕获cookie并 ...
- Java 泛型通配符
package com.waston; import java.util.*; public class Main { public static void main(String[] args) { ...
- 调用notify()后,当前线程执行完synchronized块中的所有代码才会释放锁
package com.pinnet.test; public class Demo { public static void main(String[] args) { Demo demo = ne ...
- java实现office文件预览
不知觉就过了这个久了,继上篇java实现文件上传下载后,今天给大家分享一篇java实现的对office文件预览功能. 相信大家在平常的项目中会遇到需要对文件实现预览功能,这里不用下载节省很多事.大家请 ...
- C、C++打包成.dll .so .a 给Unity使用
C.C++打包成.dll .so .a 给Unity使用 打包.dll库 工具:VS 使用VS新建项目 选择不大于.NET3.5的版本 选择Visual C++ -> Win32 控制台应用程序 ...
- 线程&线程控制
线程基本概念: 1 线程 (1)概念:linux下没有真正的线程,所谓的线程都是通过进程的pcb模拟的,因此linux下的线程也称为“轻量级进程”,之前我们所说的进程现在看来,可以理解为:只有一个线程 ...
- vue10行代码实现上拉翻页加载更多数据,纯手写js实现下拉刷新上拉翻页不引用任何第三方插件
vue10行代码实现上拉翻页加载更多数据,纯手写js实现下拉刷新上拉翻页不引用任何第三方插件/库 一提到移动端的下拉刷新上拉翻页,你可能就会想到iScroll插件,没错iScroll是一个高性能,资源 ...