The following sections describe some typical use cases for OCFS2.
You can use OCFS2 nodes to share resources between client systems. For example, the nodes could export a shared file system by using Samba or NFS. To distribute service requests between the nodes, you can use round-robin DNS, a network load balancer, or specify which node should be used on each client.
Oracle RAC uses its own cluster stack, Cluster Synchronization Services (CSS). You can use O2CB in conjunction with CSS, but you should note that each stack is configured independently for timeouts, nodes, and other cluster settings. You can use OCFS2 to host the voting disk files and the Oracle cluster registry (OCR), but not the grid infrastructure user's home, which must exist on a local file system on each node.
As both CSS and O2CB use the lowest node number as a tie breaker
in quorum calculations, you should ensure that the node numbers
are the same in both clusters. If necessary, edit the O2CB
configuration file /etc/ocfs2/cluster.conf to
make the node numbering consistent, and update this file on all
nodes. The change takes effect when the cluster is restarted.
Specify the noatime option when mounting
volumes that host Oracle datafiles, control files, redo logs,
voting disk, and OCR. The noatime option
disables unnecessary updates to the access time on the inodes.
Specify the nointr mount option to prevent
signals interrupting I/O transactions that are in progress.
By default, the init.ora parameter
filesystemio_options directs the database to
perform direct I/O to the Oracle datafiles, control files, and
redo logs. You should also specify the
datavolume mount option for the volumes that
contain the voting disk and OCR. Do not specify this option for
volumes that host the Oracle user's home directory or Oracle
E-Business Suite.
To avoid database blocks becoming fragmented across a disk,
ensure that the file system cluster size is at least as big as
the database block size, which is typically 8KB. If you specify
the file system usage type as datafiles to
the mkfs.ocfs2 command, the file system
cluster size is set to 128KB.
To allow multiple nodes to maximize throughput by concurrently streaming data to an
Oracle datafile, OCFS2 deviates from the POSIX standard by not updating the modification
time (mtime) on the disk when performing non-extending direct I/O writes.
The value of mtime is updated in memory, but OCFS2 does not write the
value to disk unless an application extends or truncates the file, or performs a operation
to change the file metadata, such as using the touch command. This
behaviour leads to results in different nodes reporting different time stamps for the same
file. You can use the following command to view the on-disk timestamp of a file:
# debugfs.ocfs2 -R "stat /file_path" device | grep "mtime:"