Проект

Общее

Профиль

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

Владимир Ипатов, 09.03.2016 04:21

1 1 Dmitry Chernyak
h1. Создание виртуальных машин
2 1 Dmitry Chernyak
3 2 Dmitry Chernyak
{{toc}}
4 2 Dmitry Chernyak
5 2 Dmitry Chernyak
[[УСТАНОВКА]] | [[СБОРКА-ISO]] | [[НАСТРОЙКА]] | [[ОПЕРАЦИИ]] | [[ЛИЦЕНЗИЯ]] | [[СОСТОЯНИЕ]]
6 2 Dmitry Chernyak
in English: [[OVERVIEW]] | [[INSTALL]] | [[BUILD-ISO]] | [[SETUP]] | [[OPERATIONS]] | [[GITMAGIC]] | [[LICENSE]] | [[STATUS]]
7 2 Dmitry Chernyak
8 1 Dmitry Chernyak
h2. Создание новой виртуальной машины Debian
9 1 Dmitry Chernyak
10 1 Dmitry Chernyak
Новая виртуальная машина на узле NODE1 с вторичным узлом NODE2, с одним диском на 10гб и с 256МБ RAM.
11 1 Dmitry Chernyak
INSTANCE_NAME должен резолвиться в DNS или /etc/hosts.
12 1 Dmitry Chernyak
<pre>
13 1 Dmitry Chernyak
gnt-instance add -t drbd -o debootstrap+default -s 10g -B memory=256m -n NODE1:NODE2 INSTANCE_NAME
14 1 Dmitry Chernyak
</pre>
15 1 Dmitry Chernyak
16 1 Dmitry Chernyak
Более сложный пример: создание машины
17 1 Dmitry Chernyak
* На ноде gnt2
18 1 Dmitry Chernyak
* С вторичной нодой gnt1
19 1 Dmitry Chernyak
* С тремя дисками
20 1 Dmitry Chernyak
** 10g on volume group xenvg
21 1 Dmitry Chernyak
** 600m on volume group xenvg (например, для swap)
22 1 Dmitry Chernyak
* 5g on volume group newvg
23 1 Dmitry Chernyak
* DNS имя: vg-test1
24 1 Dmitry Chernyak
* IP адрес выяснится автоматически из DNS резолвингом vg-test1, а настройки сети будут взяты для подходящей подсети из @/etc/ganeti/networks@.
25 1 Dmitry Chernyak
26 1 Dmitry Chernyak
<pre>
27 9 Dmitry Chernyak
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
28 1 Dmitry Chernyak
</pre>
29 9 Dmitry Chernyak
30 9 Dmitry Chernyak
Обратите внимание, что если диск задается на VG, отличной от умолчания (в примере - newvg) то надо также указывать параметн metavg
31 1 Dmitry Chernyak
32 1 Dmitry Chernyak
h3. SSH
33 1 Dmitry Chernyak
34 4 Dmitry Chernyak
Для подключения к вртуальной машине по ssh из Windows нужно скачать клиент putty: http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe
35 4 Dmitry Chernyak
36 4 Dmitry Chernyak
Все новые машины, включая *sci*, создаются с пустым паролем root и без ssh-сервера.
37 4 Dmitry Chernyak
38 4 Dmitry Chernyak
Чтобы активировать ssh-сервер:
39 4 Dmitry Chernyak
* Залогиньтесь в консоль используя команду @gnt-instance console INSTANCE@, и введите имя @root@
40 4 Dmitry Chernyak
* Введите команду @passwd@ и назначьте пароль
41 4 Dmitry Chernyak
* Установите ssh сервер:
42 1 Dmitry Chernyak
<pre>
43 1 Dmitry Chernyak
apt-get install openssh-server
44 1 Dmitry Chernyak
</pre>
45 3 Владимир Ипатов
46 4 Dmitry Chernyak
47 3 Владимир Ипатов
48 1 Dmitry Chernyak
h2. Импорт виртуальной машины
49 1 Dmitry Chernyak
50 1 Dmitry Chernyak
Например, вы имеете образ, tar или какой-то еще архив с машиной с другого XEN сервера (или физической машины).
51 8 Dmitry Chernyak
Для того, чтобы запустить ее в кластере SCI, нужно
52 8 Dmitry Chernyak
53 8 Dmitry Chernyak
h3. Создайте виртуальную машину с флагом --no-install
54 8 Dmitry Chernyak
55 1 Dmitry Chernyak
<pre>
56 1 Dmitry Chernyak
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
57 1 Dmitry Chernyak
</pre>
58 1 Dmitry Chernyak
--no-namecheck Используется когда имя машины не резолвится в ip (может резолвится через DNS или /etc/hosts).
59 1 Dmitry Chernyak
--no-ip-check Используется, когда ip не предоставляется на этапе создания машины.
60 1 Dmitry Chernyak
61 8 Dmitry Chernyak
h3. Активируйте дисковую систему машины, без ее запуска
62 8 Dmitry Chernyak
63 1 Dmitry Chernyak
<pre>
64 1 Dmitry Chernyak
gnt-instance activate-disks INSTANCE_NAME
65 1 Dmitry Chernyak
</pre>
66 1 Dmitry Chernyak
67 1 Dmitry Chernyak
эта команда напишет имена устройств для доступа к дискам.
68 1 Dmitry Chernyak
69 8 Dmitry Chernyak
h3. Скопируйте на диски имеющуюся файловую систему
70 1 Dmitry Chernyak
71 8 Dmitry Chernyak
*Примечание:* Диски в ganeti представляют собой не разделы (партиции) /dev/xvda1, а именно диски с таблицей разделов /dev/xvda.
72 8 Dmitry Chernyak
Перед копированием информации на такой диск, на нем надо создать таблицу разделов и дисковый раздел. Для этого:
73 1 Dmitry Chernyak
74 8 Dmitry Chernyak
1. Используйте команду
75 1 Dmitry Chernyak
<pre>
76 8 Dmitry Chernyak
fdisk DISK
77 8 Dmitry Chernyak
</pre>
78 8 Dmitry Chernyak
79 8 Dmitry Chernyak
(укажите ей путь к диску, который выдала команда activate-disks)
80 8 Dmitry Chernyak
81 8 Dmitry Chernyak
2. Смонтируйте раздел внутри диска командой
82 8 Dmitry Chernyak
<pre>
83 1 Dmitry Chernyak
kpartx -a DISK
84 1 Dmitry Chernyak
</pre>
85 1 Dmitry Chernyak
86 1 Dmitry Chernyak
она найдет на диске разделы и создаст устройства в /dev
87 8 Dmitry Chernyak
88 8 Dmitry Chernyak
3. После завершения копирования и отмонтирования раздела выполните
89 8 Dmitry Chernyak
90 1 Dmitry Chernyak
<pre>
91 1 Dmitry Chernyak
kpartx -d DISK
92 1 Dmitry Chernyak
</pre>
93 8 Dmitry Chernyak
94 8 Dmitry Chernyak
h3. Запустите виртуальную машину
95 1 Dmitry Chernyak
96 1 Dmitry Chernyak
Наконец можно погасить диски и запустить виртуальную машину:
97 1 Dmitry Chernyak
<pre>
98 1 Dmitry Chernyak
gnt-instance deactivate-disks INSTANCE_NAME
99 1 Dmitry Chernyak
gnt-instance startup INSTANCE_NAME
100 1 Dmitry Chernyak
</pre>
101 1 Dmitry Chernyak
102 6 Dmitry Chernyak
h2. Установка других вариантов Linux
103 1 Dmitry Chernyak
104 7 Владимир Ипатов
h3. Установка Ubuntu
105 7 Владимир Ипатов
106 7 Владимир Ипатов
Для Ubuntu подготовлен os variant ubootstrap+default.
107 7 Владимир Ипатов
Для создания машины с ubuntu нужно запустить команду наподобие этой:
108 7 Владимир Ипатов
<pre>
109 7 Владимир Ипатов
gnt-instance add -t drbd -o ubootstrap+default -s 4g -B memory=512m -n gnt1:gnt2 ubuntu
110 7 Владимир Ипатов
</pre>
111 1 Dmitry Chernyak
112 10 Владимир Ипатов
h3. Установка CentOS
113 10 Владимир Ипатов
114 10 Владимир Ипатов
Для создания машины с CentOS нужно запустить команду наподобие этой:
115 10 Владимир Ипатов
<pre>
116 10 Владимир Ипатов
gnt-instance add -t drbd -o yumbootstrap+default -s 4g -B memory=512m -n gnt1:gnt2 centos
117 10 Владимир Ипатов
</pre>
118 10 Владимир Ипатов
119 1 Dmitry Chernyak
h2. Управление виртуальными машинами
120 1 Dmitry Chernyak
121 1 Dmitry Chernyak
Всевозможные простые операции:
122 1 Dmitry Chernyak
<pre>
123 1 Dmitry Chernyak
gnt-instance (startup|shutdown|reboot|failover|remove|console) INSTANCE
124 1 Dmitry Chernyak
</pre>