Проект

Общее

Профиль

Перенос виртуальной машины на другую vg » История » Версия 2

Версия 1 (Владимир Ипатов, 03.03.2021 22:13) → Версия 2/8 (Владимир Ипатов, 03.03.2021 22:14)

h1. Перенос виртуальной машины на другую vg



h2. Виртуальная машина на одном узле

Данная операция является потенциально опасной, следует выполнять ее только при полном понимании описываемых операций и последствий.
Данная операция требует остановки машины на все время копирования содержимого.

h3. Подготовка

Получить информацию о машине:
<pre>
gnt-instance info ИМЯ
</pre>

Больше всего будет интересовать информация о диске:

Например:
<pre>
Disks:
- disk/0: plain, size 10.0G
access mode: rw
logical_id: xenvg/8aea288f-37ad-4cd0-8a76-1e36f4da32cb.disk0
on primary: /dev/xenvg/8aea288f-37ad-4cd0-8a76-1e36f4da32cb.disk0 (253:9)
name: None
UUID: 3c7fb626-21d2-4e99-9365-6639a13456b5
</pre>

Выключить машину

<pre>
gnt-instance shutdown ИМЯ
</pre>

На мастер узле остановить ganeti-watcher, ganeti:
<pre>
service ganeti-watcher stop
service ganeti stop
</pre>
Сделать резервную копию конфига ganeti.
<pre>
cp /var/lib/ganeti/config.data ~/
</pre>

берем имя тома из информации об инстансе, после /
<pre>
в нашем случае это 8aea288f-37ad-4cd0-8a76-1e36f4da32cb.disk0
</pre>

Копируем в буфер обмена

Также из информации об инстансе берем точный размер тома

создаем том с таким же именем на новой vg (здесь она будет называться ssd)

<pre>
lvcreate -L10G -n 8aea288f-37ad-4cd0-8a76-1e36f4da32cb.disk0 ssd
</pre>

открываем файл /var/lib/ganeti/config.data, ищем по данному имени, находим блок наподобие этого (json упакован без отступов и перевода строки, читать неудобно, так что нужно пользоваться поиском по подстроке):

<pre>

"disks": [{"logical_id": ["xenvg", "8aea288f-37ad-4cd0-8a76-1e36f4da32cb.disk0"], "uuid": "3c7fb626-21d2-4e99-9365-6639a13456b5", "dev_type": "plain", "params": {}, "mode": "rw", "iv_name": "disk/0", &quot;disk/0
&quot;,
"size": 10240}]
</pre>

вот указание vg и имени тома:

<pre>
{"logical_id": ["xenvg", "8aea288f-37ad-4cd0-8a76-1e36f4da32cb.disk0"],
</pre>

В нем меняем vg "xenvg" на "ssd"

Сохраняем файл.

Запускаем ганети:
<pre>
service ganeti start
</pre>

Если в кластере более одного узла, то запускаем копирование конфигурации:
<pre>
gnt-cluster redist-conf
</pre>

проверяем, применились ли изменения, с помощью команды info:

<pre>
gnt-instance info ИМЯ
</pre>

Если все в порядке, то запускаем машину и ganeti-watcher
<pre>
gnt-instance startup ИМЯ
service ganeti-watcher start
</pre>

Эта операция производится только для маши

1) остано