Меню
  Список тем
  Поиск
Полезная информация
  Краткие содержания
  Словари и энциклопедии
  Классическая литература
Заказ книг и дисков по обучению
  Учебники, словари (labirint.ru)
  Учебная литература (Читай-город.ru)
  Учебная литература (book24.ru)
  Учебная литература (Буквоед.ru)
  Технические и естественные науки (labirint.ru)
  Технические и естественные науки (Читай-город.ru)
  Общественные и гуманитарные науки (labirint.ru)
  Общественные и гуманитарные науки (Читай-город.ru)
  Медицина (labirint.ru)
  Медицина (Читай-город.ru)
  Иностранные языки (labirint.ru)
  Иностранные языки (Читай-город.ru)
  Иностранные языки (Буквоед.ru)
  Искусство. Культура (labirint.ru)
  Искусство. Культура (Читай-город.ru)
  Экономика. Бизнес. Право (labirint.ru)
  Экономика. Бизнес. Право (Читай-город.ru)
  Экономика. Бизнес. Право (book24.ru)
  Экономика. Бизнес. Право (Буквоед.ru)
  Эзотерика и религия (labirint.ru)
  Эзотерика и религия (Читай-город.ru)
  Наука, увлечения, домоводство (book24.ru)
  Наука, увлечения, домоводство (Буквоед.ru)
  Для дома, увлечения (labirint.ru)
  Для дома, увлечения (Читай-город.ru)
  Для детей (labirint.ru)
  Для детей (Читай-город.ru)
  Для детей (book24.ru)
  Компакт-диски (labirint.ru)
  Художественная литература (labirint.ru)
  Художественная литература (Читай-город.ru)
  Художественная литература (Book24.ru)
  Художественная литература (Буквоед)
Реклама
Разное
  Отправить сообщение администрации сайта
  Соглашение на обработку персональных данных
Другие наши сайты
Приглашаем посетить
  Почтовые индексы (post.niv.ru)

   

Створення віртуальної мережі з віддаленим завантаженням вузлів

Створення вiртуальної мережi з вiддаленим завантаженням вузлiв

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

КРАСНОДОНСЬКИЙ ПРОМИСЛОВО ЕКОНОМІЧНИЙ КОЛЕДЖ

Реферат з предмету

Операцiйнi системи

Створення вiртуальної мережi з вiддаленим завантаженням вузлiв

Студента групи 1ОКІСМ-06

Краснодон

2009

Змiст

Введення

1. Загальнi вiдомостi

3. Налаштування клiєнта

3. 2 Запис образу завантаження

4. Налаштування сервера

4. 1 Установка операцiйної системи

4. 2 Налаштування адаптера eth0

4. 3 Налаштування DHСP

4. 4 Налаштування FTP i TFTP

4. 5 Настройка DNS

4. 6 Створення ядра

4. 8 Налаштування файлової системи для клiєнта

Висновок

Введення

Завантаження по мережi надає адмiнiстраторам ряд переваг, серед яких:

· легкiсть установки нового ПЗ;

· централiзоване адмiнiстрування;

· можливiсть вiдмови вiд встановлення жорстких дискiв на клiєнтськi комп'ютери, що призводить до пiдвищення надiйностi системи i зниженню її вартостi.

У данiй статтi ми розглянемо органiзацiю процесу такої завантаження. Для зручностi проведення експериментiв будемо працювати не з фiзичними комп'ютерами, а з вiртуальними, для реалiзацiї яких використовуємо пакет VMware Workstation (використовувалася версiя 4. 0), встановлений в ОС Windows 2000 SP4.

Ідея мережевий завантаження полягає в наступному [1]. Комп'ютер (клiєнт) має в енергонезалежнiй пам'ятi (на жорсткому диску, на дискетi) деякий початковий код завантаження, який дозволяє з'єднатися з iншим комп'ютером (сервером), завантажити з нього ядро, а також використовувати його файлову систему. Таким чином, на клiєнтi може взагалi бути вiдсутнiм жорсткий диск.

1. Пiсля iнiцiалiзацiї завантажувач визначає необхiднi IP-адреси: свiй, сервера, шлюзу. Вони запитуються по BOOTP або DHCP.

