近几篇ElasticSearch系列:

1、阿里云服务器Linux系统安装配置ElasticSearch搜索引擎

2、Linux系统中ElasticSearch搜索引擎安装配置Head插件

3、ElasticSearch搜索引擎安装配置中文分词器IK插件

4、ElasticSearch搜索引擎安装配置拼音插件pinyin

5、ElasticSearch搜索引擎在JavaWeb项目中的应用

ElasticSearch是一个基于Apache Lucene(TM)的开源搜索引擎。无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进、性能最好的、功能最全的搜索引擎库。通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。

不过ElasticSearch不仅仅是Lucene和全文搜索,我们还能这样去描述它:

  a:分布式的实时文件存储,每个字段都被索引并可被搜索

  b:分布式的实时分析搜索引擎

  c:可以扩展到上百台服务器,处理PB级结构化或非结构化数据

一、下载与解压

  1、ElasticSearch是需要Java支持,所以安装配置前需要Java环境。这里我安装的JDK是1.8版本,ElasticSearch是6.3.2版本。选择TAR格式(如下图所示),下载完成之后还是通过之前两篇提到的MobaXterm软件上传至home目录下,再解压至/usr/java/elasticsearch/目录(如下图所示)。下载地址

       

命令如下图所示:

1 [root@izwz9eu3mkqq1njlkrfhc8z ~]# tar -xzf /home/elasticsearch-6.3..tar.gz -C /usr/java/elasticsearch/

  2、官方文档上说ElasticSearch不适合在root管理员帐号下运行,所以要先建立一个账号专门运行ElasticSearch。以下是创建esUser组和其下用户esUser。

 [root@izwz9eu3mkqq1njlkrfhc8z ~]# groupadd esUser
 [root@izwz9eu3mkqq1njlkrfhc8z ~]# useradd -g esUser esUser
 [root@izwz9eu3mkqq1njlkrfhc8z ~]# passwd esUser

  3、修改limits.conf与sysctl.conf文件的系统参数,如下图所示。

     

  a、编辑 limits.conf 文件并添加内容:

 [root@izwz9eu3mkqq1njlkrfhc8z ~]# vim /etc/security/limits.conf
 root soft nofile
root hard nofile #esUser
esUser soft nofile
esUser hard nofile * soft nofile
* hard nofile

  b、编辑 sysctl.conf 文件并添加内容,因为max virtual memory areas vm.max_map_count increase to at least [262144]:

 [root@izwz9eu3mkqq1njlkrfhc8z ~]# vim /etc/sysctl.conf
 vm.max_map_count=

  c、最后执行如下命令:

 sysctl -p

二、安装与配置

  a、解压完成后,进入config目录,编辑elasticsearch.yml文件。该文件配置需要注意!!!将下述代码中标红“你的IP地址”更改为 自己的IP地址,添加配置时需注意配置文件":"后要有空格。如下所示。

 [root@izwz9eu3mkqq1njlkrfhc8z ~]# vim /usr/java/elasticsearch/elasticsearch-6.3./config/elasticsearch.yml
 #这是集群名字,起名为elasticsearch
#es启动后会将具有相同集群名字的节点放到一个集群下。
cluster.name: elasticsearch
#
#节点名字。
node.name: "node1"
#
# 数据存储位置,配置之后该目录会自动生成
path.data: /usr/java/elasticsearch/elasticsearch-6.3./data
#
# 日志文件的路径,配置之后该目录会自动生成
path.logs: /usr/java/elasticsearch/elasticsearch-6.3./logs
#
#
#设置绑定的ip地址,可以是ipv4或ipv6的,默认为0.0.0.
#network.bind_host: xxxxxx
#
#设置其它节点和该节点交互的ip地址,如果不设置它会自动设置,值必须是个真实的ip地址
#network.publish_host: xxxxxx
#
#同时设置bind_host和publish_host上面两个参数,该地址为默认地址
network.host: 0.0.0.0
#
#
# 设置节点间交互的tcp端口,默认是9300
#transport.tcp.port:
#
# 设置是否压缩tcp传输时的数据,默认为false,不压缩
transport.tcp.compress: true
#
# 设置对外服务的http端口,默认为9200
#http.port:
#
# 使用http协议对外提供服务,默认为true,开启
#http.enabled: false
#
#discovery.zen.ping.unicast.hosts:["节点1的 ip","节点2 的ip","节点3的ip"]
#这是一个集群中的主节点的初始列表,当节点(主节点或者数据节点)启动时使用这个列表进行探测
discovery.zen.ping.unicast.hosts: ["你的IP地址"]
#
#指定集群中的节点中有几个有master资格的节点。
#对于大集群可以写(-)。
discovery.zen.minimum_master_nodes:
#解决head的集群健康值问题,后续会安装head插件
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type

  b、若服务器运行内存不大,也可能还有一个错误是关于Jvm内存分配的问题,需要修改Jvm配置。如下所示。

 [root@izwz9eu3mkqq1njlkrfhc8z ~]# vim /usr/java/elasticsearch/elasticsearch-6.3./config/jvm.options

三、启动与测试

上述安装配置均是在root用户下进行的,下面将切换至esUser用户,来启动ElasticSearch,即运行bin目录下的elasticsearch文件,若看到[node1] started表示启动成功。

这时若是Ctrl+C退出后,则ElasticSearch将终止正在运行的程序。下面是在后台启动ElasticSearch,进程会一直在运行,除非特殊情况,如内存不够会自动结束运行。

