Skip to end of metadata
Go to start of metadata

5.2.1. ZFS alapú jail

Minden jail alapja egy olyan FreeBSD alaprendszer, amelyhez a későbbiekben nem igazán nyúlunk hozzá, leszámítva a biztonsági frissítéseket, illetve bosszantó hibák kijavítását. Mivel a hasonlóság nagyfokú, azért jól ki tudjuk használni a ZFS fájlrendszer klónozó képességét:

Parancssor

Mint látni, létrehoztunk egy template jail könyvtárat, mégpedig a jails fájlrendszer alá, a két fájlrendszer közé pedig egy v8.1.0 fájlrendszert, amely a jail verziója. A verzió mondja meg, hogy az adott jail 8.1-es alaprendszerből készült, és az általunk "kiadott" első verzió. A template fájlrendszerbe a klasszikus módszerekkel beleteszünk egy alaprendszert:

Parancssor

Alapvetően kész vagyunk, elkészült az első jail fájlrendszere, amelyet nem fogunk használni, hanem egyszerűen klónozni fogjuk ezt, de előtte megtöltjük kényelmes csomagokkal, amelyeket már megismertünk az alaprendszer használata közben. Ehhez fel kell csatolnunk a ports fájlrendszert, amelyet előtte célszerű frissíteni:

Parancssor

A jail elindítása egyszerű dolog, a jail parancsot tudjuk használni, s értelemszerűen a megfelelő paramétereket (jail könyvtára, a jail host neve, a jail IP címe illetve a használandó shell):

Parancssor
A jail IP címének léteznie kell, a fenti esetben a 192.168.2.1 a gép egyik létező interfészére felhúzott IP cím alias.

Automatikusan nem lesz hálózatuk a jail_ben, ehhez egy NAT-ot kell beállítanunk, ezt (meglepően beszédes formában) a _/etc/ipnat.rules fájlban tudjuk megtenni (a bge1 az interfész neve, a 91.83.48.130 pedig a gépünk külső – publikus – IP címe):

/etc/ipnat.rules

Ezek után indítsuk el az ipnat programot:

Parancssor

Lépjünk bele a jail-be és próbaképpen telepítsünk fel egy portupgrade csomagot:

Parancssor

Tegyünk fel néhány fontosabb csomagot, ezek nem fognak túl sok helyet elfoglalni, hiszen ezeket is klónozzuk majd. Mindenkinek saját elvárásai vannak a rendszerrel kapcsolatban, de az alábbi csomagok szinte mindenkinek jó szolgálatot tesznek:

  • shells/bash
  • java/jdk16
  • www/links
  • misc/mc
  • sysutils/munin-node
  • databases/mysql51-client
  • security/nmap
  • net/openldap24-client
  • ports-mgmt/portaudit
  • databases/postgresql83-client
  • sysutils/screen
  • sysutils/syslog-ng2
  • archivers/unzip
  • ftp/wget
  • archivers/zip
Parancssor

Picit felhízott a jail, amit részben az okoz, hogy a fenti 15 csomagot telepítettünk fel (amelyek jó része függőség okán feltelepített további csomagokat, amelyek úgyis kellenek majd az egyedi csomagok fordításához), másrészt az okoz, hogy a /tmp alá linkeltük a /usr/ports/distfiles könyvtárat, érdemes pár dolgot kitakarítani, mielőtt klónozzuk a jail fájlrendszerét:

Parancssor

Elkészítettünk egy közel 250MBájt helyet foglaló jail mintát, amelyet klónozva kevés helyet foglaló - különféle szolgáltatásokat futtató - jail rendszereket fogunk készíteni.


Előző fejezet Tartalomjegyzék Következő fejezet


Auth Gábor auth.gabor@javaforum.hu


Unknown macro: {rate}
Labels: