Fix elasticsearch curator limits

Base the curator index limits on double the provisioned
volume size on the data nodes, assuming a dual controller config.
Curator will poll elasticsearch for the number of running data nodes
and adjust accordingly for the case of AIO-SX or when there is a
locked controller node.

Change-Id: Idf424994bf6beb0ea1af51f97469a864410907f6
Closes-Bug: 1852466
Closes-Bug: 1852462
Depends-On: https://review.opendev.org/#/c/694816/
Signed-off-by: Kevin Smith <kevin.smith@windriver.com>
This commit is contained in:
Kevin Smith 2019-11-22 09:11:34 -05:00
parent 016358a3b6
commit 265525fc70
1 changed files with 8 additions and 0 deletions

View File

@ -52,6 +52,14 @@ class ElasticsearchCuratorHelm(elastic.ElasticBaseHelm):
except Exception as e:
LOG.warn("Cannot parse elasticsearch-data volume size: %s" % e)
# Elasticsearch reports index size back to curator calculated over all
# shards on all data nodes, so multiply by 2 as it is configured for
# 2 shards per index (primary and replica, on 1 data node each).
# If only one data node is present (AIO-SX or locked controller in a
# dual controller config), curator will make the adjustment, and factor
# down its given index size limits.
data_volume_size_gb = 2 * data_volume_size_gb
# Give 50% of elasticsearch data volume
# to filebeat, 40% to metricbeat and 10% to collectd, all
# modified by a safety margin due to cronjob running every 6 hours.