下面是查看ElasticSearch进程情况,可以执行命令: kill -9 进程ID 来结束程序。

下面是测试是否有如下提示:

 [esUser@izwz9eu3mkqq1njlkrfhc8z root]$ curl http://localhost:9200/?pretty

或在浏览器中查看,输入:服务器IP地址:9200

本文部分学习参考了:https://www.cnblogs.com/cheyunhua/p/8087658.html#undefined

至此是关于介绍在Linux系统中安装配置ElasticSearch搜索引擎,后续会介绍ElasticSearch-Head、ElasticSearch中文分词器IK插件、ElasticSearch拼音插件pinyin。

如有疏漏错误之处,还请不吝赐教!

阿里云服务器Linux系统安装配置ElasticSearch搜索引擎的更多相关文章

  1. 基于阿里云服务器Linux系统安装配置Redis

    一.Redis简介 Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(有 ...

  2. 阿里云服务器Linux CentOS安装配置(零)目录

    阿里云服务器Linux CentOS安装配置(零)目录 阿里云服务器Linux CentOS安装配置(一)购买阿里云服务器 阿里云服务器Linux CentOS安装配置(二)yum安装svn 阿里云服 ...

  3. 阿里云服务器Linux CentOS安装配置(九)shell编译、打包、部署

    阿里云服务器Linux CentOS安装配置(九)shell编译.打包.部署 1.查询当前目录以及子目录下所有的java文件,并显示查询结果 find . -name *.java -type f - ...

  4. 阿里云服务器Linux CentOS安装配置(八)nginx安装、配置、域名绑定

    阿里云服务器Linux CentOS安装配置(八)nginx安装.配置.域名绑定 1.安装nginx yum -y install nginx 2.启动nginx service nginx star ...

  5. 阿里云服务器Linux CentOS安装配置(七)域名解析

    阿里云服务器Linux CentOS安装配置(七)域名解析 1.购买域名 登录阿里云,左侧菜单点击[域名],然后[域名注册],完成域名购买.(一般首年45元) 2.添加域名解析 在域名列表里点击你的域 ...

  6. 阿里云服务器Linux CentOS安装配置(六)resin多端口配置、安装、部署

    阿里云服务器Linux CentOS安装配置(六)resin多端口配置.安装.部署 1.下载resin包 http://125.39.66.162/files/2183000003E08525/cau ...

  7. 阿里云服务器Linux CentOS安装配置(五)jetty配置、部署

    阿里云服务器Linux CentOS安装配置(五)jetty配置.部署 1.官网下载jetty:wget http://repo1.maven.org/maven2/org/eclipse/jetty ...

  8. 阿里云服务器Linux CentOS安装配置(四)yum安装tomcat

    阿里云服务器Linux CentOS安装配置(四)yum安装tomcat 1.yum -y install tomcat  执行命令后,会帮你把jdk也安装好 2.tomcat安装目录:/var/li ...

  9. 阿里云服务器Linux CentOS安装配置(三)yum安装mysql

    阿里云服务器Linux CentOS安装配置(三)yum安装mysql 1.执行yum安装mysql命令:yum -y install mysql-server mysql-devel 2.启动mys ...

随机推荐

  1. 2018 Multi-University Training Contest 3 Problem F. Grab The Tree 【YY+BFS】

    传送门:http://acm.hdu.edu.cn/showproblem.php?pid=6324 Problem F. Grab The Tree Time Limit: 2000/1000 MS ...

  2. Eclipse安装Sonarlint插件

    这里安装的是Sonarlint3.6.插件安装非常简单.插件比Sonar更为简单快捷. 一.首先通过点击Eclipse上方Help菜单会出现一个下拉列表,点击其中的Eclipse MarketPlac ...

  3. HDU 1053 Entropy(哈夫曼编码 贪心+优先队列)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1053 Entropy Time Limit: 2000/1000 MS (Java/Others)   ...

  4. C/C++判断文件/文件夹是否存在 转

    一.判断文件夹是否存在:     1.用CreateDirectory(".//FileManege",NULL);如果文件夹FileManege不存在,则创建.     2.或者 ...

  5. 小修改,让mvc的验证锦上添点花

    首先,mvc的客户端验证用的是jquery.validate.js, jquery.validate本身已经提供了很好的扩展功能,通过简单点配置就可以做得更好看些. 而Microsoft通过jquer ...

  6. Vue教程:组件Component详解(六)

    一.什么是组件? 组件 (Component) 是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功 ...

  7. IE下页面左偏移并页头空出一行解决方法

    在其它浏览器下显示正常,包括360浏览器,在IE下,页面向左偏移,通过firebug查看,head标签为空,并且head标签里面的内容都跑到body标签内了,原因是有bom头,访问的页面或是加载,包含 ...

  8. redhat6 快速部署percona

    1.首先得能访问外网 2.yum install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-relea ...

  9. Java分布式锁之数据库方式实现

    之前的文章<Java分布式锁实现>中列举了分布式锁的3种实现方式,分别是基于数据库实现,基于缓存实现和基于zookeeper实现.三种实现方式各有可取之处,本篇文章就详细讲解一下Java分 ...

  10. PHP二维码生成

    原文链接:http://www.qqdeveloper.com/detail/14/1.html 代码下载地址:链接:http://pan.baidu.com/s/1dFgqiaP 密码:lex5 材 ...