You must create a VSAN for the FC-VI ports and a VSAN for the storage ports on each FC switch in the MetroCluster configuration. The VSANs should have a unique number and name. You must do additional configuration if you are using two ISLs with in-order delivery of frames.
Switch fabric | VSAN name | ID number |
---|---|---|
1 | FCVI_1_10 | 10 |
STOR_1_20 | 20 | |
2 | FCVI_2_30 | 30 |
STOR_2_20 | 40 |
FC_switch_A_1# conf t FC_switch_A_1(config)# vsan database FC_switch_A_1(config-vsan-db)# vsan 10 FC_switch_A_1(config-vsan-db)# vsan 10 name FCVI_1_10 FC_switch_A_1(config-vsan-db)# end FC_switch_A_1# copy running-config startup-configThe following example shows the commands on FC_switch__B_1:
FC_switch_B_1# conf t FC_switch_B_1(config)# vsan database FC_switch_B_1(config-vsan-db)# vsan 10 FC_switch_B_1(config-vsan-db)# vsan 10 name FCVI_1_10 FC_switch_B_1(config-vsan-db)# end FC_switch_B_1# copy running-config startup-config
FC_switch_A_1# conf t FC_switch_A_1(config)# vsan database FC_switch_A_1(config)# vsan 10 interface fc1/1 FC_switch_A_1(config)# vsan 10 interface fc1/13 FC_switch_A_1(config)# end FC_switch_A_1# copy running-config startup-config FC_switch_B_1# conf t FC_switch_B_1(config)# vsan database FC_switch_B_1(config)# vsan 10 interface fc1/1 FC_switch_B_1(config)# vsan 10 interface fc1/13 FC_switch_B_1(config)# end FC_switch_B_1# copy running-config startup-config
FC_switch_A_1# show vsan member FC_switch_B_1# show vsan member
FC_switch_A_1# config t FC_switch_A_1(config)# in-order-guarantee vsan 10 FC_switch_A_1(config)# vsan database FC_switch_A_1(config-vsan-db)# vsan 10 loadbalancing src-dst-id FC_switch_A_1(config-vsan-db)# end FC_switch_A_1# copy running-config startup-configThe following example shows the commands on FC_switch__B_1:
FC_switch_B_1# config t FC_switch_B_1(config)# in-order-guarantee vsan 10 FC_switch_B_1(config)# vsan database FC_switch_B_1(config-vsan-db)# vsan 10 loadbalancing src-dst-id FC_switch_B_1(config-vsan-db)# end FC_switch_B_1# copy running-config startup-config
FC_switch_A_1# conf t FC_switch_A_1(config)# qos enable FC_switch_A_1(config)# qos class-map FCVI_1_10_Class match-any FC_switch_A_1(config)# qos policy-map FCVI_1_10_Policy FC_switch_A_1(config-pmap)# class FCVI_1_10_Class FC_switch_A_1(config-pmap-c)# priority high FC_switch_A_1(config-pmap-c)# exit FC_switch_A_1(config)# exit FC_switch_A_1(config)# qos service policy FCVI_1_10_Policy vsan 10 FC_switch_A_1(config)# end FC_switch_A_1# copy running-config startup-configThe following example shows the commands on FC_switch__B_1:
FC_switch_B_1# conf t FC_switch_B_1(config)# qos enable FC_switch_B_1(config)# qos class-map FCVI_1_10_Class match-any FC_switch_B_1(config)# qos policy-map FCVI_1_10_Policy FC_switch_B_1(config-pmap)# class FCVI_1_10_Class FC_switch_B_1(config-pmap-c)# priority high FC_switch_B_1(config-pmap-c)# exit FC_switch_B_1(config)# exit FC_switch_B_1(config)# qos service policy FCVI_1_10_Policy vsan 10 FC_switch_B_1(config)# end FC_switch_B_1# copy running-config startup-config
FC_switch_A_1# conf t FC_switch_A_1(config)# vsan database FC_switch_A_1(config-vsan-db)# vsan 20 FC_switch_A_1(config-vsan-db)# vsan 20 name STOR_1_20 FC_switch_A_1(config-vsan-db)# end FC_switch_A_1# copy running-config startup-configThe following example shows the commands on FC_switch_B_1:
FC_switch_B_1# conf t FC_switch_B_1(config)# vsan database FC_switch_B_1(config-vsan-db)# vsan 20 FC_switch_B_1(config-vsan-db)# vsan 20 name STOR_1_20 FC_switch_B_1(config-vsan-db)# end FC_switch_B_1# copy running-config startup-config
FC_switch_A_1# conf t FC_switch_A_1(config)# vsan database FC_switch_A_1(config)# vsan 20 interface fc1/5 FC_switch_A_1(config)# vsan 20 interface fc1/9 FC_switch_A_1(config)# vsan 20 interface fc1/17 FC_switch_A_1(config)# vsan 20 interface fc1/21 FC_switch_A_1(config)# vsan 20 interface fc1/25 FC_switch_A_1(config)# vsan 20 interface fc1/29 FC_switch_A_1(config)# vsan 20 interface fc1/33 FC_switch_A_1(config)# vsan 20 interface fc1/37 FC_switch_A_1(config)# end FC_switch_A_1# copy running-config startup-configThe following example shows the commands on FC_switch_B_1:
FC_switch_B_1# conf t FC_switch_B_1(config)# vsan database FC_switch_B_1(config)# vsan 20 interface fc1/5 FC_switch_B_1(config)# vsan 20 interface fc1/9 FC_switch_B_1(config)# vsan 20 interface fc1/17 FC_switch_B_1(config)# vsan 20 interface fc1/21 FC_switch_B_1(config)# vsan 20 interface fc1/25 FC_switch_B_1(config)# vsan 20 interface fc1/29 FC_switch_B_1(config)# vsan 20 interface fc1/33 FC_switch_B_1(config)# vsan 20 interface fc1/37 FC_switch_B_1(config)# end FC_switch_B_1# copy running-config startup-config