Home > Articles > Networking > Storage

  • Print
  • + Share This
This chapter is from the book

Nexus 7000 Unified Fabric Configuration

The Nexus 7000 provides director class support for FCoE solutions and can be used in both core and edge topologies. The platforms provides the high-availability features and capabilities such as redundant supervisors, redundant hardware components, and the inherent availability components of NX-OS, such as Storage VDCs. In-Service Software Upgrade (ISSU), Stateful Switch Over (SSO) and stateful process restart make for a solid foundation.

FCoE on the Nexus 7000 is available on the F1 (N7K-F132XP-15) and F2/F2e (N7K-F248XP-25) modules. When using FCoE on the F2/F2e module, a Supervisor 2 or Supervisor 2E must be used. FCoE on F2/F2e cannot work with a Supervisor 1 module. FCoE is also a licensed feature, and the license is bound to a module, so if FCoE will be used across multiple modules in a chassis, there must be an FCoE license installed per module.

With these requirements met, FCoE can be installed on the Nexus 7000. FCoE installation requires the system QoS policy is configured to a template that provides a no-drop class. This is configured in either the default VDC or the admin VDC if running NX_OS 6.1(1) or later. The default QoS policy uses eight drop classes and is named default-np-8e-policy. Example 8-12 shows the QoS classes available to be selected and shows the change to a single no-drop class. This policy matches FCoE traffic in CoS 3 and provides a lossless Ethernet transport (no drop).

Example 8-12. Setting the System QoS Policy

N7K-1# config
Enter configuration commands, one per line.  End with CNTL/Z.
N7K-1(config)# system qos
N7K-1(config-sys-qos)# service-policy type network-qos ?
  default-nq-4e-policy  Default 4-ethernet policy (4-drop 4-nodrop CoS)
  default-nq-6e-policy  Default 6-ethernet policy (6-drop 2-nodrop CoS)
  default-nq-7e-policy  Default 7-ethernet policy (7-drop 1-nodrop CoS)
  default-nq-8e-policy  Default 8-ethernet policy (8-drop CoS)
N7K-1(config-sys-qos)# service-policy type network-qos default-nq-7e-policy
N7K-1(config-sys-qos)# end
N7K-1# show policy-map system type network-qos

  Type network-qos policy-maps
  ============================
  policy-map type network-qos default-nq-7e-policy
    class type network-qos c-nq-7e-drop
      match cos 0-2,4-7
      congestion-control tail-drop
      mtu 1500
    class type network-qos c-nq-7e-ndrop-fcoe
      match cos 3
      match protocol fcoe
      pause
      mtu 2112

N7K-1#

With the QoS policy mapped to a no-drop policy, the next step is to install the FCoE feature set and configure a Storage VDC. This enables FCoE across the entire chassis and then creates a VDC to be used for storage functions. Example 8-13 describes this process.

Example 8-13. Installing FCoE Feature Set and Creating a Storage VDC

N7K-1# config
Enter configuration commands, one per line.  End with CNTL/Z.
N7K-1(config)# install feature-set fcoe
N7K-1(config)# vdc FCoE type storage
Note:  Creating VDC, one moment please ...
N7K-1(config-vdc)# show vdc

vdc_id  vdc_name   state    mac               type         lc
------- --------   -----    ---               ----         --
1       N7K-1      active  00:26:98:0f:d9:c1  Admin       None
2       Agg1       active  00:26:98:0f:d9:c2  Ethernet    f2
3       Core1      active  00:26:98:0f:d9:c3  Ethernet    m1 f1 m1xl m2xl
4       Access1    active  00:26:98:0f:d9:c4  Ethernet    m1 f1 m1xl m2xl
5       FCoE       active  00:26:98:0f:d9:c5  Storage     f1 f2


N7K-1(config-vdc)# show vdc FCoE detail

vdc id: 5
vdc name: FCoE
vdc state: active
vdc mac address: 00:26:98:0f:d9:c5
vdc ha policy: RESTART
vdc dual-sup ha policy: SWITCHOVER
vdc boot Order: 1
CPU Share: 5
CPU Share Percentage: 16%
vdc create time: Tue Jul 31 00:15:39 2012
vdc reload count: 0
vdc restart count: 0
vdc type: Storage
vdc supported linecards: f1 f2

N7K-1(config-vdc)#

The next step is to configure the storage VDC by allocating ports from modules, allocating a range of VLANs for use with FCoE, and then setting up the VDC for FCoE usage. Because this VDC is new, the switch prompts for a few items such as system password strength, password, and to run the setup script. When completed, basic FCoE configuration can begin. Example 8-14 walks through this process.