2. Отримавши вiдповiдь вiд сервера, вiн iнiцiалiзує процес завантаження ядра по протоколу TFTP.

3. Ядро пiдключає файлову систему. Вона може знаходиться на жорсткому диску клiєнта, в пам'ятi клiєнта, або пiдключатися з сервера по протоколу NFS.

по DHCP, операцiйна система клiєнта i сервера - Debian (версiя ядра - 2. 4. 18). Пiдключення кореневої файлової системи здiйснимо двома способами: за NFS i з RAM-диска.

2. Створення вiртуальних комп'ютерiв

Запустимо VMware workstation i натиснемо Ctrl + N для створення нового вiртуального комп'ютера. Далi, вибираємо:

· Virtual machine configuration: Custom;

· Network connection: Use host-only networking;

· Disk: Create a new virtual disk;

· Disk size (GB): 0,1;

Необхiдно зробити зауваження щодо пам'ятi. За замовчуванням, в VMware дiють обмеження на використовувану вiртуальними комп'ютерами пам'ять. Так, якщо на комп'ютерi встановлено 256 Мб пам'ятi, то вiртуальнi комп'ютери не можуть використовувати бiльш 192 Мб. Оскiльки буде необхiдно одночасно запускати клiєнтський i серверний комп'ютери, кожному з них не можна видiлити бiльше 80 Мб (по 16 Мб потрiбно самiй VMware на запуск кожного вiртуального комп'ютера). Для трьох вiртуальних комп'ютерiв це обмеження опускається до 48 Мб. Змiнити лiмiт за замовчуванням можна в меню Edit пункт Application Settings..., вкладка Memory. Виконавши цю операцiю ще двiчi, замiнюючи Client на Server i на Work, вибравши розмiр жорсткого диска 1,0 i 0,5 вiдповiдно, створюємо вiртуальний сервер i робочий вiртуальнi комп'ютери. Набудуємо обладнання кожного вiртуального комп'ютера. Це можна зробити, вибравши в контекстному меню вiдповiдного комп'ютера пункт Edit..., вкладка Hardware. У клiєнта видалимо Hard Disk 1, CD-ROM 1, USB Controller i Audio; у сервера i робочої комп'ютерiв - Floppy 1, USB Controller i Audio. Додамо серверу другу мережеву картку, встановивши для неї тип NAT. Тепер необхiдно вiдредагувати налаштування мережi, для чого виберемо пункт Virtual Network Setting... меню Edit. Перейдемо на закладку DHCP, виберемо адаптер VMnet1 i натиснемо кнопку Remove. Таким чином ми вiдключаємо службу DHCP вiд адаптера VMnet1 (до якого за замовчуванням будуть пiдключенi вiртуальнi комп'ютери), тому що ми будемо налаштовувати її на серверi спецiальним чином. Для подальших налаштувань нам необхiдно знати IP адреса адаптера VMnet1. Переглянути його можна, виконавши команду ipconfig у командному рядку ОС Windows. У мене вiн такий: 192. 168. 223. 1

3. 1 Створення образу завантаження

Для створення образу завантажувача скористаємося вiльно поширюваним пакетом Etherboot. Створити образ можна вручну, за допомогою утилiт, що входять в пакет. Однак ми використовуємо сервiс, що надаються сервером ROM-o-matic.net. Тут можна вибрати тип своєї карти за допомогою стандартного Web-iнтерфейсу i зробити необхiднi налаштування, а сервер автоматично згенерує образ завантажувача й запропонує його завантажити.

При написаннi документа користувалася версiя 5. 2. 5 пакету ROM-o-matic. Для створення образу необхiдно:

2. вибрати формат завантажувача (залежить вiд того, куди ви хочете помiстити код завантажувача);

3. призвести, якщо потрiбно, додаткову настройку завантажувача, натиснувши кнопку Configure;

4. натиснути кнопку Get ROM i скачати замовлений образ.

VMware 4. 0 емулює мережеву картку AMD 79c970 PCnet LANCE, тому в першому пунктi виберемо pcnet32: lancepci, у другому - Floppy bootable ROM Image, натиснемо кнопку Get ROM i збережемо образ завантажувача в C: \ Temp \ boot. img.

