Elasticsearch集群部署

    Elasticsearch经常和日志分析工具Logstash配合使用,用于收集系统日志。随着服务的运行,日志文件会积累的越来越多,ES会占用很大的内存,影响了日志的查询。这时候就需要考虑搭建ES的集群服务。

    在本地尝试了下ES的集群部署,也花了一些时间,故记录下来,方便后面使用时查看。

    ES版本:elasticsearch-2.4.6 , Logstash版本:logstash-2.0.0

    本地环境JDK版本:1.7.0_02 (Win 64), 虚拟机JDK版本:1.7.0_76(Ubuntu)

-----------------------------------------------------------------------------------------------------------

1、更改ES配置文件

找到elasticsearch-2.4.6\config下的elasticsearch.yml文件,更改一些默认配置。

cluster.name: peng-es   # 集群名称,默认为elasticsearch。要实现集群,集群名称必须一致

node.name: Node One  # 节点名,两个ES服务取不同的名称
node.master: true          # 作为主节点,每个节点都可以被配置成为主节点,默认值为true

node.data: true              # 存储数据,即存储索引片段,默认值为true

network.host: 192.168.0.0   # 节点绑定IP,并且将节点通知集群中的其他节点,使用本地IP

discovery.zen.ping.unicast.hosts: ["192.168.0.0", "192.168.0.1"]  # 初始集群中节点列表,当前节点将尝试联系其他节点

discovery.zen.minimum_master_nodes: 1  # 设置一个集群中主节点的数量,一般设置为 N/2 + 1,N是有资格成为Master节点的数量

两台服务器上的ES配置更改完毕,接下来可以测试下了

2、启动本地的ES服务,打开head管理页面(集群管理工具head插件需提前安装),可以看到集群中只有一个节点


3、启动虚拟机中的ES服务,打开head管理页面


能发现,新启动的ES服务加入了集群中了。五星表示主节点,圆圈表示工作节点。

4、启动Logstash服务,分析日志,存储到指定的ES。Logstash如果不指定ES的IP和端口号,默认的存储的是127.0.0.1:9200。

我们指定数据存储到虚拟机的ES服务,增加:hosts => "192.168.0.1:9200"

5、刷新页面,能发现数据在集群中的节点分片存储(分片中,粗黑框表示主分片)


6、关闭虚拟机中的ES服务,刷新页面,发现集群中只有一个节点,数据全在这个节点的分片中存储


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值