Example 8-14. Allocation of Ports and Initial VDC Configuration

N7K-1# config
Enter configuration commands, one per line.  End with CNTL/Z.
N7K-1(config)# vdc fcoe
N7K-1(config-vdc)# allocate interface e6/17,e6/27,e6/29-32
Entire port-group is not present in the command. Missing ports will be included
automatically
Moving ports will cause all config associated to them in source vdc to be removed.
Are you sure you want to move the ports (y/n)?  [yes] yes
N7K-1(config-vdc)# allocate fcoe-vlan-range 2000 from vdc Access1
N7K-1(config-vdc)# end
N7K-1#
N7K-1# switchto vdc fcoe


         ---- System Admin Account Setup ----


Do you want to enforce secure password standard (yes/no) [y]: n

  Enter the password for "admin":
  Confirm the password for "admin":

         ---- Basic System Configuration Dialog VDC: 5 ----

This setup utility will guide you through the basic configuration of
the system. Setup configures only enough connectivity for management
of the system.

Please register Cisco Nexus7000 Family devices promptly with your
supplier. Failure to register may affect response times for initial
service calls. Nexus7000 devices must be registered to receive
entitled support services.

Press Enter at anytime to skip a dialog. Use ctrl-c at anytime
to skip the remaining dialogs.

Would you like to enter the basic configuration dialog (yes/no): no
Cisco Nexus Operating System (NX-OS) Software
TAC support: http://www.cisco.com/tac
Copyright (c) 2002-2012, Cisco Systems, Inc. All rights reserved.
The copyrights to certain works contained in this software are
owned by other third parties and used and distributed under
license. Certain components of this software are licensed under
the GNU General Public License (GPL) version 2.0 or the GNU
Lesser General Public License (LGPL) Version 2.1. A copy of each
such license is available at
http://www.opensource.org/licenses/gpl-2.0.php and
http://www.opensource.org/licenses/lgpl-2.1.php
N7K-1-FCoE#
N7K-1-FCoE# config
Enter configuration commands, one per line.  End with CNTL/Z.
N7K-1-FCoE(config)# feature-set fcoe
N7K-1-FCoE(config)# feature npiv
N7K-1-FCoE(config)# feature lldp
N7K-1-FCoE(config)# vsan database
N7K-1-FCoE(config-vsan-db)# vsan 2000
N7K-1-FCoE(config-vsan-db)# vlan 2000
N7K-1-FCoE(config-vlan)# fcoe
N7K-1-FCoE(config-vlan)# end
N7K-1-FCoE(config)# end
N7K-1-FCoE#
N7K-1-FCoE# show vlan fcoe

Original VLAN ID        Translated VSAN ID      Association State
----------------        ------------------      -----------------

      2000                      2000             Operational
N7K-1-FCoE#
N7K-1-FCoE(config)# end
N7K-1-FCoE#

With the foundation for FCoE configured, the next step is to provision connectivity. Figure 8-13 shows the topology the following examples use.

Figure 8-13

Figure 8-13. FCoE Topology Between Nexus 7000 and MDS

The first step is to configure the Ethernet interfaces, add them to a port channel for additional bandwidth on the ISL and redundancy, and then configure the VFC, as shown in Example 8-15.

Example 8-15. Nexus 7000 to MDS Interconnection

N7K-1-FCoE# config
Enter configuration commands, one per line.  End with CNTL/Z.
N7K-1-FCoE(config)# feature lacp
N7K-1-FCoE(config)# int e6/29-32
N7K-1-FCoE(config-if-range)# channel-group 258 mode active
N7K-1-FCoE(config-if-range)# int po258
N7K-1-FCoE(config-if)# desc Port Channel to MDS9506-1
N7K-1-FCoE(config-if)# switchport mode trunk
N7K-1-FCoE(config-if)# switchport trunk allowed vlan 2000
N7K-1-FCoE(config-if)# no shut
N7K-1-FCoE(config-if)# int vfc 101
N7K-1-FCoE(config-if)# switchport desc VE Port Channel to MDS9506-1
N7K-1-FCoE(config-if)# switch mode e
N7K-1-FCoE(config-if)# switch trunk allowed vsan 2000
N7K-1-FCoE(config-if)# bind interface po258
N7K-1-FCoE(config-if)# no shut
N7K-1-FCoE(config-if)# end
N7K-1-FCoE# show int vfc101
vfc101 is trunking
    Bound interface is port-channel258
    Port description is VE Port Channel to MDS9506-1
    Hardware is Ethernet
    Port WWN is 20:64:00:26:98:0f:d9:bf
    Admin port mode is E, trunk mode is on
    snmp link state traps are enabled
    Port mode is TE
    Port vsan is 1
    Speed is 40 Gbps
    Trunk vsans (admin allowed and active) (2000)
    Trunk vsans (up)                       (2000)
    Trunk vsans (isolated)                 ()
    Trunk vsans (initializing)             ()
    120677 fcoe in packets
    13910628 fcoe in octets
    120679 fcoe out packets
    10352660 fcoe out octets
    Interface last changed at Tue Jul 31 01:21:17 2012


