Alien-Interference
OS weblog
Preparing a fibercard for MPIO
Categories: AIX

Working with EMC powerpath,  IBM MPIO and VIOS. A description on how to build this configuration.

lsdev -dev fscsi0 -attr

attribute                               value               description                          user_settable                                attach                                    switch             How this adapter is CONNECTED               False
dyntrk                                   yes                   Dynamic Tracking of FC Devices                True
fc_err_recov fast_fail    FC                     Fabric Event Error RECOVERY Policy    True
scsi_id                                   0×4e006b    Adapter SCSI           ID                                      False
sw_fc_class                         3                        FC                                 Class for Fabric           True
$ lsdev -dev fscsi1 -attr
attribute                                     value                    description                                              user_settable

attach switch How this adapter is CONNECTED                                                                               False
dyntrk                                         no                          Dynamic Tracking of FC Devices                     True
fc_err_recov                            delayed_fail      FC Fabric Event Error RECOVERY Policy   True
scsi_id                                         0×4e0069         Adapter SCSI ID                                                      False
sw_fc_class                               3                            FC Class for Fabric                                                  True
$ chdev -dev fscsi1 -attr fc_err_recov=fast_fail dyntrk=yes -perm
fscsi1 changed
$ shutdown -restart

Delete devices under vios environment
rmdev -pdev powerpath0 -recursive

# CNT=11; while [[ ${CNT} -le 15 ]]^Jdo^Jrmdev -dl hdisk${CNT}^J(( CNT +=1 ))>
CNT=4; while [[ ${CNT} -le 15 ]]
do
odmdelete -q “name = hdisk${CNT}” -o CuDv
(( CNT +=1 ))
done

lsmap -vadapter vhost24
SVSA Physloc Client Partition ID
————— ——————————————– ——————
vhost24 U9119.590.83A159E-V3-C129 0×00000000

VTD NO VIRTUAL TARGET DEVICE FOUND

Powerpath has to be installed on the VIO servers only ! not on the LPARs.
I have just installed powerpath 4.5.2 on my vio servers.

Below is the procedure I have followed.

Sharing same disk between Multiple VIO Servers:

In a similar fashion to stand-alone systems sharing disks when we assign
a lun to one host and make it part of a volume group a reservation is
set by that host. That reservation will lock the device and not allow
other hosts to make changes to the volume. In turn, in order to have a
lun be managed by multiple VIO servers we must not allow that
reservation to be set.

To display the current reservation policy on the VIO server use the
lsdev command.

#lsdev -dev hdiskpower# -attr ==> This will list all of the disk
attributes, including the reservation policy.

To change the current policy, or any of the attributes listed as
“user_settable”, use the chdev command:

#chdev -dev hdiskpower# -attr reserve_policy=no_reserve

Note: The disk can not be part of a volume group or this command will
fail with
Method error (/etc/methods/chgdisk):
0514-062 Cannot perform the requested function because the
specified device is busy.

Steps to configure:

* Configure the disk on the first VIO Server and and set
reserve_policy=no

#chdev -dev hdiskpower# -attr reserve_policy=no_reserve
#lsdev -dev hdiskpower# -attr

#mkvdev -vdev hdiskpower# -vadapter vhost# -dev vhdisk# –> Map
VIOS adapter to backing device

* Then configure the disk on the second VIOS and set the reservation
policy to no reserve also

#chdev -dev hdiskpower# -attr reserve_policy=no_reserve
#lsdev -dev hdisk# -attr
#mkvdev -vdev hdisk# -vadapter vhost# -dev vhdisk# (If not specified,
this will default to vtscsi0) –> Map VIOS adapter to backing device
hdiskpower#

The vhost# represents the Virtual SCSI Server Adapter on the VIOS.

If the VIO Server and Client LPARs are active during this configuration,
you will have to reactivate them for the changes to to applied.

This procedure has to be done for each hdiskpower device you will be
sharing between VIO Servers.
The VIO client lpars will be using MPIO by default

Hope this helps!

>> odmget CuAt | grep hdisk4
>
>
>> odmget CuDvDr | grep hdisk4
>

MPIO EMC

# oddelete -q “name = powerpath0″ -o CuAt
ksh: oddelete: not found.
# odmdelete -q “name = powerpath0″ -o CuAt
0518-307 odmdelete: 16 objects deleted.
# rmdev -dl powerpath0
Method error (/etc/methods/undpower):
0514-030 Cannot perform the requested function because
the specified device is dependent on another device which is
not in a correct state.

