Elasticsearch教程(一),全程直播(小白级别)
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二流行的企业搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
下载后在elasticsearch根目录下启动。
elasticsearch-2.2.0]# ./bin/elasticsearch
提示错误:
Exception in thread "main" java.lang.RuntimeException: don't run elasticsearch as root.
at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:93)
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:144)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:285)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
Refer to the log for complete error details.
因为版本的问题,最新的版本安全级别提高了,不允许采用root帐号启动,所以我们要添加一个用户。
#添加一个用户:elasticsearch
$useradd elasticsearch
#给用户elasticsearch设置密码,连续输入2次
$passwd elasticsearch
#创建一个用户组 es
groupadd es
#分配 elasticsearch 到 es 组
usermod -G elasticsearch es
#这里注意下,如果提示用户“es”不存在,那么是因为服务器版本问题,你可以换成 usermod -G es elasticsearch ,也就是用户和用户组对调一下使用。
#这里感谢【武汉|Java|竹木鸟】发现这个问题,并告知我。
#在elasticsearch 根目录下,给定用户权限。-R表示逐级(N层目录) , * 表示 任何文件
chown -R elasticsearch.es *
#切换到elasticsearch用户
su elasticsearch
如果不按上面的给用户elasticsearch分配权限目录。那么会报下面的错。
java.io.FileNotFoundException: /home/es/elasticsearch-2.2.0/logs/elasticsearch.log (Permission denied)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.(FileOutputStream.java:221)
at java.io.FileOutputStream.(FileOutputStream.java:142)
at org.apache.log4j.FileAppender.setFile(FileAppender.java:294)
at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:165)
at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:223)
at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:307)
at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:172)
at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:104)
at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:842)
at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:768)
at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:648)
at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:514)
at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:440)
at org.elasticsearch.common.logging.log4j.LogConfigurator.configure(LogConfigurator.java:128)
at org.elasticsearch.bootstrap.Bootstrap.setupLogging(Bootstrap.java:204)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:258)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
log4j:ERROR Either File or DatePattern options are not set for appender [file].
log4j:ERROR setFile(null,true) call failed.
修改配置文件:
$ vi config/elasticsearch.yml
#cluster name
cluster.name: sojson-application
#节点名称
node.name: node-1
#绑定IP和端口
network.host: 123.88.88.88
http.port: 9200
安装 head 插件。
进入
$ cd elasticsearch/bin
目录,输入命令
$ ./plugin –install mobz/elasticsearch-head
安装head插件。
上面是错误的,新版本安装的方式是这样的。
$ ./plugin install mobz/elasticsearch-head
注意到没,–install 是不用 - 的,直接 install 。
head插件的安装,以及具体的介绍,请查看后面写的博客:Elasticsearch安装(四), elasticsearch head 插件安装和使用。
$ ./bin/elasticsearch
再访问http://{es-host}:9200/_plugin/head/
如下图就对了。
打完收工,接下来的博客会讲到,分词器安装,分词器对比,以及使用等等。
最新文章
- animation-fill-mode的一些思考
- UITableViewCell的重用机制
- Java多线程编程核心技术---对象及变量的并发访问(二)
- Winform开发框架之客户关系管理系统(CRM)的开发总结系列2-基于框架的开发过程
- 被spring和hibernate4逼疯
- node.js学习(1)
- 增量更新项目时的备份MyBak
- html5 input type=search
- angular2 学习笔记 ( Component 组件)
- Golang:使用自定义模板发送邮件
- Python内置函数(8)——bool
- linux定时清理数据库过期记录
- Puppet部署Nginx返代示例
- awk输出单引号,双引号【转】
- WPF简单的分页控件实现
- 一些网站的meta标签的作用
- Microsoft .NET Pet Shop 4: Migrating an ASP.NET 1.1 Application to 2.0
- UWP MySQL 最新版 6.10.5是坏的
- Python之reduce
- 使用junit单元测试SpringMvc
热门文章
- 关于math头文件
- xen 不同后端存储方案的性能对比
- redis加入到Windows系统服务
- wchar_t类型的几个函数
- springBoot开启热部署
- pandas read excel文件碰到的一个小问题
- python cProfile分析程序性能
- 开发框架 springBoot
- Codeforces Round #320 (Div. 2) [Bayan Thanks-Round] A. Raising Bacteria【位运算/二进制拆分/细胞繁殖,每天倍增】
- MySql笔记之操作数据库