Go to main content

Concepts for Oracle® Solaris Cluster 4.4

Exit Print View

Updated: February 2019
 
 

Global Namespace

The Oracle Solaris Cluster software mechanism that enables global devices is the global namespace. The global namespace includes the /dev/global/ hierarchy as well as the ZFS pools or volume manager namespaces. The global namespace reflects both multihost disks and local disks (and any other cluster device, such as CD-ROMs and tapes). Each cluster node that is physically connected to multihost disks provides a path to the storage for any node in the cluster.

For Solaris Volume Manager, the volume manager namespaces are located in the /dev/md/diskset/dsk (and rdsk) directories. These namespaces consist of directories for each Solaris Volume Manager disk set imported throughout the cluster.

In the Oracle Solaris Cluster software, each device node in the local volume manager namespace is replaced by a symbolic link to a device node in the /global/.devices/node@nodeID file system. For ZFS pools, each device node is replaced by a symbolic link to a device node in the /rpool/globaldevices/node@nodeID directory. nodeID is an integer that represents the nodes in the cluster. Oracle Solaris Cluster software continues to present the ZFS pools or volume manager devices, as symbolic links, in their standard locations as well. Both the global namespace and standard ZFS pools and volume manager namespaces are available from any cluster node.

    The advantages of the global namespace include the following:

  • Each cluster node remains fairly independent, with little change in the device administration model.

  • Third-party generated device trees are still valid and continue to work.

  • Given a local device name, an easy mapping is provided to obtain its global name. For more information, see the cldevice(8CL) man page.

Local and Global Namespaces Example

The following table shows the mappings between the local and global namespaces for a multihost disk, c0t0d0s0.

Table 3  Local and Global Namespace Mappings
Component or Path
Local Host Namespace
Global Namespace
Oracle Solaris logical name
/dev/dsk/c0t0d0s0
For UFS: /global/.devices/node@nodeID/dev/dsk/c0t0d0s0
For ZFS: /rpool/globaldevices/node@nodeID/dev/dsk/c0t0d0s0
DID name
/dev/did/dsk/d0s0
For UFS: /global/.devices/node@nodeID/dev/did/dsk/d0s0
For ZFS: /rpool/globaldevices/node@nodeID/dev/did/dsk/d0s0
Solaris Volume Manager
/dev/md/diskset/dsk/d0
For UFS: /global/.devices/node@nodeID/dev/md/shared/diskset#/dsk/d0

The global namespace is automatically generated on installation and updated with every reconfiguration reboot. You can also generate the global namespace by using the cldevice command. See the cldevice(8CL) man page.

In Oracle Solaris Cluster 4.4 and later releases, the global devices namespace is hosted on a ZFS dataset. In releases prior to Oracle Solaris Cluster 4.4, the global devices namespace is hosted on a UFS lofi device.