Configuring Fibre Channel Connectivity

This procedure shows you how to use the Cisco APIC REST API to configure Fibre Channel-enabled interfaces and EPGs accessing those interfaces.

Procedure

Step 1

Create a VSAN pool. This example creates VSAN pool myVsanPool1 and specifies the range of VSANs to be included as vsan-50 to vsan-60.

Example:

POST https://<apic-ip-address>/api/mo/uni/infra/vsanns-[myVsanPool1]-static.xml

<fvnsVsanInstP allocMode="static" name="myVsanPool1">
    <fvnsVsanEncapBlk from="vsan-50" name="encap" to="vsan-60"/>
</fvnsVsanInstP>

Step 2

Create a Fibre Channel domain. This example creates the Fibre Channel domain (VSAN domain) myFcDomain1 and associates it with the VSAN pool myVsanPool1.

Example:

POST https://<apic-ip-address>/api/mo/uni/fc-myFcDomain1.xml

<fcDomP name="myFcDomain1">
    <fcRsVsanNs tDn="uni/infra/vsanns-[myVsanPool1]-static"/>
</fcDomP>

Step 3

Create an attached entity policy (AEP) for the Fibre Channel ports. This example creates the AEP myFcAEP1 and associates it with the Fibre Channel domain myFcDomain1.

Example:

POST https://<apic-ip-address>/api/mo/uni.xml

<polUni>
    <infraInfra>
        <infraAttEntityP name="myFcAEP1">
            <infraRsDomP tDn="uni/fc-myFcDomain1"/>
        </infraAttEntityP>
    </infraInfra>
</polUni>

Step 4

Create a Fibre Channel interface policy and a policy group for server host ports. This example executes the following requests:

  • Creates a FC interface policy myFcHostIfPolicy1 for server host ports. These are F ports with no trunking.
  • Creates a FC interface policy group myFcHostPortGroup1 that includes the FC host interface policy myFcHostIfPolicy1.
  • Associates the policy group to the FC interface policy to convert these ports to FC ports.
  • Creates a host port profile myFcHostPortProfile.
  • Creates a port selector myFcHostSelector that specifies ports in range 1/1-8.
  • Creates a node selector myFcNode1 that specifies leaf node 104.
  • Creates a node selector myLeafSelector that specifies leaf node 104.
  • Associates the host ports to the leaf node.

Example:

POST https://<apic-ip-address>/api/mo/uni.xml

<polUni>
    <infraInfra>
        <fcIfPol name="myFcHostIfPolicy1" portMode="f" trunkMode="trunk-off" speed="auto"/>
        <infraFuncP>
            <infraFcAccPortGrp name="myFcHostPortGroup1">
                <infraRsFcL2IfPol tnFcIfPolName="myFcHostIfPolicy1"/>
            </infraFcAccPortGrp>
        </infraFuncP>
        <infraAccPortP name="myFcHostPortProfile">
            <infraHPortS name="myFcHostSelector" type="range">
                <infraPortBlk name="myHostPorts" fromCard="1" toCard="1" fromPort="1" toPort="8"/>
                <infraRsAccBaseGrp tDn="uni/infra/funcprof/fcaccportgrp-myFcHostPortGroup1"/>
            </infraHPortS>
        </infraAccPortP>
        <infraNodeP name="myFcNode1">
            <infraLeafS name="myLeafSelector" type="range">
                <infraNodeBlk name="myLeaf104" from_="104" to_="104"/>
            </infraLeafS>
            <infraRsAccPortP tDn="uni/infra/accportprof-myHostPorts"/>
        </infraNodeP>
    </infraInfra>
</polUni>

Note When this configuration is applied, a switch reload is required to bring up the ports as FC ports.

Currently only one contiguous range of ports can be converted to FC ports, and this range must be multiple of 4 ending with a port number that is multiple of 4. Examples are 1-4, 1-8, or 21-24.

Step 5

Create a Fibre Channel interface policy and a policy group for uplink port channels. This example executes the following requests:

  • Creates a FC interface policy myFcUplinkIfPolicy2 for uplink ports. These are NP ports with trunking enabled.
  • Creates a FC interface bundle policy group myFcUplinkBundleGroup2 that includes the FC uplink interface policy myFcUplinkIfPolicy2.
  • Associates the policy group to the FC interface policy to convert these ports to FC ports.
  • Creates an uplink port profile myFcUplinkPortProfile.
  • Creates a port selector myFcUplinkSelector that specifies ports in range 1/9-12.
  • Associates the host ports to the leaf node 104.