# odmdelete -q “name = powerpath0″ -o CuDv
0518-307 odmdelete: 1 objects deleted.
# powermt config
powerpath0 created
# lspv
hdisk0 00ca159e65ce758f rootvg active
hdisk1 00ca159e65ce6abb rootvg active
hdisk2 00ca159e65ce785e vdisksp01 active
hdisk3 00ca159e960d0282 vdisksp01 active
hdisk4 none None
hdisk5 00ca159ea87e64ce None
hdisk6 00ca159ea889fd26 None
hdisk7 00ca159ea8801f1a None
hdisk8 none None
hdisk9 none None
hdisk10 none None
hdisk11 none None
hdisk12 none None
hdisk13 none None
# lsattr -El hdisk10
PCM PCM/friend/fcpother Path Control Module False
algorithm fail_over Algorithm True
clr_q no Device CLEARS its Queue on error True
dist_err_pcnt 0 Distributed Error Percentage True
dist_tw_width 50 Distributed Error Sample Time True
hcheck_cmd test_unit_rdy Health Check Command True
hcheck_interval 0 Health Check Interval True
hcheck_mode nonactive Health Check Mode True
location Location Label True
lun_id 0×5c000000000000 Logical Unit Number ID False
lun_reset_spt yes N/A True
max_transfer 0×40000 Maximum TRANSFER Size True
node_name 0×5006048452a520d7 FC Node Name False
pvid none Physical volume identifier False
q_err yes Use QERR bit True
q_type simple Queuing TYPE True
queue_depth 1 Queue DEPTH True
reassign_to 120 REASSIGN time out value True
reserve_policy single_path Reserve Policy True
rw_timeout 30 READ/WRITE time out value True
scsi_id 0×350031 SCSI ID False
start_timeout 60 START unit time out value True
ww_name 0×5006048452a520d7 FC World Wide Name False
#
$ chdev -dev hdisk5 -perm -attr reserve_policy=no_reserve
hdisk5 changed
$ lsattr -El hdisk10
rksh: lsattr: not found.
$ lsdev -dev hdisk5 -attr
attribute value description user_settable

PCM PCM/friend/fcpother Path Control Module False
algorithm fail_over Algorithm True
clr_q no Device CLEARS its Queue on error True
dist_err_pcnt 0 Distributed Error Percentage True
dist_tw_width 50 Distributed Error Sample Time True
hcheck_cmd test_unit_rdy Health Check Command True
hcheck_interval 0 Health Check Interval True
hcheck_mode nonactive Health Check Mode True
location Location Label True
lun_id 0×45000000000000 Logical Unit Number ID False
lun_reset_spt yes N/A True
max_transfer 0×40000 Maximum TRANSFER Size True
node_name 0×5006048452a520d7 FC Node Name False
pvid 00ca159ea87e64ce0000000000000000 Physical volume identifier False
q_err yes Use QERR bit True
q_type simple Queuing TYPE True
queue_depth 1 Queue DEPTH True
reassign_to 120 REASSIGN time out value True
reserve_policy no_reserve Reserve Policy True
rw_timeout 30 READ/WRITE time out value True
scsi_id 0×350031 SCSI ID False
start_timeout 60 START unit time out value True
ww_name 0×5006048452a520d7 FC World Wide Name False
$ lsattr -El hdisk10
$ CNT=4;while
$ lsdev -dev hdisk5 -attr
$ CNT=4;while [[ ${CNT} -le 13 ]]
> do
> chdev -dev hdisk${CNT} -perm -attr reserve_policy=no_reserve
> (( CNT +=1 ))
> done
hdisk4 changed
hdisk5 changed
hdisk6 changed
hdisk7 changed
hdisk8 changed
hdisk9 changed
hdisk10 changed
hdisk11 changed
hdisk12 changed
hdisk13 changed
$ lsdev -dev fscsi0 -attr
attribute value description user_settable

attach switch How this adapter is CONNECTED False
dyntrk no Dynamic Tracking of FC Devices True
fc_err_recov delayed_fail FC Fabric Event Error RECOVERY Policy True
scsi_id 0×4e0073 Adapter SCSI ID False
sw_fc_class 3 FC Class for Fabric True
$ chdev -dev fscsi0 -perm -attr dyntrk=yes fc_err_recov=fast_fail
fscsi0 changed
$ chdev -dev fscsi1 -perm -attr dyntrk=yes fc_err_recov=fast_fail
fscsi1 changed
$ lsdev -dev powerpath0 -attr
attribute value description user_settable

QueueDepthAdj 50 Queue depth adjustment for fast failover True
emcpConfigVCMDB no PowerPath will configure VCM DB device True
pp_major 0 PowerPath Major Number True
$ oem_setup_env
# lvlstmajor
41,43…
# ^D
$ chdev -dev powerpath0 -perm -attr pp_major=41
powerpath0 changed
$ oem_setup_env
# powermt config

