What Does Input/Output Fencing (I/O Fencing) Mean?
Input/output (I/O) fencing is a method of preventing data corruption in a clustered and shared-storage computer environment by isolating a malfunctioning node.
A cluster contains a group of computers linked together so that they are all aware of each other's existence and current status. They can access the same data via the effective sharing of storage. Clustered servers provide high availability and, to a limited extent, load balancing across database access. I/O fencing is a mechanism where if any node starts malfunctioning in the computer cluster environment, then that node gets isolated automatically so it cannot access shared data via I/O operations.
Techopedia Explains Input/Output Fencing (I/O Fencing)
It is important to have a proper mechanism to identify the malfunctioning node by other active nodes. Otherwise, there may be a chance that the malfunctioning node understands that it is the healthy one and the other nodes are malfunctioning. This could create a race condition, where all nodes try to access shared resources, such as a shared database, possibly leading to a corrupted database.
Conceptually, I/O fencing is simple enough, but its execution varies between clustering and database software vendors. Often, complex databases use this technology, which is most often found on fibre-channel storage area network (SAN) arrays.
Vendor specific examples of I/O fencing are as follows:
- Oracle Parallel Server (OPS) at a database level.
- Red Hat Global File Server (GFS) at a file system level.
- Veritas Cluster Server (VCS) at a platform and database-agnostic level.