Проект

Общее

Профиль

Создание виртуальных машин Linux » История » Версия 11

Версия 10 (Владимир Ипатов, 09.03.2016 04:21) → Версия 11/19 (Dmitry Chernyak, 07.07.2016 01:09)

h1. Создание виртуальных машин

{{toc}}

[[УСТАНОВКА]] | [[СБОРКА-ISO]] | [[НАСТРОЙКА]] | [[ОПЕРАЦИИ]] | [[ЛИЦЕНЗИЯ]] | [[СОСТОЯНИЕ]]
in English:
[[OVERVIEW]] | [[INSTALL]] | [[BUILD-ISO]] | [[SETUP]] | [[OPERATIONS]] | [[GITMAGIC]] | [[LICENSE]]
[[ОБЗОР]]
| [[УСТАНОВКА]] | [[НАСТРОЙКА]] | [[ОПЕРАЦИИ]] | [[ЛИЦЕНЗИЯ]] [[STATUS]]

h2. Создание новой виртуальной машины Debian

Новая виртуальная машина на узле NODE1 с вторичным узлом NODE2, с одним диском на 10гб и с 256МБ RAM.
INSTANCE_NAME должен резолвиться в DNS или /etc/hosts.
<pre>
gnt-instance add -t drbd -o debootstrap+default -s 10g -B memory=256m -n NODE1:NODE2 INSTANCE_NAME
</pre>

Более сложный пример: создание машины
* На ноде gnt2
* С вторичной нодой gnt1
* С тремя дисками
** 10g on volume group xenvg
** 600m on volume group xenvg (например, для swap)
* 5g on volume group newvg
* DNS имя: vg-test1
* IP адрес выяснится автоматически из DNS резолвингом vg-test1, а настройки сети будут взяты для подходящей подсети из @/etc/ganeti/networks@.

<pre>
gnt-instance add -t drbd -o debootstrap+default --disk 0:size=10g,vg=xenvg --disk 1:size=600m,vg=xenvg --disk 2:size=5g,vg=newvg,metavg=newvg -B memory=256m -n gnt2:gnt1 vg-test1
</pre>

Обратите внимание, что если диск задается на VG, отличной от умолчания (в примере - newvg) то надо также указывать параметн metavg

h3. SSH

Для подключения к вртуальной машине по ssh из Windows нужно скачать клиент putty: http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe

Все новые машины, включая *sci*, создаются с пустым паролем root и без ssh-сервера.

Чтобы активировать ssh-сервер:
* Залогиньтесь в консоль используя команду @gnt-instance console INSTANCE@, и введите имя @root@
* Введите команду @passwd@ и назначьте пароль
* Установите ssh сервер:
<pre>
apt-get install openssh-server
</pre>

h2. Импорт виртуальной машины

Например, вы имеете образ, tar или какой-то еще архив с машиной с другого XEN сервера (или физической машины).
Для того, чтобы запустить ее в кластере SCI, нужно

h3. Создайте виртуальную машину с флагом --no-install

<pre>
gnt-instance add -t drbd -B memory=5192m -n NODE1:NODE2 -o debootstrap+default --no-install --no-name-check --no-ip-check --net=0:link=xen-lan --disk 0:size=4G --disk 1:size=1024M --disk 2:size=100G --disk 3:size=50G INSTANCE_NAME
</pre>
--no-namecheck Используется когда имя машины не резолвится в ip (может резолвится через DNS или /etc/hosts).
--no-ip-check Используется, когда ip не предоставляется на этапе создания машины.

h3. Активируйте дисковую систему машины, без ее запуска

<pre>
gnt-instance activate-disks INSTANCE_NAME
</pre>

эта команда напишет имена устройств для доступа к дискам.

h3. Скопируйте на диски имеющуюся файловую систему

*Примечание:* Диски в ganeti представляют собой не разделы (партиции) /dev/xvda1, а именно диски с таблицей разделов /dev/xvda.
Перед копированием информации на такой диск, на нем надо создать таблицу разделов и дисковый раздел. Для этого:

1. Используйте команду
<pre>
fdisk DISK
</pre>

(укажите ей путь к диску, который выдала команда activate-disks)

2. Смонтируйте раздел внутри диска командой
<pre>
kpartx -a DISK
</pre>

она найдет на диске разделы и создаст устройства в /dev

3. После завершения копирования и отмонтирования раздела выполните

<pre>
kpartx -d DISK
</pre>

h3. Запустите виртуальную машину

Наконец можно погасить диски и запустить виртуальную машину:
<pre>
gnt-instance deactivate-disks INSTANCE_NAME
gnt-instance startup INSTANCE_NAME
</pre>



h2. Установка других вариантов Linux

h3. Установка Ubuntu

Для Ubuntu подготовлен os variant ubootstrap+default.
Для создания машины с ubuntu нужно запустить команду наподобие этой:
<pre>
gnt-instance add -t drbd -o ubootstrap+default -s 4g -B memory=512m -n gnt1:gnt2 ubuntu
</pre>

h3. Установка CentOS

Для создания машины с CentOS нужно запустить команду наподобие этой:
<pre>
gnt-instance add -t drbd -o yumbootstrap+default -s 4g -B memory=512m -n gnt1:gnt2 centos
</pre>



h2. Управление виртуальными машинами

Всевозможные простые операции:
<pre>
gnt-instance (startup|shutdown|reboot|failover|remove|console) INSTANCE
</pre>