elasticsearch 小总结

elasticsearch 小总结

0. 起因

距离初次写关于es的文章 https://blog.csdn.net/aca_jingru/article/details/44488703 已经过去4年多了。。有必要更新一下了。把小tips总结一下。比较浅显。

1. 安装规划配置

规划分软件配置和硬件配置,
首先硬件,内存方面推荐是8g 的heap size ,那么整个系统就考虑16G的了。
现在用云的话不够就可以升级了,但是还是要凭经验规划好,重启一次节点可是非常耗时的。硬盘推荐ssd或者高效云盘。
硬盘最好做lvm,这样可以无感扩磁盘。es是支持对数据节点多目录的,但是没试过,不知道有没有什么坑。

操作系统建议centos7 ,都9102年了,你再用个centos6,那就真的无话可说了。

jdk方面openjdk8 就可以很顺畅的跑了。jdk的gc 不要乱改。这是官方一再强调的。

软件方面,详细配置可以看官网https://www.elastic.co/guide/en/elasticsearch/reference/current/important-settings.html

最后贴一个es maser节点的配置

cluster.name: my-ems
node.name: master-1
path.data: /vdb/lib/elasticsearch
path.logs: /vdb/log/elasticsearch
http.host: 0.0.0.0
discovery.zen.ping.unicast.hosts: ["ip1,"ip2"]
transport.host: 0.0.0.0
node.master: true
node.data: false
discovery.zen.minimum_master_nodes: 2

数据节点跟他类似,不说了。

2. es滚动升级

这个非常重要,总不可能中断服务升级吧。

英文原文https://www.elastic.co/guide/en/elasticsearch/reference/current/rolling-upgrades.html

适用于升级的情况,主要点是在关节点前禁止shard allocation

默认情况下,关了es节点,经过index.unassigned.node_left.delayed_timeout(默认是一分钟) 后会进行

curl -X PUT "localhost:9200/_cluster/settings" -H 'Content-Type: application/json' -d'
{
  "persistent": {
    "cluster.routing.allocation.enable": "primaries"
  }
}
'

stop elasticsearch, 然后 设置

curl -X PUT "localhost:9200/_cluster/settings" -H 'Content-Type: application/json' -d'
{
  "persistent": {
    "cluster.routing.allocation.enable": null
  }
}
'

注意要等一个节点完全起来了再操作另外节点,不然可是会有丢数据的情况。

4. data节点master节点分离

实践下来最好分开,这样每次node节点重启并不会发生master 选举的情况,而且master 和data 节点都要用heap 内存,之前的实践来看如果内存不够大,会频繁gc ,影响master效率。

5. 运维工具使用

salt,ansible,fabric,puppet,chef等 这种挑一种熟练掌握就行了,官方提供了3个解决方案,https://www.elastic.co/guide/en/elasticsearch/reference/current/install-elasticsearch.html ,puppet,chef,ansible 。个人觉得有点重,喜欢自己写。

6. 队列使用

之前还是使用redis, 确实方便调试,但是现在是9102年,不用kafka这种神器有点说不过去了,
kafka 的使用上面我的经验是手动创建topic ,指定大一点的分区。为了ha 最好是3节点的集群。硬件无特别注意之处。kafka对硬件的要求真的很小。
redis的话很容易爆内存。redis也没啥特别好的ha方案。

7. 监控

kibana 自带的一个es的监控非常好用,可以看index速度,jdk gc情况。
另外如果使用了kafka的话最好接入promethues+grafana+alertmanager 。

posted @ 2019-04-07 10:57  过去的我  阅读(183)  评论(1编辑  收藏  举报