Re: Dual target node ALUA multipathing for Vmware

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 09/09/2014 09:35 AM, Robert Wood wrote:
> Robert Wood <rwood <at> iss-integration.com> writes:
> 
>>
>> One node sets ALUA state to s (Standby), while the other to o
>> (Active/Optimized).  However,when both nodes are presenting the same
>> LUN to Vmware, the TPG is only set to one of the nodes' ID for all
>> paths to storage.  ALUA state is Standby for all LUNs and there are
>> many errors in Vmware host's vmkernel.log, such as:
> 
> So far we found that TPG groups of the same name must be present on both 
> hosts, even if they have no members.  Suspecting that LIO generates some TPG 
> ID behind the scenes, but this is not documented.  As long as all groups with 
> the same names are present on all hosts, initiator sees correct ALUA states.
> 

Yeah, ESXi requires that it gets the same info from all ports that the
LU can be accessed through. This includes group id values and also ALUA
states. In your example you had group id 2 showing standby on kio1, but
that group did not exist on e1. Also e1 had a group id 1, but kio1 did not.

So in your example we would want to see:


root@kio1:/sys/kernel/config/target# tcm_node --listtgptgps
iblock_4711/p_FCLun_test2
\------> kio1  Target Port Group ID: 0
         Active ALUA Access Type(s): Implicit and Explicit
         Primary Access State: Standby
         Primary Access Status: Altered by Implicit ALUA
         Preferred Bit: 0
         Active/NonOptimized Delay in milliseconds: 100
         Transition Delay in milliseconds: 0
         \------> TG Port Group Members
         qla2xxx/naa.21000024ff4f0dee/tpgt_1/lun_1
         qla2xxx/naa.21000024ff4f0def/tpgt_1/lun_1

\------> default_tg_pt_gp  Target Port Group ID: 1
         Active ALUA Access Type(s): Implicit and Explicit
         Primary Access State: Active/Optimized
         Primary Access Status: None
         Preferred Bit: 0
         Active/NonOptimized Delay in milliseconds: 100
         Transition Delay in milliseconds: 0
         \------> TG Port Group Members
             No Target Port Group Members

root@e1:/var/log# tcm_node --listtgptgps iblock_4711/p_FCLun_test
\------> e1  Target Port Group ID: 1
         Active ALUA Access Type(s): Implicit and Explicit
         Primary Access State: Active/Optimized
         Primary Access Status: None
         Preferred Bit: 0
         Active/NonOptimized Delay in milliseconds: 100
         Transition Delay in milliseconds: 0
         \------> TG Port Group Members
         qla2xxx/naa.21000024ff4f0f20/tpgt_1/lun_1
         qla2xxx/naa.21000024ff4f0f21/tpgt_1/lun_1

\------> default_tg_pt_gp  Target Port Group ID: 0
         Active ALUA Access Type(s): Implicit and Explicit
         Primary Access State: Standby
         Primary Access Status: None
         Preferred Bit: 0
         Active/NonOptimized Delay in milliseconds: 100
         Transition Delay in milliseconds: 0
         \------> TG Port Group Members
             No Target Port Group Members

> Working to test failover and wondering if there are any controls over the 
> described behavior.


For failover, how are you handling the alua state changes? In my example
above e1 has the active paths. If they went down, ESXi would send a STPG
to kio1. We would then need to resync the alua state. It would look
something like this where group id 0 goes to active group id 1 goes to
standby on both nodes [note the status info might be wrong below but you
get the idea with the groups and alua states changing]:



root@kio1:/sys/kernel/config/target# tcm_node --listtgptgps
iblock_4711/p_FCLun_test2
\------> kio1  Target Port Group ID: 0
         Active ALUA Access Type(s): Implicit and Explicit
         Primary Access State: Active/Optimized
         Primary Access Status: Altered by Explicit ALUA
         Preferred Bit: 0
         Active/NonOptimized Delay in milliseconds: 100
         Transition Delay in milliseconds: 0
         \------> TG Port Group Members
         qla2xxx/naa.21000024ff4f0dee/tpgt_1/lun_1
         qla2xxx/naa.21000024ff4f0def/tpgt_1/lun_1

\------> default_tg_pt_gp  Target Port Group ID: 1
         Active ALUA Access Type(s): Implicit and Explicit
         Primary Access State: Standby
         Primary Access Status: None
         Preferred Bit: 0
         Active/NonOptimized Delay in milliseconds: 100
         Transition Delay in milliseconds: 0
         \------> TG Port Group Members
             No Target Port Group Members

root@e1:/var/log# tcm_node --listtgptgps iblock_4711/p_FCLun_test
\------> e1  Target Port Group ID: 1
         Active ALUA Access Type(s): Implicit and Explicit
         Primary Access State: Standby
         Primary Access Status: None
         Preferred Bit: 0
         Active/NonOptimized Delay in milliseconds: 100
         Transition Delay in milliseconds: 0
         \------> TG Port Group Members
         qla2xxx/naa.21000024ff4f0f20/tpgt_1/lun_1
         qla2xxx/naa.21000024ff4f0f21/tpgt_1/lun_1

\------> default_tg_pt_gp  Target Port Group ID: 0
         Active ALUA Access Type(s): Implicit and Explicit
         Primary Access State: Active/Optimized
         Primary Access Status: None
         Preferred Bit: 0
         Active/NonOptimized Delay in milliseconds: 100
         Transition Delay in milliseconds: 0
         \------> TG Port Group Members
             No Target Port Group Members
--
To unsubscribe from this list: send the line "unsubscribe target-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux SCSI]     [Kernel Newbies]     [Linux SCSI Target Infrastructure]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Device Mapper]

  Powered by Linux