3. 2 Запис образу завантаження

Образ завантажувача може зчитуватися комп'ютером з жорсткого диска, дискети або з вбудованої FLASH пам'ятi мережевої карти. Останнiй варiант - найбiльш зручний, але перш нiж записувати завантажувач пiд FLASH, необхiдно переконається в його працездатностi. Тому, для тестування, ми запишемо завантажувач на дискету.

i пристрiй для запису.

Вставимо чисту дискету в дисковод A i дамо команду: тrawrite2-f C: \ Temp \ boot. img-d a

Тепер можна спробувати завантажити клiєнтський комп'ютер (вибравши його у списку та натиснувши Ctrl + B). Завантаження зупиниться на повiдомленнi Searching for server (DHCP ).... Пiсля слова lancepci буде вiдображений MAC адресу мережевої карти, у мене вiн такий: 00:0 C: 29: E6: 36: BC. Запишемо його, вiн стане в нагодi при налаштуваннi DHCP.

4. Налаштування сервера

4. 1 Установка операцiйної системи

Для установки ОС необхiдний дистрибутив, що складається мiнiмум з двох дискiв. Вставте перший диск дистрибутиву Debian у пристрiй для читання дискiв та запустiть вiртуальний сервер. На запрошення boot: введiть vanilla i натиснiть Enter. Це запустить iнсталяцiю з ядром, що пiдтримує безлiч пристроїв, у тому числi SCSI пристрої. Далi установка проходить у звичайному режимi. Пiдтримка мережi повинна бути встановлена обов'язково. Якщо Debian знайде мережеву картку, то вiн автоматично запропонує вам налаштувати мережу. Якщо ж цього не станеться, необхiдно вибрати драйвер мережевої картки вручну (pcnet32). Кiлька слiв про налаштування мережi. Задамо iм'я комп'ютера (hostname): server. Як iнтерфейс для встановлення Debian через NFS або HTTP виберемо eth1. На питання про автоматичної конфiгурацiї по DHCP вiдповiмо згодою. Пiсля установки ядра системи i драйверiв вiдбудеться перезавантаження. Інсталятор Debian задасть кiлька стандартних запитань з настроювання системи, а потiм запропонує встановити додатковi пакети (запустити tasksel i dselect для їх установки). Вiдмовтеся - це простiше виконати з командного рядка. Поштову систему також налаштовувати не потрiбно. Увiйдiть в систему як root i дайте наступну команду: apt-get install mc dhcp ftpd tftpd nfs-kernel-server bind kernel-source-2. 4. 18 make gcc libc6-dev Все необхiдне програмне забезпечення знаходиться на першому i другому дисках дистрибутива. Детальний опис процесу встановлення знаходиться в [2].

4. 2 Налаштування адаптера eth0

мережею, що складається з вiртуальних комп'ютерiв. Коректну налаштування eth1 забезпечить VMware, а iнтерфейс eth0 необхiдно сконфiгурувати вручну.

Для цього вiдредагуємо файл / etc / network / interfaces

auto eth0

address 192. 168. 223. 2

netmask 255. 255. 255. 0

Замiсть адреси 192. 168. 223. 2 необхiдно вказати адресу, наступний за адресою адаптера VMnet1. Пiсля перезавантаження вiртуального комп'ютера iнтерфейс повинен заробити.

Сервiс DHCP вiдповiдає за видачу клiєнтовi його IP адреси, iменi, iнших параметрiв мережi, а також iменi файлу з ядром операцiйної системи. Його настроювання здiйснюється з допомогою конфiгурацiйного файлу / etc / dhcpd. conf. Ми використовуємо такий файл:

option domain-name "private.net";

subnet 192. 168. 223. 0 netmask 255. 255. 255. 0 {

filename "netbootkernel";


host node01 {

hardware ethernet 00:0C:29:E6:36:BC;

fixed-address 192. 168. 223. 3;

option host-name "node01";

}

}

}

Пiсля subnet вказана IP адреса адаптера VMnet1, з замiненої на 0 останньою цифрою. У рядку filename сказано, що iм'я файлу з ядром для мережевої завантаження - netbootkernel. У рядку hardware ethernet необхiдно вказати ранiше записаний MAC адресу клiєнта, у рядку fixed-adress вказується IP, який буде виданий клiєнту. Нам необхiдно, щоб DHCP сервер обробляє запити тiльки з iнтерфейсу eth0 (з внутрiшньої мережi), тому вiдредагуємо файл / etc / default / dhcp, присвоївши змiнної INTERFACES значення eth0. Невеликi змiни потрiбнi для DHCP клiєнта. У файл / etc / dhclient. conf додамо наступнi два рядки:

supersede domain-name "private.net";

prepend domain-name-servers 127. 0. 0. 1;

Перший рядок вказує домен пошуку, а друга - додає додатковий (до того, який буде отриманий вiд DHCP сервера) DNS сервер. Цi змiни необхiднi для формування правильного файлу resolv. conf. Тепер, при завантаженнi клiєнта, на екранi повиннi вiдобразитися IP адреси клiєнта i сервера, отриманi вiд сервера (службу DHCP попередньо необхiдно перезапустити). Бiльш докладну iнформацiю з налаштування DHCP можна знайти в [3].

4. 4 Налаштування FTP i TFTP

Останнiм параметром зазначений каталог, у якому буде проводитись пошук ядра операцiйної системи. Всi директорiї та файли повиннi бути доступнi на читання всiм. Якщо при спробi завантажити клiєнта, ви отримуєте повiдомлення TFTP error 1 (File not found), значить TFTP налаштований правильно. Для налаштування ftp вiдредагуємо файл / etc / ftpusers, видаливши з нього рядок root, що дозволить пiдключатися до сервера за ftp пiд iм'ям root з ОС Windows.

4. 5 Настройка DNS

Доменом нашiй вiртуальнiй мережi буде називатися private.net. Сервер буде мати iм'я server.private.net, а клiєнти iмена nodeXX.private.net, де XX - порядковий номер клiєнта.

Основним конфiгурацiйних файлiв DNS сервера є / etc / bind / named. conf. В роздiл options цього фала додамо рядок:

Перший IP адреса - адреса iнтерфейсу eth0. Тепер DNS сервер буде обробляти запити тiльки з цих адрес. У кiнець файлу додамо рядки:

zone "223. 168. 192. in-addr. arpa" {

type master;

"/etc/bind/server. rev";

};

zone "private.net" {

type master;

file "/etc/bind/server. hosts";

};

Далi необхiдно створити файли / etc / bind / server. rev i / etc / bind / server. hosts. Нижче наведено їх листинги.

Файл server. rev:

@ IN SOA server.private.net. root.server.private.net. (

2004120420 ; Serial

4H ; Retry

1D ) ; Negative Cache TTL

IN NS server.private.net.

2 IN PTR server.private.net.

3 IN PTR node01.private.net.

Файл server. hosts:

2004120420 ; Serial

8H ; Refresh

4H ; Retry

IN NS server.private.net.

localhost IN A 127. 0. 0. 1

server IN A 192. 168. 223. 2

node01 IN A 192. 168. 223. 3


На цьому налаштування DNS-сервера закiнчена. За додатковою iнформацiєю звертайтеся до [4].

4. 6 Створення ядра

Компiляцiя ядра

Стандартне ядро не пiдходить для завантаження по мережi, тому необхiдно його перекомпiлювати. Перед компiляцiєю ядра необхiдно з'ясувати конфiгурацiю устаткування вiртуального сервера. Для цього в Debian можна скористатися командою lspci. Запишемо моделi IDE, SCSI i Ethernet контролерiв. У VMware 4. 0 це Intel Corp. 82371AB PIIX4 IDE, BusLogic BT-946C [MultiMaster 10] i AMD 79c970 [PCnet LANCE] вiдповiдно. Перейдемо в каталог / usr / src i виконаємо команду tar - bzip2-x-f kernel-source-2. 4. 18. tar. bz2 Тепер зайдемо в каталог / usr/src/kernel-source-2. 4. 18 i виконаємо команду make mrproper config.

Зараз необхiдно вибрати конфiгурацiю ядра, вiдповiдаючи на питання. Все, що може знадобитися до того, як стануть доступнi мережевi ресурси (мережевi карти, пiдтримка чiпсетiв, протоколу TCP, NFS i т. д.) необхiдно включити в ядро. Додатково, необхiдно включити наступнi налаштування:

· CONFIGBLKDEVLOOP

· CONFIGBLKDEVNBD

· CONFIGBLKDEVRAM (тiльки при пiдключеннi кореневої файлової системи з RAM диска)

· CONFIGBLKDEVRAMSIZE = 30720 (тiльки при пiдключеннi кореневої файлової системи з RAM диска)

· CONFIGBLKDEVINITRD (тiльки при пiдключеннi кореневої файлової системи з RAM диска)

· CONFIGPACKET

· CONFIGIPPNPDHCP

· CONFIGNFSFS

· CONFIGNFSV3

· CONFIGROOTNFS (тiльки при пiдключеннi кореневої файлової системи через NFS)

Пiсля завершення налаштувань скомпiлiруем ядро командою make bzImage

Передбачається, що версiї встановленого i компiляцiї ядра збiгаються. Якщо ж це не так, i при компiляцiї ядра деякi з опцiй були скомпiльованi як модулi, необхiдно командою make modules призвести перекомпiляцiй модулiв. Докладнiше про компiляцiї ядра можна дiзнатися в [5].

Пiдготовка ядра для вiддаленого завантаження

цього документа використовувалася версiя 1. 4. 4). Помiстити її на сервер можна, пiдключившись з OC Windows до сервера по ftp.

Для її установки необхiдно розпакувати файл з вихiдними текстами в каталог / usr/src/mknbi-1. 4. 4 i виконати команди

make

mkdir / usr / local / lib / mknbi

cp first32elf * / usr / local / lib / mknbi

Програма має декiлька параметрiв, з яких ми розглянемо чотири:

- Format = format Вказує формат вихiдного файлу.

- Target = target Вказує тип цiльового двiйкового коду.

- Rootdir = rootdir Зазначає iм'я каталогу, з якого буде подмонтiрована коренева файлова система

- Ip = string Дозволяє задати IP адреси клiєнта, сервера, шлюзу i маску пiдмережi. Також можливо вказати dhcp або bootp для автоматичної настройки за допомогою цих протоколiв.

Створимо каталог, в якому буде розташовуватися ядро для вiддаленого завантаження: mkdir / exports

Подальшi дiї залежать вiд того, яким чином ми будемо пiдключати корову файлову систему. Для пiдключення через NFS необхiдно виконати команду (передбачається, що коренева файлова система буде розташовуватися в каталозi / exports/node01) . / Mknbi - format = elf - target = linux - rootdir = / exports/node01 - ip = dhcp / usr/src/kernel-source-2. 4. 18/arch/i386/boot/bzImage> / exports / netbootkernel

Для варiанта з RAM диском команда виглядає трохи iнакше: . / Mknbi - format = elf - target = linux - rootdir = / dev/ram0 - ip = dhcp / usr/src/kernel-source-2. 4. 18/arch/i386/boot/bzImage / initrd / initrd. gz> / exports / netbootkernel

Про те, як створити файл / initrd / initrd. gz, який мiстить образ кореневої файлової системи, розповiдається в п. 4. 8.

Пiсля закiнчення цього етапу клiєнтський комп'ютер вже може завантажувати ядро. За iнформацiєю з mknbi звертайтеся до [6].

4. 7 Налаштування NFS

Налаштування що надаються сервером NFS в мережеве використання ресурсiв здiйснюється за допомогою файлу / etc / exports.

У нашому прикладi використовуємо такий файл

/usr node01.private.net(rw,norootsquash)

/exports node01.private.net(rw,norootsquash)

Останнiй рядок потрiбна для доступу робочого вiртуального комп'ютера (на якому ми будемо формувати файлову систему клiєнта) до сервера i пiсля створення файлової системи клiєнта її необхiдно видалити.

Додаткова iнформацiя з налаштування NFS доступна в [7].

4. 8 Налаштування файлової системи для клiєнта