# lspv
hdisk0 00ca159e65ce758f rootvg active
hdisk1 00ca159e65ce6abb rootvg active
hdisk2 00ca159e65ce785e vdisksp01 active
hdisk3 00ca159e960d0282 vdisksp01 active
hdisk4 none None
hdisk5 00ca159ea87e64ce None
hdisk6 00ca159ea889fd26 None
hdisk7 00ca159ea8801f1a None
hdisk8 none None
hdisk9 none None
hdisk10 none None
hdisk11 none None
hdisk12 none None
hdisk13 none None
# ^D
$ oem_setup_env
# set -o vi
# /usr/lpp/EMC/Symmetrix/bin/inq.aix64_51
Inquiry utility, Version V7.3-771 (Rev 0.0) (SIL Version V6.3.0.0 (Edit Level 771)
Copyright (C) by EMC Corporation, all rights reserved.
For help type inq -h.

…………..

————————————————————————
DEVICE :VEND :P ROD :REV :SER NUM :CAP(kb)
————————————————————————
/dev/rhdisk0 :IBM :HUS151414VL3800 :S430 :00E1BE5A : 143374000
/dev/rhdisk1 :IBM :HUS151414VL3800 :S430 :00E1DD05 : 143374000
/dev/rhdisk2 :IBM :HUS151414VL3800 :S430 :00E1DC75 : 143374000
/dev/rhdisk3 :IBM :HUS151414VL3800 :S430 :00E75697 : 143374000
/dev/rhdisk4 :EMC :SYMMETRIX :5771 :550004e000 : 2880
/dev/rhdisk5 :EMC :SYMMETRIX :5771 :5501cfa008 : 53539200
/dev/rhdisk6 :EMC :SYMMETRIX :5771 :5501d16008 : 44616000
/dev/rhdisk7 :EMC :SYMMETRIX :5771 :5501d1b008 : 44616000
/dev/rhdisk8 :EMC :SYMMETRIX :5771 :5500e47000 : 8923200
/dev/rhdisk9 :EMC :SYMMETRIX :5771 :5500e48000 : 8923200
/dev/rhdisk10 :EMC :SYMMETRIX :5771 :5500e49000 : 8923200
/dev/rhdisk11 :EMC :SYMMETRIX :5771 :5500e4a000 : 8923200
/dev/rhdisk12 :EMC :SYMMETRIX :5771 :5501d22008 : 8923200
/dev/rhdisk13 :EMC :SYMMETRIX :5771 :5501d23008 : 8923200
#
$ mkvdev -vdev hdisk5 -vadapter vhost20 -dev vdisk5
vdisk5 Available
$ mkvdev -vdev hdisk6 -vadapter vhost24 -dev vdisk6
vdisk6 Available
$ mkvdev -vdev hdisk7 -vadapter vhost25 -dev vdisk7
vdisk7 Available
$ lspath
status name parent connection

Enabled hdisk0 scsi0 8,0
Enabled hdisk1 scsi0 9,0
Enabled hdisk2 scsi0 10,0
Enabled hdisk3 scsi0 11,0
Enabled hdisk4 fscsi0 5006048452a520d7,0
Enabled hdisk5 fscsi0 5006048452a520d7,45000000000000
Enabled hdisk6 fscsi0 5006048452a520d7,4a000000000000
Enabled hdisk7 fscsi0 5006048452a520d7,4b000000000000
Enabled hdisk8 fscsi0 5006048452a520d7,5a000000000000
Enabled hdisk9 fscsi0 5006048452a520d7,5b000000000000
Enabled hdisk10 fscsi0 5006048452a520d7,5c000000000000
Enabled hdisk11 fscsi0 5006048452a520d7,5d000000000000
Enabled hdisk12 fscsi0 5006048452a520d7,65000000000000
Enabled hdisk13 fscsi0 5006048452a520d7,9b000000000000
Enabled hdisk4 fscsi1 5006048452a520d8,0
Enabled hdisk5 fscsi1 5006048452a520d8,45000000000000
Enabled hdisk6 fscsi1 5006048452a520d8,4a000000000000
Enabled hdisk7 fscsi1 5006048452a520d8,4b000000000000
Enabled hdisk8 fscsi1 5006048452a520d8,5a000000000000
Enabled hdisk9 fscsi1 5006048452a520d8,5b000000000000
Enabled hdisk10 fscsi1 5006048452a520d8,5c000000000000
Enabled hdisk11 fscsi1 5006048452a520d8,5d000000000000
Enabled hdisk12 fscsi1 5006048452a520d8,65000000000000
Enabled hdisk13 fscsi1 5006048452a520d8,9b000000000000

Type or select values in entry fields.
Press Enter AFTER making all desired changes.

[Entry Fields]
* SOFTWARE name [EMC.Symmetrix.fcp.rte] +
PREVIEW only? (remove operation will NOT occur) no +
REMOVE dependent software? no +
EXTEND file systems if space needed? no +
DETAILED output? no +
lslpp -l |grep -i emc
EMC.Symmetrix.aix.rte 5.3.0.1 COMMITTED EMC Symmetrix AIX Support
EMCpower.base 5.1.0.0 COMMITTED PowerPath Base Driver and
EMCpower.consistency_grp 5.1.0.0 COMMITTED PowerPath Consistency Group
EMCpower.migration_enabler
EMCpower.mpx 5.1.0.0 COMMITTED PowerPath Multi_Pathing
EMC.Symmetrix.aix.rte 5.3.0.1 COMMITTED EMC Symmetrix AIX Support
\

# lspv
hdisk0 00ca159e65ce74cc rootvg active
hdisk1 00ca159e65ce7924 rootvg active
hdisk2 00ca159ec80dae0a None
hdisk3 00ca159e7ac60f40 None
hdisk5 00ca159ea87e64ce None
hdisk4 00ca159e2c4679c4 None
hdisk6 00ca159ea889fd26 None
hdisk7 00ca159ea8801f1a None
hdisk8 00ca159e2c467d5f None
hdisk9 00ca159e2c467f23 None
hdisk10 00ca159e2c46808f None
hdisk11 00ca159e2c4681eb None
hdisk12 00ca159e2c46833d None
hdisk13 00ca159e2c468492 None
# lslpp -l |grep -i emc
EMC.Symmetrix.aix.rte 5.3.0.1 COMMITTED EMC Symmetrix AIX Support
EMC.Symmetrix.fcp.MPIO.rte
5.3.0.1 COMMITTED EMC Symmetrix FCP MPIO Support
EMC.Symmetrix.aix.rte 5.3.0.1 COMMITTED EMC Symmetrix AIX Support
EMC.Symmetrix.fcp.MPIO.rte
5.3.0.1 COMMITTED EMC Symmetrix FCP MPIO Support
devices.common.IBM.modemcfg.data
# lspath
Enabled hdisk0 scsi0
Enabled hdisk1 scsi0
Enabled hdisk2 scsi0
Enabled hdisk3 scsi0
Enabled hdisk5 fscsi0
Enabled hdisk5 fscsi1
Enabled hdisk4 fscsi0
Enabled hdisk6 fscsi0
Enabled hdisk7 fscsi0
Enabled hdisk8 fscsi0
Enabled hdisk9 fscsi0
Enabled hdisk10 fscsi0
Enabled hdisk11 fscsi0
Enabled hdisk12 fscsi0
Enabled hdisk13 fscsi0
Enabled hdisk4 fscsi1
Enabled hdisk6 fscsi1
Enabled hdisk7 fscsi1
Enabled hdisk8 fscsi1
Enabled hdisk9 fscsi1
Enabled hdisk10 fscsi1
Enabled hdisk11 fscsi1
Enabled hdisk12 fscsi1
Enabled hdisk13 fscsi1
# /usr/lpp/EMC/Symmetrix/bin/inq.aix64_51
Inquiry utility, Version V7.3-771 (Rev 0.0) (SIL Version V6.3.0.0 (Edit Level 771)
Copyright (C) by EMC Corporation, all rights reserved.
For help type inq -h.

…………..

————————————————————————
DEVICE :VEND :P ROD :REV :SER NUM :CAP(kb)
————————————————————————
/dev/rhdisk0 :IBM :HUS151414VL3800 :S430 :00E2A379 : 143374000
/dev/rhdisk1 :IBM :HUS151414VL3800 :S430 :00DECD96 : 143374000
/dev/rhdisk2 :IBM :HUS151414VL3800 :S430 :00DED6A4 : 143374000
/dev/rhdisk3 :IBM :HUS151414VL3800 :S430 :00E89AE4 : 143374000
/dev/rhdisk4 :EMC :SYMMETRIX :5771 :550004e000 : 2880
/dev/rhdisk5 :EMC :SYMMETRIX :5771 :5501cfa008 : 53539200
/dev/rhdisk6 :EMC :SYMMETRIX :5771 :5501d16008 : 44616000
/dev/rhdisk7 :EMC :SYMMETRIX :5771 :5501d1b008 : 44616000
/dev/rhdisk8 :EMC :SYMMETRIX :5771 :5500e47000 : 8923200
/dev/rhdisk9 :EMC :SYMMETRIX :5771 :5500e48000 : 8923200
/dev/rhdisk10 :EMC :SYMMETRIX :5771 :5500e49000 : 8923200
/dev/rhdisk11 :EMC :SYMMETRIX :5771 :5500e4a000 : 8923200
/dev/rhdisk12 :EMC :SYMMETRIX :5771 :5501d22008 : 8923200
/dev/rhdisk13 :EMC :SYMMETRIX :5771 :5501d23008 : 8923200

Comments are closed.