注:新版es 需要jdk1.8环境,我的jdk使用的 sun的jdk,卸载了centos7上自带的 open jdk

项目搜索服务为了提升搜索服务体验,考虑引入搜索引擎,考虑范围在sorl和es,经过对比,es的性能和稳定性都已经得到了证实,相对sorl来说,简单些。

下面就是本次预研搭建测试平台上的es步骤:

1. 首先要有个linux环境

2. 安装es,当前最新版本为     Version: 6.4.1

3. es下载地址:https://www.elastic.co/cn/downloads/elasticsearch

CentOS7.3安装Elasticsearch(es)安装记录

4. es下载完成后,使用 xshell 工具的 rz命令上传到服务器

5. 安装前提:es支持用户输入的脚本执行,所以 es限制了在linux上的root用户执行,不能再root下启动es(需配置)

所以,使用普通用户启动

(注:因为安全考虑,避免出现不必要的问题,所以,建议使用普通用户)

root用户启动时报错:

[WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [] uncaught exception in thread [main]

org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root

6. 解压文件: tar  -xvzf filename.tr.gz

7. 启动es:  切换到 es  /bin/目录下

   后台启动:    ./elasticsearch -d 

   直接启动es: ./elasticsearch

8. 启动后遇到错误提示:Exception in thread "main" java.nio.file.AccessDeniedException: 意思是 非Root账户,当前账户没有权限,也就是说,想要用普通用户操作es,那么普通用户还要有操作权限。需要切换到root权限下,输入:chown -R use:use /etc/es/   ,然后在切换回到普通用户,再次启动

9. 还没完,测试es是否启动成功。输入: curl http://localhost:9200  有报错了,提示:curl couldn't connect to host 拒绝连接

问题原因一般有2个,1线ping以下网络通不通,2防火墙,我用的centos7.3 默认带的防火墙是firewall

先查看以下防火墙的状态:  systemctl status firewalld

 

查看防火墙是否为运行状态: firewall-cmd --state         (结果是: not running  或者 running)

# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
firewall-cmd --list-all 
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload

# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;

我们可以将防火墙开放9200端口,也可以暂时关闭防火墙

请求成功时:

curl http://localhost:9200
{
  "name" : "WktvJa5",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "l0T4RI8ARtOm7N5wF3g_Pg",
  "version" : {
    "number" : "6.4.1",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "e36acdb",
    "build_date" : "2018-09-13T22:18:07.696808Z",
    "build_snapshot" : false,
    "lucene_version" : "7.4.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}
 

 

相关文章: