Erinevus lehekülje "FAI kasutamine Debianiga" redaktsioonide vahel
(→FAI kliendi seadistuse ettevalmistamine) |
(→package_config) |
||
158. rida: | 158. rida: | ||
postfix exim4- | postfix exim4- | ||
+ | |||
+ | ====files ja scripts==== | ||
+ | |||
+ | Kostümiseeritud Squidi seadistusfaili /etc/squid/squid.conf kasutamiseks tuleb kostümeeritud versioon paigutada faili files/etc/squid/squid.conf/SQUID ning lisada skripti scripts/LAST/50-misc lõpuossa teiste fcopy'de juurde rida | ||
+ | |||
+ | fcopy -i /etc/squid/squid.conf | ||
===Nimeserveri ettevalmistamine=== | ===Nimeserveri ettevalmistamine=== |
Redaktsioon: 11. mai 2009, kell 10:12
Sisukord
- 1 Sissejuhatus
- 2 Eesmärk
- 3 FAI serveri ettevalmistamine
- 4 FAI kliendi seadistuse ettevalmistamine
- 5 Nimeserveri ettevalmistamine
- 6 DHCP serveri ettevalmistamine
- 7 TFTP serveri ettevalmistamine
- 8 NFS serveri ettevalmistamine
- 9 Xen HVM domU ettevalmistamine
- 10 Xen HVM domU kliendi installeerimine
- 11 Kasulikud lisamaterjalid
Sissejuhatus
FAI (Fully Automated Installation) http://www.informatik.uni-koeln.de/fai/ süsteem võimaldab korraldada automaatset operatsioonisüsteemi paigaldamist. Sellisest asjakorraldusest võib olla kasu nt järgnevatel juhtumitel
- ülesandeks on hallata suhteliselt suurt arvu arvuteid (kümneid või sadu)
- eeldusel, et automaatne paigaldus on hästi ettevalmistused ja arvuti nö iseloom seda võimaldab, pole tarvis põhimõtteliselt kõnealust arvutit varundada
FAI süsteem koosneb üldiselt sellistest komponentidest
_____ | | FAI server: dhcp, tftp, nfs |_____| | | ---|----|-------|------------|--- | | | __|__ __|__ __|__ | | | | | | .... |_____| |_____| |_____| smtp1 smtp2 squid FAI kliendid
ning töötab selliselt, et FAI kliendi käivitamisel sooritatakse selline järgnevus
- FAI klient saab oma MAC aadressi alusel endale dhcp serverist võrguseadistused sh domeeninime (st hostname'i)
- FAI klient kopeerib FAI serverilt tuuma ja initramfs'i
- FAI klient ühendab FAI serverilt omale külge juurfailisüsteemi
- FAI klient käivitab installeri, mis töötab FAI serveril asuva seadistuse juhtimisel
- FAI kliendi lokaalsele kõvakettale paigaldatakse operatsioonisüsteem
Järgmisel FAI kliendiks oleva arvuti alglaadimisel peab vaatama, et ei korduks soovimatult operatsioonisüsteemi paigaldamise protseduur ja käivituks paigaldatud süsteem.
See kui efektiivseks kujuneb FAI kasutamine sõltub sellest, kui palju vaeva näha FAI serveri seadistamisel, eriti nende tegevuste kirjeldamisel, mis kliendid seadistavad.
Praktiliselt on võimalik FAI serveri juhtimisel FAI kliendil seadistada muu seas
- kõvakettakasutus (fdisk partitsioonid, LVM, tarkvaraline raid, failisüsteemid)
- millised .deb paketid paigaldatakse
- võrguparameetrid
- kostümiseerida paigaldatud tarkvara seadistused (nt kopeerida sobiva sisuga /etc/squid/squid.conf)
- seadistada initramfs (nt korraldada, et initramfs oskab alglaadida süsteemi LVM'ilt juurfailisüsteemilt)
FAI kasutamisel tekitatakse operatsioonisüsteem nö Debiani paketi ja üksiku faili (tavaliselt seadistusfaili) täpsusega. St ei toimu ettevalmistatud operatsioonisüsteemi tõmmise plokk-haaval kopeerimist. Sellise lähenemise eeliseks on suurem paindlikkus töötava süsteemi haldamisel, kannatab aga uue arvuti tekitamise kiirus kuigi praktiliselt mitte oluliselt.
Antud juhtumil on FAI kasutamist uuritud Xeni keskkonnas, kus
- FAI serveriks on Xen PV domU
- FAI kliendiks on Xen HVM domU
- FAI klient alglaadib ennast võrgust kasutades PXE'd (st DHCP + TFTP + NFS)
Sellisel juhtumil moodustavad FAI serveri sellised teenused
- NFS server
- DHCP server
- TFTP server
Eesmärk
Olgu eesmärgiks ettevalmistada FAI serveri selliste omadustega kliendi automaatne paigaldamine
- kõvakettakasutus
/boot - /dev/hda1 LVM PV system - /dev/hda2 swap - LVM LV /dev/system/swap / - LVM LV /dev/system/system
- domeeninimi - fai-client-1.auul
- squid, kostümiseeritud /etc/squid/squid.conf
FAI serveri ettevalmistamine
FAI serverisse tuleb paigaldada paketid
# apt-get install fai-quickstart
Peale tarkvara paigaldamist tuleb /etc/fai/fai.conf seadistusfail üle vaadata, tõenäoliselt vaikeväärtused sobivad
LOGUSER= FAI_LOGPROTO=ssh FAI_CONFIGDIR=/srv/fai/config MNTPOINT=/media/mirror FAI=/var/lib/fai/config
FAI NFS serveriga seotud seadistused on kirjeldatud failis make-fai-nfsroot.conf, kus 192.168.10.199:9999 on apt-proxy
NFSROOT=/srv/fai/nfsroot TFTPROOT=/srv/tftp/fai FAI_DEBOOTSTRAP="lenny http://192.168.10.199:9999/debian" FAI_ROOTPW='$1$kBnWcO.E$djxB128U7dMkrltJHPf6d1' FAI_DEBOOTSTRAP_OPTS="--exclude=dhcp-client,info"
FAI serveri sh NFS komponendi ettevalmistamiseks tuleb öelda
# fai-setup -v
FAI kliendi seadistuse ettevalmistamine
FAI kliendi käivitamiselt identifitseeritakse nt kliendi dhcp'st saadud domeeninime abil klient ja rakendatakse talle vastavate nn klassidega (ingl. k. class) seotud seadistusi.
FAI serveris kirjeldatud klientide seadistused asuvad kataloogis /srv/fai/config, alustuseks sobib kasutada FAI klientide näidis-seadistusi kopeerides
# cp -a /usr/share/doc/fai-doc/examples/simple/* /srv/fai/config
- class - vastavused klientide hostname'ide ja klasside vahel, ühe kliendiga võib olla seotud ka mitu klassi (nt FAIBASE, SQUID)
- debconf -
- disk_config - kõvaketta seadistused
- files -
- hooks -
- package_config - paigaldatavad/eemdaldatavad paketid
- scripts
class
Konkreetse hostiga seotud klassid teeb kindlaks skript class/50-host-classes
#! /bin/bash # assign classes hosts case $HOSTNAME in fai*) echo "FAIBASE SQUID" ;; *) echo "FAIBASE DHCPC DEMO" ;; esac (ifclass I386 || ifclass AMD64) && echo GRUB exit 0
Antud juhul fai-client-1.auul klient on seotud klassidega FAIBASE ning SQUID.
Kõigi muude kataloogide sees on klassinimelisi faile, mille sisu kasutatakse antud kliendi puhul, nt kõvakettaseadistustena kasutatakse faili disk_config/SQUID ja /etc/squid/squid.conf failina kasutatakse faili files/etc/squid/squid.conf/SQUID.
disk_config
Kõvaketta seadistused on määratletud antud juhul faili disk_config/SQUID sisuga
# example of new config file for setup-storage # # <type> <mountpoint> <size> <fs type> <mount options> <misc options> disk_config hda bootable:1 primary /boot 500 ext3 rw primary - 4096- - - disk_config lvm vg system hda2 system-swap swap 2048 swap sw system-system / 2048 ext3 rw
package_config
Kuna tõenäoliselt kõigis selle FAI süsteemi kontrolli all olevates arvutites kasutatakse Exim4 asemel Postfixi, siis sobib kasutada failis package_config/FAIBASE rea
exim4
asemel rida, miinus paketi nime järel tähendab paketi eemaldamist
postfix exim4-
files ja scripts
Kostümiseeritud Squidi seadistusfaili /etc/squid/squid.conf kasutamiseks tuleb kostümeeritud versioon paigutada faili files/etc/squid/squid.conf/SQUID ning lisada skripti scripts/LAST/50-misc lõpuossa teiste fcopy'de juurde rida
fcopy -i /etc/squid/squid.conf
Nimeserveri ettevalmistamine
Selles keskkonnas, kus FAI'd kasutatakse võiks olla nimeserver ning seal olema kirjeldatud kliendi domeeninimi fai-client-1.auul
DHCP serveri ettevalmistamine
DHCP serveriks sobib kasutada sellise seadistusfaili /etc/dhcp3/dhcpd.conf
deny unknown-clients; option dhcp-max-message-size 2048; use-host-decl-names on; subnet 192.168.10.0 netmask 255.255.255.0 { option routers 192.168.10.254; option domain-name "auul"; option domain-name-servers 192.168.10.254; option time-servers faiserver; option ntp-servers faiserver; server-name faiserver; next-server faiserver; filename "pxelinux.0"; } host fai-client-1 { hardware ethernet 70:01:68:01:02:20; fixed-address fai-client-1; option host-name "fai-client-1"; }
TFTP serveri ettevalmistamine
TFTP serveri jaoks peab /etc/initd.conf failis sisalduma rida ning initd deemon peab käima
tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /srv/tftp/fai
NFS serveri ettevalmistamine
NFS serveri /etc/exports seadistatakse tõenäoliselt automaatselt, aga ta peaks sisaldama midagi sellist
/srv/fai/config 192.168.10.0/255.255.255.0(async,ro,no_subtree_check) /srv/fai/nfsroot 192.168.10.0/255.255.255.0(async,ro,no_subtree_check,no_root_squash)
Xen HVM domU ettevalmistamine
FAI katsetamises sobib kasutada Xen HVM domU'd, nt sellise seadistusfailiga
name="fai_client_1" memory=128 vif = [ 'mac=70:01:68:01:02:20,bridge=xenbr0' ] vcpus="1" kernel = '/usr/lib/xen-3.2-1/boot/hvmloader' device_model = "/usr/lib/xen-3.2-1/bin/qemu-dm" builder = 'hvm' disk = [ 'phy:/dev/c_data/fai_client_1,ioemu:hda,w' ] cdrom="/dev/hdc" boot='n' #d is cdrom boot, c is disk boot. vnc="1" vncviewer="1" sdl="0" vcpus=1 pae=1 acpi=0 apic=0
Sobiva PXE seadistuse genereerimiseks tuleb öelda
# fai-chboot -IFv fai-client-1
Tulemusena tekitatakse fai-client-1 jaoks sobib PXE seadistusfail /srv/tftp/fai/pxelinux.cfg/C0A80AC8
# generated by fai-chboot for host fai-client-1 with IP 192.168.10.200 default fai-generated label fai-generated kernel vmlinuz-2.6.26-2-amd64 append initrd=initrd.img-2.6.26-2-amd64 ip=dhcp root=/dev/nfs nfsroot=/srv/fai/nfsroot boot=live \ FAI_FLAGS=verbose,sshd FAI_ACTION=install
Peale süsteemi paigaldamist tuleb lokaalselt kõvakettalt alglaadimiseks kasutada rida
boot='c'
Xen HVM domU kliendi installeerimine
Xen HVM domU kliendi installeerimiseks tuleb käivitada vastav domU öeldes
# xm create fai-client-1
ning ühenduda külge vnc kliendiga, nt
$ vncviewer 192.168.10.251:5901
ning jälgida sündmuste edenemist