Проект

Общее

Профиль

2017-Переключение мастера » История » Версия 3

Евгений Антонов, 15.09.2017 13:04

1 1 Евгений Антонов
h1. 2017-Переключение мастера
2 1 Евгений Антонов
3 1 Евгений Антонов
Master-узел -это узел кластера, с которого осуществяется управление всем кластером
4 1 Евгений Антонов
Бывают ситуации, когда необходимо перенести эту роль на другую ноду.
5 1 Евгений Антонов
Что-бы узнать,какая нода в данный момент является мастером выполните команду :
6 1 Евгений Антонов
<pre>
7 1 Евгений Антонов
gnt-cluster getmaster
8 1 Евгений Антонов
</pre>
9 1 Евгений Антонов
Такие ситуации :
10 1 Евгений Антонов
11 1 Евгений Антонов
# Штатное переключение мастера
12 1 Евгений Антонов
13 1 Евгений Антонов
Оба узла запущены, смена master-узла производится в штатном режиме.
14 1 Евгений Антонов
На ноде-кандидате (gntX):
15 1 Евгений Антонов
<pre>
16 1 Евгений Антонов
gntX# gnt-cluster master-failover
17 1 Евгений Антонов
</pre>
18 1 Евгений Антонов
!masterfne.png!
19 1 Евгений Антонов
20 1 Евгений Антонов
# Нештатное мереключение мастера
21 1 Евгений Антонов
Управляющая нода стала недоступна(любой аппаратный сбой,отключение света и пр.)
22 1 Евгений Антонов
23 1 Евгений Антонов
Основной узел (в примере - gnt1) оказывается выключен в результате аппаратной аварии.
24 1 Евгений Антонов
Запустить управляющий демон на узле master-candidate (gnt2):
25 1 Евгений Антонов
<pre>
26 1 Евгений Антонов
su - gnt-masterd -s /bin/bash -c "/usr/sbin/ganeti-masterd --no-voting" 
27 1 Евгений Антонов
</pre>
28 1 Евгений Антонов
29 1 Евгений Антонов
Пометить отключенный узел offline, чтобы master в него не долбился
30 1 Евгений Антонов
-С = master-candidate
31 1 Евгений Антонов
-O = offline
32 1 Евгений Антонов
<pre>
33 1 Евгений Антонов
gnt2# gnt-node modify -C no -O yes gnt1
34 1 Евгений Антонов
</pre>
35 1 Евгений Антонов
36 1 Евгений Антонов
Запустить все виртуалки отключенного узла на резервном:
37 1 Евгений Антонов
<pre>
38 1 Евгений Антонов
gnt-node failover --ignore-consistency gnt1
39 1 Евгений Антонов
</pre>
40 3 Евгений Антонов
41 3 Евгений Антонов
#Возврат основного узла после отключения
42 3 Евгений Антонов
43 3 Евгений Антонов
Старый основной узел не будет автоматически запускать управляющего демона.
44 3 Евгений Антонов
-если не найдет парного узла,
45 3 Евгений Антонов
-если найдет парный узел и узнает, что он стал новым master-ом.
46 3 Евгений Антонов
Если при отключении узла он помечался как offline (см. выше), то надо вернуть его в строй:
47 3 Евгений Антонов
<pre>
48 3 Евгений Антонов
gnt2# gnt-node modify -C yes -O no gnt1
49 3 Евгений Антонов
</pre>
50 3 Евгений Антонов
Если на узле сохранились данные, то для включения его обратно в кластер:
51 3 Евгений Антонов
52 3 Евгений Антонов
Скопировать на него свежую конфигурацию с нового master-а
53 3 Евгений Антонов
<pre>
54 3 Евгений Антонов
gnt# gnt-cluster redist-conf
55 3 Евгений Антонов
</pre>
56 3 Евгений Антонов
Запустить на нем ganeti-демоны
57 3 Евгений Антонов
<pre>
58 3 Евгений Антонов
gntX# /etc/init.d/ganeti restart
59 3 Евгений Антонов
</pre>