OCFS2 : Le FileSystem Cluster d'Oracle
Contents
1 Introduction
OCFS2 est un filesystem cluster permettant de faire du partage de filesystem entre plusieurs machines avec tolerance de panne.
Ce système de fichier à été initialement créer pour les bases de données d'Oracle et possède donc un mécanisme de lock étidié pour ce type d'applications. Vous pouvez l'utiliser comme système de fichier, mais le poroblème est qu'il peut flusher au bout d'un certain temps de vie les locks trop vieux. Si votre idée est vraiment d'utiliser un filesystème cluster pour y stocker des fichiers, il faudrait mieux vous réorienter vers GFS.
2 Installation
Par défault OCFS2 est compilé en tant que module dans le noyaux.
Pour s'en assurer rien de tel qu'un grep sur le fichier config du kernel :
grep |
grep OCFS2 /boot/config-`uname -r` |
ce qui devrait retourner :
CONFIG_OCFS2_FS=m CONFIG_OCFS2_DEBUG_MASKLOG=y
Nous allons donc installer le nécessaire :
aptitude install ocfs2-tools |
3 Configuration
3.1 cluster.conf
Ajoutez ceci dans le fichier /etc/ocfs2/cluster.conf. Faites attention, c'est très capricieux, intégrez donc que le strict nécessaire avec des tabulations etc... et pas de lignes superflues :
Je ne pense pas avoir besoin de faire beaucoup d'explications, le fichier de configuration est claire. Mais bon, en voici quelques unes au cas ou :
- node_count : nombre de noeuds dans le cluster
Cette configuration est bien-sûre a appliquer sur tous vos noeuds.
3.2 o2cb
Maintenant nous allons éditer le fichier de démarrage d'OCFS2 :
Il faut juste modifier O2CB_ENABLED et O2CB_BOOTCLUSTER en indiquant le nom du cluster OCFS2.
4 Lancement
Il existe un outils graphique permettant de gérer ocfs2, "ocfs2console", mais nous ne le verrons pas ici.
Pour démarrer proprement ocfs2 (nécessaire après chaque modification de configuration) :
/etc/init.d/o2cb offline ocfs2 /etc/init.d/o2cb unload /etc/init.d/o2cb load /etc/init.d/o2cb online ocfs2 |
Pour les prochains redémarrages :
/etc/init.d/o2cb restart |
5 Formatage
Vous pouvez maintenant formater le device que vous souhaitez pour qu'il y ai OCFS2 avec la commande mkfs.ocfs2 :
mkfs |
mkfs.ocfs2 /dev/drbd0 |
Il ne reste plus qu'a monter sur vos noeuds tout ceci :
mount |
mount.ocfs2 /dev/drbd0 /mnt |
6 Ressources
Documentation on Heartbeat2 Xen cluster with drbd8 and OCFS2