Solarise tsoon
Solarise tsoon
Operatsioonisüsteem Solarise võimldab arvutis toimuvaid tegevusi lokaliseerida nii, et töötavad protsessid nö ei näe üksteist. Selleks käivitatakse selle operatsioonisüsteemi, millelt arvuti booditi, kontrolli all vajalik arv Solaris operatsioonisüsteemi eksemplare; esimest nimetatakse globaalseks tsooniks ja ülejäänuid mitte-globaalseteks tsoonideks. Globaalses tsoonis on näha kõigi tsoonide protsessid, kuid mitteglobaalsetes tsoonides töötavad protsessid ei näe globaalses ega teistes mitte-globaalsetes tsoonides töötavaid protsesse. Seejuures kõik tsoonid kasutavad ühte ja sama globaalse tsooni operatsioonisüsteemi tuuma.
Lisaks protsesside lokaliseerimisele on erinevate tsoonidega seostatud üksteisest sõltumatud muud ressursid, nt failisüsteemid ning võrguseadmed sh lo0 seade.
Tsoonide moodustamine
Globaalne tsoon tekib automaatselt operatsioonisüsteemi paigaldamise tulemusena, mitte-globaalsed tsoonid moodustatakse globaalses tsoonis olles, globaalse tsooni nimi on alati 'global', mitte-globaalsete tsoonide nimed saab kasutaja ise valida. Mitte-globaalne tsoon võib pärida globaalselt osa katalooge, tavaliselt päritakse süsteemseid katalooge. Tsoon moodustatakse programmide zonecfg ja zoneadm abil, vastavalt kirjeldatakse tsooni seadistused ja moodustatakse tsoonile vastav osa globaalse tsooni failisüsteemis. Näitena on esitatud ühe maksimaalselt vähe pärinud tsooni tekitamine. Uus tsoon moodustatakse globaalse tsooni alusel, paigaldusmeediat ei ole vaja kättesaadavaks teha.
Alustuseks küsime olemasolevate tsoonide nimekirja
baas# zoneadm list -vi ID NAME STATUS PATH 0 global running /
Moodustame mitte-globaalsele tsoonile 'baas' vajalikud kataloogid globaalses tsoonis
bash# mkdir /data/domains/baas bash# chmod 0700 /data/domains/baas
bash# zonecfg -z baas baas: No such zone configured Use 'create' to begin configuring a new zone. zonecfg:baas> create
Seejärel saab juba vaadata vaikeväärtusi, milleks on päritud kataloogid
zonecfg:baas> info zonepath: autoboot: false pool: inherit-pkg-dir: dir: /lib inherit-pkg-dir: dir: /platform inherit-pkg-dir: dir: /sbin inherit-pkg-dir: dir: /usr
Kuna eesmärk on tekitada võimalikult sõltumatu tsoon, siis eemaldame need. Üks praktiline põhjus eemaldamiseks võiks olla soov neisse kataloogidesse mitte-globaalses tsoonis muudatusi teha, kui nad on päritud, siis on nad mitte-globaalses tsoonis read-only'd.
zonecfg:baas> remove inherit-pkg-dir dir=/lib zonecfg:baas> remove inherit-pkg-dir dir=/platform zonecfg:baas> remove inherit-pkg-dir dir=/sbin zonecfg:baas> remove inherit-pkg-dir dir=/usr
Seadistame zonepath parameetri, mis näitab kus asuvad globaalse tsooni failisüsteemis sellele mitte-globaalsele tsoonile vastavad failid
zonecfg:baas> set zonepath=/data/domains
Seadistama võrgu
zonecfg:baas> add net zonecfg:baas:net> set address=10.0.6.38 zonecfg:baas:net> set physical=fjgi0 zonecfg:baas:net> end
Sisestame tsoonile kirjelduse
zonecfg:baas> add attr zonecfg:baas:attr> set name=comment zonecfg:baas:attr> set type=string zonecfg:baas:attr> set value="Tartu loomaaia andmebaas" zonecfg:baas:attr> end
Salvestame tsooni konfiguratsiooni
zonecfg:baas> verify zonecfg:baas> commit zonecfg:baas> exit
Tehtud konfiguratsiooni saab vaadata käsuga
bash# zonecfg -z baas info
Seejärel tuleb lasta tsoon tekitada vastavalt loodud konfiguratsioonile
bash# zoneadm -z baas verify bash# zoneadm -z baas install Preparing to install zone <baas>. Creating list of files to copy from the global zone. Copying <139451> files to the zone.
Arvutis kasutusel olevate tsoonide seadistusfailid asuvad kataloogis /etc/zones. Iga tsooniga saab seostada kui palju arvuti ressursse saab tsoon kasutada.
Tsooni käivitamine
Kuna tsoon esineb operatsioonisüsteemi eksemplari kujul tuleb tsooni käivitamiseks ta bootida. Enne bootimist on abiks nö kõrvalaknast vaadata tsooni konsoolil toimuvat
bash# zlogin -C tsooninimi
ning teises aknas bootida
bash# zoneadm -z tsooninimi boot
Selleks, et protsessid normaalsest seiskuksid ja failisüsteemid lahti ühendataks on kõige otstarbekam tsooni seiskamiseks tsooni sees öelda shutdown, NB! tsooni sees
bash-veebiserver# shutdown -y -g 0 -i 5
Arvutis töötavate tsoonide olukorda saab küsida
bash# zoneadm list -vi