# Создание кластера Elasticsearch 7.2 из single-node с сохранением данных

**URL:** https://discuss.elastic.co/t/elasticsearch-7-2-single-node/253669
**Category:** Вопросы на русском языке
**Created:** [October 29, 2020, 10:00am UTC](https://discuss.elastic.co/t/elasticsearch-7-2-single-node/253669 "2020-10-29T10:00:59Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![zuser](https://avatars.discourse-cdn.com/v4/letter/z/f17d59/32.png) [@zuser](https://discuss.elastic.co/u/zuser)
#### Post date: [October 29, 2020, 10:00am UTC](https://discuss.elastic.co/t/elasticsearch-7-2-single-node/253669/1 "2020-10-29T10:00:59Z")

</div>

Доброго времени суток!  
Исходная такова, есть elasticsearch 7.2 в режиме single-node, с данными.  
Необходимо создать географически распределенный отказоустойчивый кластер из 2х мастер/дата нод и одной мастер ноды.

Прошу совета, как лучше реализовать перенос данных в кластер с минимальным перерывом в работе сервиса?

Представляю следующую последовательность действий:  
-перевести имеющуюся single-node в режим кластера, сделав её master и data-node одновременно  
-создать чистую master/data-node и чистую master node

- добавить их в кластер

Корректен ли сценарий? Возможна ли корректная репликация данных на вторую мастер/дата ноду?

---

<div class="post-metadata">

### Author: ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)
#### Post date: [October 30, 2020, 3:42pm UTC](https://discuss.elastic.co/t/elasticsearch-7-2-single-node/253669/2 "2020-10-30T15:42:53Z")

</div>

Elasticsearch не поддерживает географическое распределение внутри кластера. Тут надо смотреть в сторону [CCR](https://www.elastic.co/guide/en/elasticsearch/reference/current/xpack-ccr.html).

---

<div class="post-metadata">

### Author: ![zuser](https://avatars.discourse-cdn.com/v4/letter/z/f17d59/32.png) [@zuser](https://discuss.elastic.co/u/zuser)
#### Post date: [November 9, 2020, 3:38pm UTC](https://discuss.elastic.co/t/elasticsearch-7-2-single-node/253669/3 "2020-11-09T15:38:03Z")

</div>

Игорь, благодарю за ответ!  
Хорошо, отставить географическое распределение. В таком случае такой вопрос, возможно ли ввести вторую ноду в кластер, с целью организации отказоустойчивости в рамках одного ЦОДа? Как синхронизировать индексы из первой во вторую ноду?

---

<div class="post-metadata">

### Author: ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)
#### Post date: [November 9, 2020, 4:06pm UTC](https://discuss.elastic.co/t/elasticsearch-7-2-single-node/253669/4 "2020-11-09T16:06:22Z")

</div>

Зависит от того, какой уровень отказоустойчивости вам необходим. Если у вас будет мастер узел и два узла данных, то потеря мастер узла приведет к потере способности записи в кластер, но потеря одного узла данных на доступность данных не повлияет (хотя производительность кластера упадет на половину).

Другая альтернатива с 3-я узлами - это сделать их все узлами данных и мастерами. Такой кластер будет способен пережить отказ любого с 30% потерей в производительности. Одна проблема с этой конфигурацией - это перегрузка узла данных может оказывать влияние на мастер узел, что не очень желательно, поэтому мы и советуем отдельные мастер узлы. Но в вашем случае вы увеличиваете производительность кластера в 3 раза.

---

<div class="post-metadata">

### Author: ![zuser](https://avatars.discourse-cdn.com/v4/letter/z/f17d59/32.png) [@zuser](https://discuss.elastic.co/u/zuser)
#### Post date: [November 9, 2020, 4:21pm UTC](https://discuss.elastic.co/t/elasticsearch-7-2-single-node/253669/5 "2020-11-09T16:21:07Z")

</div>

Ресурсы на 3 узла данных будет сложно получить. Потому я склоняюсь к следующей схеме: 2 узла одновременно мастер и дата ноды, в дополнение к ним, третий узел - только мастер, для обеспечения механизма выборов.  
Идея с двумя дата узлами и тремя мастер узлами кажется избыточной по ресурсам, но очень интересна, было бы интересно, если бы вы пояснили, при каких сценариях перезагрузка дата/мастер ноды может повлиять на масетр ноду? Где то можно прочитать описание таких сценариев?

В большей степени меня интересует алгоритм репликации данных на другие ноды, не подскажете, как это лучше реализовать?

---

<div class="post-metadata">

### Author: ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)
#### Post date: [November 9, 2020, 5:01pm UTC](https://discuss.elastic.co/t/elasticsearch-7-2-single-node/253669/6 "2020-11-09T17:01:32Z")

</div>

> [@zuser](#):
>
> при каких сценариях перезагрузка дата/мастер ноды может повлиять на масетр ноду?

Например операции поиска и/или индексации заполнили все оперативную память и мастер не может выполнять свои функции. Мы добавили многочисленные меры защиты от такой ситуации, но она все еще может произойти.

> [@zuser](#):
>
> Где то можно прочитать описание таких сценариев?

[https://discuss.elastic.co/search?q=overloaded%20master%20order%3Alatest](https://discuss.elastic.co/search?q=overloaded%20master%20order%3Alatest)

и

> **[Resilience in small clusters | Elasticsearch Guide \[7.10\] | Elastic](https://www.elastic.co/guide/en/elasticsearch/reference/7.10/high-availability-cluster-small-clusters.html)**

> [@zuser](#):
>
> В большей степени меня интересует алгоритм репликации данных на другие ноды, не подскажете, как это лучше реализовать?

1. добавить вторую (и третью) ноду в кластер и убедиться, что у текущей ноду есть связь с новыми нодоами и они сформировали единый кластер. В зависимости от версии и дистрибутива, это может потребовать настройки TLS/SSL
2. На индексах для которых требуется реплицирование надо поставить `"number_of_replicas": 1`. Это можно сделать через [Update Index Settings API](https://www.elastic.co/guide/en/elasticsearch/reference/7.10/indices-update-settings.html)
3. все. теперь надо подождать немного пока кластер перераспределит данные по всем (двум) доступным нодам данных.

---

<div class="post-metadata">

### Author: ![zuser](https://avatars.discourse-cdn.com/v4/letter/z/f17d59/32.png) [@zuser](https://discuss.elastic.co/u/zuser)
#### Post date: [November 10, 2020, 8:38am UTC](https://discuss.elastic.co/t/elasticsearch-7-2-single-node/253669/7 "2020-11-10T08:38:27Z")

</div>

Премного благодарен за ответы!

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [December 8, 2020, 8:38am UTC](https://discuss.elastic.co/t/elasticsearch-7-2-single-node/253669/8 "2020-12-08T08:38:30Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
