首先,采用官网的话概括es:Elasticsearch是一个接近实时的搜索平台。这意味着,从索引一个文档直到这个文档能够被搜索到有一个轻微的延迟(通常是1秒)。
其次,es有几个很重要的概念:集群(cluster)、节点(node)、索引(index)、类型(type)、文档(document)以及分片和复制(shards & replicas),这个与关系型数据库有很相似之处。不了解的童鞋,可以查看下官网的参考文档和权威指南,直接百度elasticsearch就可以找到官网。
下面笔者分以下三个步骤进行es的安装和集群配置:

一、jdk安装

由于elasticsearch是java实现的,所以需要安装java环境,关于jdk在linux系统中的安装,笔者在之前的博客中有系讲得过,大家可以参考下,注意版本在1.7.x以上,这个官网上有提到。

二、es下载和安装

es下载地址:https://www.elastic.co/downloads/elasticsearch,下面就要注意了,不要使用root权限用户安装es,否则es启动会报错不能使用root运行es,应该创建一个普通的用户安装es。

笔者使用虚拟机安装了两个linux系统,如下图:

linux es open 的集群占用的是什么资源 linux安装es集群_文档


两台服务器的es配置,除了nodeName以及ip地址不一样,其它的都一样。

三、集群配置并启动es

进入es主目录下的config目录,编辑elasticsearch.yml,如下:

找到相应的位置,并修改默认值。

cluster.name: myCluster 
 node.name: node200 
 bootstrap.mlockall: false 
 network.host: 172.31.26.200 
 discovery.zen.ping.unicast.hosts: [“172.31.26.200”, “172.31.26.222”] 
 discovery.zen.minimum_master_nodes: 2 
 discovery.zen.ping_timeout: 120s

另一台服务器,只需要将node.name和network.host修改下就行了。

然后,分别进入bin目录,执行./elasticsearch启动es服务,由于上面作了es的集群设置,故这两台服务器会自动形成集群,并选取一台为master节点,即主节点。日志结果如下图:

linux es open 的集群占用的是什么资源 linux安装es集群_集群_02


这样集群便已形成,下面笔者通过java api创建了usermanage索引和user类型,这个在下一篇博客中会讲到。

四、 head插件和bigdesk插件安装

这两个插件是很有帮助的插件,可以很方便的查询数据和监控集群健康状况。

head插件安装:

分别在两台服务器进入es目录的bin目录,执行:

./plugin install mobz/elasticsearch-head

然后,访问某一台服务器http://172.31.26.200:9200/_plugin/head/,如下图:

linux es open 的集群占用的是什么资源 linux安装es集群_文档_03


bigdesk插件安装:

分别在两台服务器进入es目录的bin目录,执行:

./plugin install lukas-vlcek/bigdesk,

如下图:

linux es open 的集群占用的是什么资源 linux安装es集群_elasticsearch_04

好像使用es2.0的head插件会有点bug,不过无伤大雅。
今天就讲到这儿啦,之前会总结下使用java api实现es文档的增删改查,如有讲得不当的地方,欢迎大家指出!