OCFS2

Allikas: Kuutõrvaja
                                        Roheline.jpg Toores. Ehk seda pala võib täiendada.

Sissejuhatus

OCFS2 failisüsteem on Oracle poolt arendatud ühiskasutuses plokkseadme failisüsteem (ingl. k. shared disk file system), mis tähendab, et üks ja sama plokkseade on ühendatud samaaegselt mitme arvuti külge (tavaliselt mitte juurfailisüseemina, vaid nt andmete jaoks) ning sellele plokkseadmele tekitatud OCFS2 failisüsteem ja arvutites töötavad OCFS2 infrastruktuuri komponendid (lock manager jt) hoolitsevad selle eest, et sellisel kasutausel ei tekiks konflikte; et ühe arvuti poolt failisüsteemis tehtud muudatused hakkaksid paistma teistes arvutites mõistliku aja jooksul. Sellisest süsteemi nimetatakse OCFS2 klustriks ja osalevaid arvuteid klustri komponentideks (ingl. k. cluster nodes).

inotify ja dnotify sünkroniseerimine masinate kernelite vahel? dlm distributed lock manager - lukustamine üle võrgu.

OCFS2 also provides the following capabilities:

  • Metadata caching.
  • Metadata journaling.
  • Cross-node file data consistency.
  • Support for multiple-block sizes up to 4 KB, cluster sizes up to 1 MB, for a maximum volume size of 4 *PB (Petabyte).
  • Support for up to 32 cluster nodes.
  • Asynchronous and direct I/O support for database files for improved database performance.

Redhat

Installimine on lihtne, eriti RedHatiga ;)

Vaadake, millise kerneli jaoks ka tõmbate ;)

wget http://oss.oracle.com/projects/ocfs2/dist/files/RedHat/RHEL4/x86_64/1.2.5-1/2.6.9-42.EL/ocfs2-2.6.9-42.ELsmp-1.2.5-1.x86_64.rpm
wget http://oss.oracle.com/projects/ocfs2-tools/dist/files/RedHat/RHEL4/x86_64/1.2.4-1/ocfs2-tools-1.2.4-1.x86_64.rpm
wget http://oss.oracle.com/projects/ocfs2-tools/dist/files/RedHat/RHEL4/x86_64/1.2.4-1/ocfs2console-1.2.4-1.x86_64.rpm
rpm -i ocfs2*

Kes tahab sortsust kokku lasta, siis selleks ka võimalus
http://oss.oracle.com/projects/ocfs2/files/source/

Et kõik moodulid masina buutimisel üles laetakse, tuleb käivitada

/etc/init.d/o2cb configure
/etc/init.d/o2cb load
chkconfig ocfs2 on
chkconfig o2cb on

Oracle on valmis teinud ka kena GUI "ocfs2console", võimalusel kasutage seda

Kõigepealt teeme klastri, lisame masinad

confifailid asuvad /etc/ocfs2/cluster.conf ja /etc/sysconfig/o2cb

Gentoo

Kernel

<*> GFS2 file system support

File systems --->   
   [*] OCFS2 file system support
   [*]   O2CB Kernelspace Clustering
   [*]   OCFS2 statistics
   [*]   OCFS2 logging support
   [ ]   OCFS2 expensive checks

Paigaldamine

echo "sys-fs/ocfs2-tools ~amd64" >> /etc/portage/package.keywords
emerge -av sys-fs/ocfs2-tools

Fstabi vaja lisada read


none         /sys/kernel/config         configfs        defaults                0 0
none         /sys/kernel/dlm            ocfs2_dlmfs     defaults                0 0

Konfigureerimine

cat /etc/ocfs2/cluster.conf 
node:
        ip_port = 7777
        ip_address = 192.168.0.31
        number = 0
        name = test1
        cluster = server

node:
        ip_port = 7777
        ip_address = 192.168.0.32
        number = 1
        name = test2
        cluster = server

cluster:
        node_count = 2
        name = server

Gentoo puhul tuleb kirjutada faili /etc/conf.d/ocfs2 ka clustri nimi mida starditakse, meiepuhul

OCFS2_CLUSTER="server"

Vaikimisi on clustri nimi OCFS2_CLUSTER="home"

ocfs2 failisüsteemi tegemiseks füüsilisele kettale on käsk mkfs.ocfs2

# mkfs.ocfs2 -N 2 -L ocfs2_test /dev/sda

seejuures N 2 võti näitab mitu masinat osaleb clustri töös. Veel võimalikud võtmed on:

  • -b : Block size (values are 512, 1K, 2K and 4K bytes per block)
  • -C : Cluster size (values are 4K, 8K, 16K, 32K, 64K, 128K, 256K, 512K and 1M)
  • -L : Label

et mountida ketast võib kasutada GUI'd või mount -t ocfs2 /dev/xxx /xxx või kõik ocfs2 kettad mount -at ocfs2

# mount /dev/sda /srv/

Ja teises nodes ka teenus startida ja mountida

/etc/init.d/ocfs2 start

Ocfs boodil startima

# rc-update add ocfs2 default

Veel võtmeid

# /sbin/mkfs.ocfs2 -N 2 -M local \
--fs-features=sparse,refcount,xattr,indexed-dirs,discontig-bg,inline-data \
-F /dev/md0/ocfs2max
# mount -o noatime,data=writeback,commit=60 ...

Vaikimisi commit ehk kettale puhvri kirjutamine toimub iga 5 sekundi järel. Writeback aga mõeldud ext3 parandamiseks, tuleb uurida kas sellest on kasu üldse ocfs2 juures.

http://wiki.centos.org/HowTos/Disk_Optimization viimastest siin juttu

Märkused

  • Klustri mõõduka kasutamise korras toimub üle 7777/tcp pordi märkimisväärne andmevahetus, ca 500 kBait/s.
  • Paketina ocfs2console jagatakse graafilist seadistus ja haldusprogrammi OCFS2 klustri jaoks, kasutaja peab ise otsustama, kas tema jaoks on oluline seda kasutada.
  • Tundub, et OCFS2 ei sisalda iseenesest mingit klustri komponentide omavahelist autentimist, aga samas saab probleemi leevendada nt iptabels kasutamisega.

http://kuutorvaja.eenet.ee/wiki/OCFS2_failis%C3%BCsteemi_kasutamine_Debianiga

Täpsem õpetus http://oss.oracle.com/projects/ocfs2/dist/documentation/02-mount_umount.pdf