N7K-1-FCoE#

For reference, Example 8-16 shows the corresponding configuration on the MDS.

Example 8-16. MDS FCoE Configuration

MDS9506-1# show run int Eth3/5, Eth3/6, Eth4/5, Eth4/6

!Command: show running-config interface Ethernet3/5-6, Ethernet4/5-6
!Time: Tue Jul 31 01:30:57 2012

version 5.2(2a)

interface Ethernet3/5
  switchport mode trunk
  switchport trunk allowed vlan 2000
  channel-group 258 mode active
  no shutdown

interface Ethernet3/6
  switchport mode trunk
  switchport trunk allowed vlan 2000
  channel-group 258 mode active
  no shutdown

interface Ethernet4/5
  switchport mode trunk
  switchport trunk allowed vlan 2000
  channel-group 258 mode active
  no shutdown

interface Ethernet4/6
  switchport mode trunk
  switchport trunk allowed vlan 2000
  channel-group 258 mode active
  no shutdown

MDS9506-1#
MDS9506-1# show run int epo258

!Command: show running-config interface ethernet-port-channel258
!Time: Tue Jul 31 01:31:42 2012

version 5.2(2a)

interface ethernet-port-channel258
  switchport mode trunk
  switchport trunk allowed vlan 2000

Invalid interface format at '^' marker.
MDS9506-1# show run int vfc101

!Command: show running-config interface vfc101
!Time: Tue Jul 31 01:31:52 2012

version 5.2(2a)

interface vfc101
  bind interface ethernet-port-channel258
  switchport mode E
  switchport trunk allowed vsan 2000
  no shutdown

MDS9506-1# MDS9506-1# show int vfc101
vfc101 is trunking
    Bound interface is ethernet-port-channel258
    Hardware is Ethernet
    Port WWN is 20:64:00:0d:ec:35:1e:ff
    Admin port mode is E, trunk mode is on
    snmp link state traps are enabled
    Port mode is TE
    Port vsan is 1
    Speed is 40 Gbps
    Trunk vsans (admin allowed and active) (2000)
    Trunk vsans (up)                       (2000)
    Trunk vsans (isolated)                 ()
    Trunk vsans (initializing)             ()
    117696 fcoe in packets
    10091312 fcoe in octets
    117695 fcoe out packets
    13575440 fcoe out octets
    Interface last changed at Tue Jul 31 01:17:09 2012


MDS9506-1#

FCoE on the Nexus 7000 also supports a unique capability that enables interfaces to be shared between two VDCs. This enables the Nexus 7000 to be used in the access layer of networks where servers connect to the switch and use FCoE. A shared interface enables FCoE traffic to be segmented into the Storage VDC at the edge of the network. When an interface is shared between two VDCs, a few rules must be followed:

  • Interfaces can be shared only between one Ethernet VDC and one Storage VDC.
  • Interfaces to be shared must be configured as 802.1Q trunks in the Ethernet VDC.
  • Interfaces may be shared only from the Ethernet VDC that allocated VLANs to the Storage VDC.
  • The Ethernet VDC “owns” the physical interface. If the interface is admin down in the Ethernet VDC, it will be admin down in the Storage VDC.
  • All ports that have a common ASIC must be allocated as shared interfaces. This is done in groups of two on the F1 modules and groups of four on F2/F2e modules.

In Example 8-17, four ports are configured as trunks in the Ethernet VDC and then configured for shared interfaces in the Storage VDC.

Example 8-17. Nexus 7000 Shared Interface Allocation

