13 Avril 2018
Pour compléter l'article de Laurent sur la création d'un système de fichier ACFS (disponible ici), où nous avions vu comment créer un volume ACFS pour, par exemple, stocker des dumps ou autres fichiers plats, nous allons voir à travers cet article comment créer un ACFS dont l'usage est appliqué à l'ORACLE_HOME
En effet depuis la release 12.1 du Grid Infrastructure, il est possible de stocker l'ORACLE_HOME dans un FS de type ACFS, moyennant une petite particularité, il faut que cela soit une ressource de type cluster et que le volume soit toujours monté (automount). Oracle préconise alors d’utiliser la couche "Oracle Restart" via l'utilisation du binaire "SRVCTL".
Pour la partie volume en tant que telle, la création peut se faire soit via notre fidèle "sqlplus", ou via "asmcmd", rien ne change.
Vu que j'aime bien utiliser "asmcmd", je vais utiliser cette méthode en partant du postulat q'un diskgroup est déjà crée, nommé "DATA1".
Rien de sorcier, je reprends la méthode de mon acolyte Laurent décrite dans un précédent article, et me connecte au user propriétaire de la couche grid infrastructure de ma machine, dans mon cas "grid", et je lance le binaire "asmcmd".
[root@harley_srv1 ~]$ su - grid
[grid@harley_srv1 ~]$ asmcmd
On crée ensuite un volume nommé ORAHOME_ACFS sur notre diskgroup DATA1, d'une taille de 20Go :
ASMCMD> volcreate -G DATA1 -s 20G ORAHOME_ACFS
Petites vérifications de routine sur asmcmd et coté système :
ASMCMD> volinfo -G DATA1 ORAHOME_ACFS Diskgroup Name: DATA1 Volume Name: ORAHOME_ACFS Volume Device: /dev/asm/orahome_acfs-12 State: ENABLED Size (MB): 20480 Resize Unit (MB): 64 Redundancy: MIRROR Stripe Columns: 8 Stripe Width (K): 1024 Usage: Mountpath: [grid@harley_srv1 ~]$ ls -l /dev/asm total 0 brwxrwx--- 1 root dba 250, 6146 Apr 10 08:46 orahome_acfs-12
Je vais maintenant formater ma partition en type acfs, toujours connecté depuis le user propriétaire de la couche grid :
[grid@harley_srv1 ~]$ /sbin/mkfs -t acfs /dev/asm/orahome_acfs-12
mkfs.acfs: version = 12.2.0.1.0
mkfs.acfs: on-disk version = 39.0
mkfs.acfs: volume = /dev/asm/orahome_acfs-12
mkfs.acfs: volume size = 21474836480 ( 20.00 GB )
mkfs.acfs: Format complete.
C'est à partir de ce moment que cela change de d'habitude, puisque je vais utiliser le binaire "srvctl" pour :
- Créer mon FS nommé "/orahome_acfs",
- L'ajouter dans la registry,
- et le configurer en AUTOMOUNT, de part l'option "-autostart" positionnée à "ALWAYS".
On se connecte donc en ROOT, et on appelle le binaire srvctl :
[root@harley_srv1 ~]# /u01/app/12.2.0.1/grid/bin/srvctl add filesystem -d /dev/asm/orahome_acfs-12 -m /orahome_acfs -u oracle -fstype ACFS -autostart ALWAYS
Je démarre ma ressource toujours avec srvctl, ce qui va automatiquement monter mon Filesystem :
[root@harley_srv1 ~]# /u01/app/12.2.0.1/grid/bin/srvctl start filesystem -d /dev/asm/orahome_acfs-12 [root@harley_srv1 ~]# df -h /orahome_acfs Filesystem Size Used Avail Use% Mounted on /dev/asm/orahome_acfs-12 20.0G 163M 18.9G 1 % /orahome_acfs
Il est maintenant possible, comme toutes ressources gérées par la couche Grid, de faire afficher et modifier certaines options :
[root@harley_srv1 ~]# /u01/app/12.2.0.1/grid/bin/srvctl config filesystem -d /dev/asm/orahome_acfs-12
Volume device: /dev/asm/orahome_acfs-12
Diskgroup name: DATA1
Volume name: ORAHOME_ACFS
Canonical volume device: /dev/asm/orahome_acfs-12
Accelerator volume devices:
Mountpoint path: /orahome_acfs
Mount point owner: oracle
Mount users:
Type: ACFS
Mount options:
Description:
ACFS file system is enabled
ACFS file system is individually enabled on nodes:
ACFS file system is individually disabled on nodes:
Si je veux par exemple ajouter une petite description :
[root@harley_srv1 ~]# /u01/app/12.2.0.1/grid/bin/srvctl modify filesystem -d /dev/asm/orahome_acfs-12 -description "ACFS pour Oracle Home"
Volume device: /dev/asm/orahome_acfs-12
Diskgroup name: DATA1
Volume name: ORAHOME_ACFS
Canonical volume device: /dev/asm/orahome_acfs-12
Accelerator volume devices:
Mountpoint path: /orahome_acfs
Mount point owner: oracle
Mount users:
Type: ACFS
Mount options:
Description: ACFS pour Oracle Home
ACFS file system is enabled
ACFS file system is individually enabled on nodes:
ACFS file system is individually disabled on nodes:
Et voilà ! nous pouvons par la suite installer un moteur Oracle dans ce filesystem ACFS et avons garanti que le FS sera monté automatiquement après chaque reboot ou chaque A/R de la couche grid infrastructure, mais bien évidemment rien ne nous empêche d'utiliser ce Filesystem pour autre chose, qui peut le plus peut le moins !
Enjoy ;-)