Go to main content

Managing SAN Devices and I/O Multipathing in Oracle® Solaris 11.4

Exit Print View

Updated: November 2020
 
 

Configuring Load Balancing Policy for Oracle Solaris I/O Multipathing

I/O multipathing support in Oracle Solaris aggregates the physical paths of a disk device to virtual paths that is managed by the scsi_vhci driver. Creating virtual paths are useful for fail over when a path becomes offline and for load balancing purposes. When there are multiple paths available for I/O, you can specify the load balancing policy by using the load-balance tunable parameter in the scsi_vhci.conf file. The policy indicates how a physical path is selected for each I/O instance.

The syntax for the load balancing tunable parameter is as follows:

load-balance=policy;

The following list describes the available load balancing policies:

  • none or same-path – No dynamic load balancing is used for the I/O issued to a given device or a LU. When a physical path is selected, the system continues to use the same path until that path fails. A new path from the other active physical path is selected as a part of the fail over feature. This new path is used for the LU until it fails. The selection mechanism of this physical path is not defined. The policy same-path is an alias for none.

  • round-robin – This is the simplest and the most frequently used load balancing policy. When the round-robin policy is set, I/O requests are routed to a set of active physical paths in a circular pattern.

  • logical-block – This policy has a parameter region-size in the scsi_vhci.conf file. The region-size parameter identifies a power-of-two block-size region. The default value of region-size is 18, or 128 with 512-byte blocks.

    The logical block address (LBA) space of the device are partitioned into regions with the specified region-size. Each region is assigned to one of the physical paths in the active set in a round robin pattern. This policy selects a path that its corresponding regions cover the starting logical block address (LBA) of the I/O in question. If the load-balance policy is logical-block, the region-size is by default 18 as follows:

    region-size=18;

For more information, see Displaying Logical Unit Information.

How to Change the Load Balancing Policy

  1. Become an administrator.

    For more information, see Using Your Assigned Administrative Rights in Securing Users and Processes in Oracle Solaris 11.4.

  2. Copy the /kernel/drv/scsi_vhci.conf file to the /etc/driver/drv/scsi_vhci.conf file.

    Note -  Do not edit the delivered system default version in the /kernel/drv directory.
  3. Edit the /etc/driver/drv/scsi_vhci.conf file to configure the load balancing policy tunable.

    For example, set the value as round-robin for the load balancing tunable:

    load-balance="round-robin";