N7K-1# config
Enter configuration commands, one per line.  End with CNTL/Z.
N7K-1(config)# vdc fcoe
N7K-1(config-vdc)# allocate shared interface e6/17
Entire port-group is not present in the command. Missing ports will be included
automatically
Ports that share the port group of the interfaces you have specified will be affected
as well. Continue (y/n)? [yes] yes
N7K-1(config-vdc)# end
N7K-1# fcoe
Cisco Nexus Operating System (NX-OS) Software
TAC support: http://www.cisco.com/tac
Copyright (c) 2002-2012, Cisco Systems, Inc. All rights reserved.
The copyrights to certain works contained in this software are
owned by other third parties and used and distributed under
license. Certain components of this software are licensed under
the GNU General Public License (GPL) version 2.0 or the GNU
Lesser General Public License (LGPL) Version 2.1. A copy of each
such license is available at
http://www.opensource.org/licenses/gpl-2.0.php and
http://www.opensource.org/licenses/lgpl-2.1.php
N7K-1-FCoE# show int brief

-------------------------------------------------------------------------------
Interface                Status                            Speed
                                                           (Gbps)
-------------------------------------------------------------------------------
sup-fc0                  up                                1

--------------------------------------------------------------------------------
Ethernet      VLAN    Type Mode   Status  Reason                   Speed     Por
t
Interface                                                                    Ch
#
--------------------------------------------------------------------------------
Eth6/17       1       eth  trunk  down    Administratively down      auto(D) --
Eth6/18       1       eth  trunk  down    Administratively down      auto(D) --
Eth6/19       1       eth  trunk  down    Administratively down      auto(D) --
Eth6/20       1       eth  trunk  down    Administratively down      auto(D) --
Eth6/25       --      eth  routed down    Administratively down      auto(D) --
Eth6/26       --      eth  routed down    Administratively down      auto(D) --
Eth6/27       --      eth  routed down    Administratively down      auto(D) --
Eth6/28       --      eth  routed down    SFP not inserted           auto(D) --
Eth6/29       1       eth  trunk  up      none                        10G(D) 258
Eth6/30       1       eth  trunk  up      none                        10G(D) 258
N7K-1-FCoE#

The next step required is to create the VFC interface for the host and specify the shared interface as the binding. This is the same syntax used on the Nexus 5x00 earlier in the chapter. Example 8-18 shows the process for the topology shown in Figure 8-14.

Figure 8-14

Figure 8-14. FCoE Topology

Example 8-18. Nexus 7000 VFC Interface Creation

N7K-1-FCoE# config
Enter configuration commands, one per line.  End with CNTL/Z.
N7K-1-FCoE(config)# int vfc617
N7K-1-FCoE(config-if)# bind interface ethernet 6/17
N7K-1-FCoE(config-if)# no shut
N7K-1-FCoE(config-if)# end
N7K-1-FCoE#

With the VFCs created and bound, VEs created to the MDS, and both storage and hosts connected to the fabric, the last step would be to configure zoning and device aliasing for the FC network. The Nexus switches can participate in zoning with a Fibre Channel network.

Example 8-19 shows a device-alias, zone and zoneset creation, and activation.

Example 8-19. Device alias, zone, and zoneset Creation and Activation

N7K-1-FCoE# config
Enter configuration commands, one per line.  End with CNTL/Z.
N7K-1-FCoE(config)# device-alias mode enhanced
N7K-1-FCoE(config)# device-alias database
N7K-1-FCoE(config-device-alias-db)#   device-alias name C210-ESX1 pwwn
20:00:e8:b7:48:4d:74:22
N7K-1-FCoE(config-device-alias-db)#   device-alias name NetApp_FAS270 pwwn
50:0a:09:81:85:75:90:88
N7K-1-FCoE(config-device-alias-db)# device-alias commit
N7K-1-FCoE(config-device-alias-db)# exit
N7K-1-FCoE(config)# zone name NetappArray vsan 2000
N7K-1-FCoE(config-zone)# member device-alias NetApp_FAS270
N7K-1-FCoE(config-zone)# member device-alias C210-ESX1
N7K-1-FCoE(config-zone)# zone name C210-ESX1 vsan 2000
N7K-1-FCoE(config-zone)# member device-alias C210-ESX1
N7K-1-FCoE(config-zone)# zoneset name VSAN2000_ZS vsan 2000
N7K-1-FCoE(config-zoneset)# member NetappArray
N7K-1-FCoE(config-zoneset)# member C210-ESX1
N7K-1-FCoE(config-zoneset)# exit
N7K-1-FCoE(config)# zoneset activate name VSAN2000_ZS vsan 2000
N7K-1-FCoE(config)# end
N7K-1-FCoE#
  • + Share This
  • 🔖 Save To Your Account