Example:

POST https://<apic-ip-address>/api/mo/uni.xml

<polUni>
    <infraInfra>
        <fcIfPol name="myFcUplinkIfPolicy2" portMode="np" trunkMode="trunk-on" speed="auto"/>
        <infraFuncP>
            <infraFcAccBndlGrp name="myFcUplinkBundleGroup2">
                <infraRsFcL2IfPol tnFcIfPolName="myFcUplinkIfPolicy2"/>
            </infraFcAccBndlGrp>
        </infraFuncP>
        <infraAccPortP name="myFcUplinkPortProfile">
            <infraHPortS name="myFcUplinkSelector" type="range">
                <infraPortBlk name="myUplinkPorts" fromCard="1" toCard="1" fromPort="9" toPort="12"/>
                <infraRsAccBaseGrp tDn="uni/infra/funcprof/fcaccportgrp-myFcUplinkBundleGroup2"/>
            </infraHPortS>
        </infraAccPortP>
        <infraNodeP name="myFcNode1">
            <infraLeafS name="myLeafSelector" type="range">
                <infraNodeBlk name="myLeaf104" from_="104" to_="104"/>
            </infraLeafS>
            <infraRsAccPortP tDn="uni/infra/accportprof-myUplinkPorts"/>
        </infraNodeP>
    </infraInfra>
</polUni>

Note When this configuration is applied, a switch reload is required to bring up the ports as FC ports.

Currently only one contiguous range of ports can be converted to FC ports, and this range must be multiple of 4 ending with a port number that is multiple of 4. Examples are 1-4, 1-8, or 21-24.

Step 6

Create the tenant, application profile, EPG and associate the FC bridge domain with the EPG. This example creates a bridge domain myFcBD1 under a target tenant configured to support FC and an application EPG epg1. It associates the EPG with Fibre Channel domain myFcDomain1 and a Fibre Channel path to interface 1/7 on leaf switch 104. Each interface is associated with a VSAN.

Example:

POST https://<apic-ip-address>/api/mo/uni/tn-tenant1.xml

<fvTenant name="tenant1">
    <fvCtx name="myFcVRF"/>
    <fvBD name="myFcBD1" type="fc">
        <fvRsCtx tnFvCtxName="myFcVRF"/>
    </fvBD>
    <fvAp name="app1">
        <fvAEPg name="epg1">
            <fvRsBd tnFvBDName="myFcBD1"/>
            <fvRsDomAtt tDn="uni/fc-myFcDomain1"/>
            <fvRsFcPathAtt tDn="topology/pod-1/paths-104/pathep-[fc1/1]" vsan="vsan-50" vsanMode="native"/>
            <fvRsFcPathAtt tDn="topology/pod-1/paths-104/pathep-[fc1/2]" vsan="vsan-50" vsanMode="native"/>
        </fvAEPg>
    </fvAp>
</fvTenant>

Step 7

Create a traffic map to pin server ports to uplink ports. This example creates a traffic map to pin server port vFC 1/47 to uplink port FC 1/7.

Example:

POST https://<apic-ip-address>/api/mo/uni/tn-tenant1.xml

<fvTenant name="tenant1">
    <fvAp name="app1">
        <fvAEPg name="epg1">
            <fvRsFcPathAtt tDn="topology/pod-1/paths-104/pathep-[eth1/47]" vsan="vsan-50" vsanMode="native">
                <fcPinningLbl name="label1"/>
            </fvRsFcPathAtt>
        </fvAEPg>
    </fvAp>
</fvTenant>

POST https://<apic-ip-address>/api/mo/uni/tn-vfc_t1.xml

<fvTenant name="tenant1">
    <fcPinningP name="label1">
        <fcRsPinToPath tDn="topology/pod-1/paths-104/pathep-[fc1/7]"/>
    </fcPinningP>
</fvTenant>

Note If traffic map pinning is configured for the first time, the server host port must be shut before configuring the first traffic map.