Для завершення настроювання мережевої завантаження необхiдно пiдготувати файлову систему клiєнта. Для цього на самому початку нами було створено третiй вiртуальний комп'ютер. Встановимо на нього ОС Debian згiдно з тими ж, рекомендацiями, що були данi в п. 4. 1.

питання про конфiгурацiю по DHCP, переключимося на другий термiнал (натиснувши Alt + F2), виконаємо команду ifconfig-a i запишемо MAC-адреса адаптера. Пiсля цього переключимося у вiртуальний комп'ютер сервера, i вiдредагуємо файл / etc / dhcpd. conf, додавши в роздiл group рядки:

hardware ethernet 00:0C:29:03:AB:CA;

fixed-address 192. 168. 223. 4;

}

У другому рядку необхiдно вказати записаний MAC адресу. Щоб змiни вступили в силу, необхiдно перезапустити DHCP сервер командою / Etc / init. d / dhcp restart


Можна продовжувати установку. Команда для встановлення пакункiв з програмним забезпеченням тепер буде виглядати наступним чином: apt-get install mc portmap

Наведемо один з них:

dd if = / dev / zero of = / initrd / initrd bs = 1k count = 30720

mke2fs-m0-F / initrd / initrd

mount-t ext2-o loop / initrd / initrd / mnt

Тут ми створюємо порожнiй файл об'ємом 30 Мб, потiм формуємо у ньому файлову систему ext2 i монтуємо його як loop пристрiй у каталог / mnt, в якому i будемо створювати файлову систему.

Процес створення файлової системи однаковий для обох варiантiв i полягає в наступному:

1. Скопiюйте каталоги / bin, / dev, / etc, / lib, / sbin цiлком;

2. Створити каталоги home, root, proc, tmp;

3. Створити каталоги usr, usr / bin; скопiювати каталог / usr / sbin, скопiювати файл expr в каталог usr / bin;

4. Створити каталоги var, var / lock, var / log, var / log / news, var / run, var / tmp, var / lib; скопiювати каталог var / lib / dhcp.

Пiдправимо файл / mnt / etc / fstab. У самому простому виглядi вiн може виглядати так:

/dev/ram0 / ext2 errors=remount-ro 0 1

proc /proc proc defaults 0 0

server.private.net:/usr /usr nfs

Для пiдключення кореневої файлової системи по NFS перший рядок необхiдно замiнити на

server.private.net:/exports/node01 / nfs

Тепер необхiдно створити файл / etc / dhclient-enter-hooks, внести до нього наступнi два рядки, щоб кожен клiєнт встановив своє iм'я, отримане вiд DHCP сервера

echo "$newhostname" > /etc/hostname

hostname -F /etc/hostname

Якщо ви скомпiлював ядро бiльш нової версiї, то необхiдно в каталог / lib / modules скопiювати каталог з перекомпiлювати модулями, а старий каталог видалити.

для пiдключення файлової системи сервера в каталог / mnt. Далi, для першого варiанта необхiдно скопiювати вмiст / tmp в каталог / mnt/exports/node01, а для другого - виконати команди

gzip -9 / initrd / initrd

cp / initrd / initrd. gz / mnt / initrd

Тепер необхiдно приєднати отриманий образ до ядра, як описано в кiнцi п. 4. 6.

Висновок

Отже, ми докладно розглянули органiзацiю процесу мережевий завантаження. У прикладi ми створили тiльки одного клiєнта, з назвою node01. Для пiдключення наступних, на серверi в файли dhcpd. conf, server. rev, server. hosts, exportfs потрiбно додати вiдповiднi записи. При необхiдностi можна створити i нову файлову систему, помiстивши її в каталог / exports / nodeXX, або створивши нове ядро для вiддаленого завантаження. Всi вищеописанi дiї без будь-яких змiн можуть бути застосованi для створення реальної мережi з реальних машин.

Лiтература

1. Введення в завантаження по мережi i Etherboot

2. Installing Debian GNU / Linux 3. 0 For Intel x86

3. DHCP mini-HOWTO

4. DNS HOWTO

5. Ставимо ядро 2. 6, або Ядерна фiзика для домогосподарки

6. Документацiя по mknbi

8. Завантаження машин по мережi