集群搭建
ElasticSearch的集群我还是以elasticsearch-2.3.1版本为例。在开始集群搭建之前,我先给大家一点建议,在看elasticsearch-2.3.1的配置文件之前,先看elasticsearch低版本的配置文件,例如:1.6,因为低版本的配置文件的英文解释比较多,而且比较透彻,学习更加简单。下面我们来搭建一个简单的集群。
下载es 链接(http://download.csdn.net/download/u011192458/9941341)
elasticsearch的config文件夹里面有两个配置文件:elasticsearch.yml和logging.yml,第一个是es的基本配置文件,第二个是日志配置文件,es也是使用log4j来记录日志的,所以logging.yml里的设置按普通log4j配置文件来设置就行了。
打开elasticsearch.yml的第一眼,配置文件的实例非常的简单,我们主要讲两点:
1、cluster.name
配置es的集群名称,默认是elasticsearch,不同的集群用名字来区分,es会自动发现在同一网段下的es,配置成相同集群名字的各个节点形成一个集群。如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。
2、http.port
设置对外服务的http端口,默认为9200。不能相同,否则会冲突。
安装实践
集群将部署3个节点:
节点1:
cluster.name:es_cluster
http.port:19200
节点2:
cluster.name:es_cluster
http.port:29200
节点3:
cluster.name:es_cluster
http.port:39200
集群配置
上文提到过,只要集群名相同,且机器处于同一局域网同一网段,es会自动去发现其他的节点。
配置完成,启动三个es节点
我们通过es命令查看集群状态
curl '192.168.0.10:19200/_cat'
打印
/_cat/allocation
/_cat/shards
/_cat/shards/{index}
/_cat/master
/_cat/nodes
/_cat/indices
/_cat/indices/{index}
/_cat/segments
/_cat/segments/{index}
/_cat/count
/_cat/count/{index}
/_cat/recovery
/_cat/recovery/{index}
/_cat/health
/_cat/pending_tasks
/_cat/aliases
/_cat/aliases/{alias}
/_cat/thread_pool
/_cat/plugins
/_cat/fielddata
/_cat/fielddata/{fields}
/_cat/nodeattrs
/_cat/repositories
/_cat/snapshots/{repository}
[chao@master elasticsearch-2.3.1]$ curl '192.168.0.10:19200/_cat/health?v'
epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
ElasticSearch的集群我还是以elasticsearch-2.3.1版本为例。在开始集群搭建之前,我先给大家一点建议,在看elasticsearch-2.3.1的配置文件之前,先看elasticsearch低版本的配置文件,例如:1.6,因为低版本的配置文件的英文解释比较多,而且比较透彻,学习更加简单。下面我们来搭建一个简单的集群。
下载es 链接(http://download.csdn.net/download/u011192458/9941341)
elasticsearch的config文件夹里面有两个配置文件:elasticsearch.yml和logging.yml,第一个是es的基本配置文件,第二个是日志配置文件,es也是使用log4j来记录日志的,所以logging.yml里的设置按普通log4j配置文件来设置就行了。
打开elasticsearch.yml的第一眼,配置文件的实例非常的简单,我们主要讲两点:
1、cluster.name
配置es的集群名称,默认是elasticsearch,不同的集群用名字来区分,es会自动发现在同一网段下的es,配置成相同集群名字的各个节点形成一个集群。如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。
2、http.port
设置对外服务的http端口,默认为9200。不能相同,否则会冲突。
安装实践
集群将部署3个节点:
节点1:
cluster.name:es_cluster
http.port:19200
节点2:
cluster.name:es_cluster
http.port:29200
节点3:
cluster.name:es_cluster
http.port:39200
集群配置
上文提到过,只要集群名相同,且机器处于同一局域网同一网段,es会自动去发现其他的节点。
配置完成,启动三个es节点
我们通过es命令查看集群状态
curl '192.168.0.10:19200/_cat'
打印
/_cat/allocation
/_cat/shards
/_cat/shards/{index}
/_cat/master
/_cat/nodes
/_cat/indices
/_cat/indices/{index}
/_cat/segments
/_cat/segments/{index}
/_cat/count
/_cat/count/{index}
/_cat/recovery
/_cat/recovery/{index}
/_cat/health
/_cat/pending_tasks
/_cat/aliases
/_cat/aliases/{alias}
/_cat/thread_pool
/_cat/plugins
/_cat/fielddata
/_cat/fielddata/{fields}
/_cat/nodeattrs
/_cat/repositories
/_cat/snapshots/{repository}
[chao@master elasticsearch-2.3.1]$ curl '192.168.0.10:19200/_cat/health?v'
epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1503130660 16:17:40 es_cluster green 3 3 0 0 0 0 0 0 - 100.0%
后续深入es研究......