Storage Policies

This chapter includes the following sections:

Creating VSANs

This procedure describes how to create VSANs in a domain group inCisco UCS Central.

Before You Begin

Procedure
     Command or ActionPurpose
    Step 1UCSC# connect resource-mgr 

    Enters resource manager mode.

     
    Step 2UCSC(resource-mgr) #scope domain-group domain-group 

    Enters the UCS domain group configuration mode.

     
    Step 3UCSC(resrouce-mgr) /domain-group #scope fc-uplink 

    Enters fabric configuration command mode.

     
    Step 4UCSC(resrouce-mgr) /domain-group/fc-uplink #scope fabric {a | b}. 

    Enters the configuration mode for the chosen fabric interconnect .

     
    Step 5UCSC(resrouce-mgr) /domain-group/fc-uplink/fabric # create vsan vsan-name vsan-id fcoe-id 

    Enters the VSAN configuration command mode, and creates a VSAN with the VSAN name, VSAN ID, and FCoE VLAN ID that you enter.

     
    Step 6UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* #set zoningstate {enabled | disabled}
    • disabled—The upstream switch configures and controls the Fibre Channel zoning, or Fibre Channel zoning is not implemented on this VSAN.
    • enabled—Cisco UCS Manager will configure and control Fibre Channel zoning when the VSAN is deployed.
     

    Configures Fibre Channel zoning for the VSAN, as follows:

     
    Step 7UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* #commit-buffer 

    Commits the transaction to the system.

     
    Step 8UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan # up 

    Returns to the the fabric interconnect configuration mode .

     
    Step 9UCSC(resource-mgr) /domain-group/fc-uplink/fabric # up 

    Returns to the fabric uplink configuration mode.

     

    The following example shows how to create two VSANs each for both fabric interconnect A and B in domain group 12, and commit the transactions:

    UCSC#connect resource-mgr
    UCSC(resource-mgr) #scope domain-group 12 
    UCSC(resrouce-mgr) /domain-group #scope fc-uplink
    UCSC(resrouce-mgr) /domain-group/fc-uplink #scope fabric a
    UCSC(resrouce-mgr) /domain-group/fc-uplink/fabric # create vsan VSANA 21 21
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* #commit-buffer
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan # up
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric # up
    UCSC(resrouce-mgr) /domain-group/fc-uplink/fabric # create vsan VSANA2 23 23
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* #commit-buffer
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan # up
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric # up
    UCSC(resource-mgr) /domain-group/fc-uplink/up
    UCSC(resrouce-mgr) /domain-group/fc-uplink #scope fabric b
    UCSC(resrouce-mgr) /domain-group/fc-uplink/fabric # create vsan VSANB 22 22
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* #commit-buffer
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan # up
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric # up
    UCSC(resrouce-mgr) /domain-group/fc-uplink/fabric # create vsan VSANB2 24 24
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* #commit-buffer
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan # up
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric # up
    UCSC(resource-mgr) /domain-group/fc-uplink/up

    The following example shows how to create a VSAN for fabric interconnect A in domain group 12, set the Fibre Channel zoning state, and commit the transaction:

    UCSC#connect resource-mgr
    UCSC(resource-mgr) #scope domain-group 12 
    UCSC(resrouce-mgr) /domain-group #scope fc-uplink
    UCSC(resrouce-mgr) /domain-group/fc-uplink #scope fabric a
    UCSC(resrouce-mgr) /domain-group/fc-uplink/fabric # create vsan VSANC 25 25
    ForDoc(resource-mgr) /domain-group/fc-uplink/fabric/vsan* # set zoningstate enabled
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* #commit-buffer
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan # up
    UCSC(resource-mgr) /domain-group/fc-uplink/fabric # up

    Modifying VSAN Settings

    This procedure describes how to modify VSAN settings for either fabric interconnect A or B in a domain group inCisco UCS Central.
    Before You Begin

    Procedure
       Command or ActionPurpose
      Step 1UCSC# connect resource-mgr 

      Enters resource manager mode.

       
      Step 2UCSC(resource-mgr) #scope domain-group domain-group 

      Enters the UCS domain group configuration mode.

       
      Step 3UCSC(resource-mgr) /domain-group #scope fc-uplink 

      Enters fabric configuration command mode.

       
      Step 4UCSC(resource-mgr) /domain-group/fc-uplink #scope fabric{a | b} 

      Enters configuration mode for the chosen fabric interconnect.

       
      Step 5UCSC(resource-mgr)#/domain-group/fc-uplink #/fc-uplink/fabric # scope vsanvsan-name 

      Enters VSAN configuration mode for the chosen VSAN.

       
      Step 6UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan # set idvsan-id 

      Sets the VSAN ID to the value you enter.

       
      Step 7UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* # set fcoevlanfcoe-vlan-id  

      Sets the FCoE VLAN ID to the value you enter.

       
      Step 8UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* #set zoningstate {enabled | disabled}
      • disabled—The upstream switch configures and controls the Fibre Channel zoning, or Fibre Channel zoning is not implemented on this VSAN.
      • enabled—Cisco UCS Manager will configure and control Fibre Channel zoning when the VSAN is deployed.
       

      Sets the Fibre Channel zoning for the VSAN, as follows:

       
      Step 9UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* # commit-buffer 

      Commits the transaction to the system.

       

      The following example shows how to modify the settings for a VSAN associated with fabric interconnect A in domain group 12:

      UCSC#connect resource-mgr
      UCSC(resource-mgr)# scope domain-group 12 
      UCSC(resource-mgr)#/domain-group #scope fc-uplink
      UCSC(resource-mgr)#/domain-group/fc-uplink #scope fabric a
      UCSC(resource-mgr)#/domain-group/fc-uplink #/fc-uplink/fabric # scope vsanVSANC
      UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan # set id2021 
      UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* # set fcoevlan2021
      UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* # set zoningstatedisabled
      UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* # commit-buffer
      UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan #

      Deleting VSANs

      This procedure describes how to delete one or more VSANs from a Cisco UCS Central domain group.

      Before You Begin

      Procedure
         Command or ActionPurpose
        Step 1UCSC# connect resource-mgr 

        Enters resource manager mode.

         
        Step 2UCSC(resource-mgr) #scope domain-group domain-group 

        Enters the UCS domain group configuration mode.

         
        Step 3UCSC(resource-mgr) /domain-group #scope fc-uplink 

        Enters fabric configuration command mode.

         
        Step 4UCSC(resource-mgr) /domain-group/fc-uplink #scope fabric{a | b} 

        Enters configuration mode for the selected fabric interconnect.

         
        Step 5UCSC(resource-mgr)#/domain-group/fc-uplink #/fc-uplink/fabric # scope vsanvsan-name 

        Enters VSAN configuration mode for the selected VSAN.

         
        Step 6UCSC(resource-mgr)#/domain-group/fc-uplink #/fc-uplink/fabric/vsan # delete vsan 

        Deletes the VSAN.

         
        Step 7UCSC(resource-mgr)#/domain-group/fc-uplink #/fc-uplink/fabric/vsan* # commit-buffer 

        Commits the transaction to the system.

         

        The following example shows how to delete one VSAN from fabric interconnect A and one from fabric interconnect B for domain group 12, and commit the transactions:

        UCSC#connect resource-mgr
        UCSC(resource-mgr) #scope domain-group 12 
        UCSC(resrouce-mgr) /domain-group #scope fc-uplink
        UCSC(resrouce-mgr) /domain-group/fc-uplink #scope fabric a
        UCSC(resrouce-mgr) /domain-group/fc-uplink/fabric # scope vsan VSANA
        UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* #commit-buffer
        UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan # up
        UCSC(resource-mgr) /domain-group/fc-uplink/fabric # up
        UCSC(resource-mgr) /domain-group/fc-uplink/up
        UCSC(resrouce-mgr) /domain-group/fc-uplink #scope fabric b
        UCSC(resrouce-mgr) /domain-group/fc-uplink/fabric # delete vsan VSANB
        UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan* #commit-buffer
        UCSC(resource-mgr) /domain-group/fc-uplink/fabric/vsan #

        WWN Pools

        A WWN pool is a collection of WWNs for use by the Fibre Channel vHBAs in a Cisco UCS domain. WWN pools created in Cisco UCS Central can be shared between Cisco UCS domains. You create separate pools for the following:

        • WW node names assigned to the server

        • WW port names assigned to the vHBA

        • Both WW node names and WW port names

        Important:

        A WWN pool can include only WWNNs or WWPNs in the ranges from 20:00:00:00:00:00:00:00 to 20:FF:FF:FF:FF:FF:FF:FF or from 50:00:00:00:00:00:00:00 to 5F:FF:FF:FF:FF:FF:FF:FF. All other WWN ranges are reserved. To ensure the uniqueness of the Cisco UCS WWNNs and WWPNs in the SAN fabric, we recommend that you use the following WWN prefix for all blocks in a pool: 20:00:00:25:B5:XX:XX:XX

        If you use WWN pools in service profiles, you do not have to manually configure the WWNs that will be used by the server associated with the service profile. In a system that implements multi-tenancy, you can use a WWN pool to control the WWNs used by each organization.

        You assign WWNs to pools in blocks.

        WWNN Pools

        A WWNN pool is a WWN pool that contains only WW node names. If you include a pool of WWNNs in a service profile, the associated server is assigned a WWNN from that pool.

        WWPN Pools

        A WWPN pool is a WWN pool that contains only WW port names. If you include a pool of WWPNs in a service profile, the port on each vHBA of the associated server is assigned a WWPN from that pool.

        WWxN Pools

        A WWxN pool is a WWN pool that contains both WW node names and WW port names. You can specify how many ports per node are created with WWxN pools. The pool size for WWxN pools must be a multiple of ports-per-node + 1. For example, if there are 7 ports per node, the pool size must be a multiple of 8. If there are 63 ports per node, the pool size must be a multiple of 64.

        Creating a WWN Pool

        Important:

        A WWN pool can include only WWNNs or WWPNs in the ranges from 20:00:00:00:00:00:00:00 to 20:FF:FF:FF:FF:FF:FF:FF or from 50:00:00:00:00:00:00:00 to 5F:FF:FF:FF:FF:FF:FF:FF. All other WWN ranges are reserved. To ensure the uniqueness of the Cisco UCS WWNNs and WWPNs in the SAN fabric, we recommend that you use the following WWN prefix for all blocks in a pool: 20:00:00:25:B5:XX:XX:XX

        Procedure
           Command or ActionPurpose
          Step 1UCSC# connect policy-mgr  

          Enters policy manager mode.

           
          Step 2UCSC(policy-mgr) # scope org org-name  

          Enters organization mode for the specified organization. To enter the root organization mode, type / as the org-name.

           
          Step 3UCSC(policy-mgr) /org # create wwn-pool wwn-pool-name {node-and-port-wwn-assignment | node-wwn-assignment | port-wwn-assignment}  

          Creates a WWN pool with the specified name and purpose, and enters organization WWN pool mode. This can be one of the following:

          • node-and-port-wwn-assignment—Creates a WWxN pool that includes both world wide node names (WWNNs) and world wide port names (WWPNs).

          • node-wwn-assignment—Creates a WWNN pool that includes only WWNNs.

          • port-wwn-assignment—Creates a WWPN pool that includes only WWPNs.

           
          Step 4UCSC(policy-mgr) /org/wwn-pool # set descr description   (Optional)

          Provides a description for the WWN pool.

          Note   

          If your description includes spaces, special characters, or punctuation, you must begin and end your description with quotation marks. The quotation marks will not appear in the description field of any show command output.

           
          Step 5UCSC(policy-mgr) /org/wwn-pool # set descr description   (Optional)

          Provides a description for the WWN pool.

          Note   

          If your description includes spaces, special characters, or punctuation, you must begin and end your description with quotation marks. The quotation marks will not appear in the description field of any show command output.

           
          Step 6UCSC(policy-mgr) /org/wwn-pool # set max-ports-per-node {15-ports-per-node | 3-ports-per-node | 31-ports-per-node | 63-ports-per-node | 7-ports-per-node}  

          For WWxN pools, specify the maximum number of ports that can be assigned to each node name in this pool. The default value is 3-ports-per-node.

          Note   

          The pool size for WWxN pools must be a multiple of ports-per-node + 1. For example, if you specify 7-ports-per-node, the pool size must be a multiple of 8. If you specify 63-ports-per-node, the pool size must be a multiple of 64.

           
          Step 7UCSC(policy-mgr) /org/wwn-pool # create block first-wwn last-wwn  

          Creates a block (range) of WWNs, and enters organization WWN pool block mode. You must specify the first and last WWN in the block using the form nn:nn:nn:nn:nn:nn:nn:nn, with the WWNs separated by a space.

          Note   

          A WWN pool can contain more than one WWN block. To create multiple WWN blocks, you must enter multiple create block commands from organization WWN pool mode.

           
          Step 8UCSC(policy-mgr) /org/wwn-pool/block # exit  

          Exits organization WWN pool block mode.

           
          Step 9UCSC(policy-mgr) /org/iqn-pool/block # commit-buffer  

          Commits the transaction to the system configuration.

          Note   

          If you plan to create another pool, wait at least 5 seconds.

           

          The following example shows how to create a WWNN pool named GPool1, provide a description for the pool, specify a block of WWNs and an initiator to be used for the pool, and commit the transaction:

          UCSC # connect policy-mgr
          UCSC(policy-mgr) # scope org /
          UCSC(policy-mgr) /org # create wwn-pool GPool1 node-wwn-assignment
          UCSC(policy-mgr) /org/wwn-pool* # set descr "This is my WWNN pool"
          UCSC(policy-mgr) /org/wwn-pool* # create block 20:00:00:25:B5:00:00:00 20:00:00:25:B5:00:00:01
          UCSC(policy-mgr) /org/wwn-pool/block* # exit
          UCSC(policy-mgr) /org/wwn-pool/initiator* # commit-buffer
          UCSC(policy-mgr) /org/wwn-pool/initiator # 
          
          

          The following example shows how to create a WWxN pool named GPool1, provide a description for the pool, specify seven ports per node, specify a block of eight WWNs to be used for the pool, and commit the transaction:

          UCSC # connect policy-mgr
          UCSC(policy-mgr)# scope org /
          UCSC(policy-mgr) /org # create wwn-pool GPool1 node-and-port-wwn-assignment
          UCSC(policy-mgr) /org/wwn-pool* # set descr "This is my WWxN pool"
          UCSC(policy-mgr) /org/wwn-pool* # set max-ports-per-node 7-ports-per-node
          UCSC(policy-mgr) /org/wwn-pool* # create block 20:00:00:25:B5:00:00:00 20:00:00:25:B5:00:00:08
          UCSC(policy-mgr) /org/wwn-pool/block* # commit-buffer
          UCSC(policy-mgr) /org/wwn-pool/block # 
          
          What to Do Next

          • Include the WWPN pool in a vHBA template.

          • Include the WWNN pool in a service profile and/or template.

          • Include the WWxN pool in a service profile and/or template.

          Deleting a WWN Pool

          If you delete a pool, Cisco UCS Central does not reallocate any addresses from that pool that have been assigned to vNICs or vHBAs in Cisco UCS Manager. All assigned addresses from a deleted pool remain with the vNIC or vHBA to which they are assigned until one of the following occurs:

          • The associated service profiles are deleted.

          • The vNIC or vHBA to which the address is assigned is deleted.

          • The vNIC or vHBA is assigned to a different pool.

          Procedure
             Command or ActionPurpose
            Step 1UCSC# connect policy-mgr  

            Enters policy manager mode.

             
            Step 2UCSC(policy-mgr) # scope org org-name  

            Enters organization mode for the specified organization. To enter the root organization mode, type / as the org-name.

             
            Step 3UCSC(policy-mgr) /org # delete wwn-pool wwn-pool-name  

            Deletes the specified WWN pool.

             
            Step 4UCSC(policy-mgr) /org # commit-buffer  

            Commits the transaction to the system configuration.

            Note   

            If you plan to delete another pool, wait at least 5 seconds.

             

            The following example shows how to delete the WWNN pool named GPool1 and commit the transaction:

            UCSC # connect policy-mgr
            UCSC(policy-mgr) # scope org /
            UCSC(policy-mgr) /org # delete wwn-pool GPool1
            UCSC(policy-mgr) /org* # commit-buffer
            UCSC(policy-mgr) /org # 
            

            vHBA Template

            This template is a policy that defines how a vHBA on a server connects to the SAN. It is also referred to as a vHBA SAN connectivity template.

            You must include this policy in a service profile for it to take effect.

            Configuring a vHBA Template

            Procedure
               Command or ActionPurpose
              Step 1UCSC# connect policy-mgr  

              Enters policy manager mode.

               
              Step 2UCSC(policy-mgr)# scope org org-name  

              Enters organization mode for the specified organization. To enter the root organization mode, type / as the org-name .

               
              Step 3UCSC(policy-mgr) /org # create vhba-templ vhba-templ-name [fabric {a | b}] [fc-if vsan-name]  

              Creates a vHBA template and enters organization vHBA template mode.

               
              Step 4UCSC(policy-mgr) /org/vhba-templ # set descr description   (Optional)

              Provides a description for the vHBA template.

               
              Step 5UCSC(policy-mgr) /org/vhba-templ # set fabric {a | b}   (Optional)

              Specifies the fabric to use for the vHBA. If you did not specify the fabric when creating the vHBA template in Step 2, then you have the option to specify it with this command.

               
              Step 6UCSC(policy-mgr) /org/vhba-templ # set fc-if vsan-name   (Optional)

              Specifies the Fibre Channel interface (named VSAN) to use for the vHBA template. If you did not specify the Fibre Channel interface when creating the vHBA template in Step 2, you have the option to specify it with this command.

               
              Step 7UCSC(policy-mgr) /org/vhba-templ # set max-field-size size-num  

              Specifies the maximum size of the Fibre Channel frame payload (in bytes) that the vHBA supports.

               
              Step 8UCSC(policy-mgr) /org/vhba-templ # set pin-group group-name  

              Specifies the pin group to use for the vHBA template.

               
              Step 9UCSC(policy-mgr) /org/vhba-templ # set qos-policy mac-pool-name  

              Specifies the QoS policy to use for the vHBA template.

               
              Step 10UCSC(policy-mgr) /org/vhba-templ # set stats-policy policy-name  

              Specifies the server and server component statistics threshold policy to use for the vHBA template.

               
              Step 11UCSC(policy-mgr) /org/vhba-templ # set type {initial-template | updating-template}  

              Specifies the vHBA template update type. If you do not want vHBA instances created from this template to be automatically updated when the template is updated, use the initial-template keyword; otherwise, use the updating-template keyword to ensure that all vHBA instances are updated when the vHBA template is updated.

               
              Step 12UCSC(policy-mgr) /org/vhba-templ # set wwpn-pool pool-name  

              Specifies the WWPN pool to use for the vHBA template.

               
              Step 13UCSC(policy-mgr) /org/vhba-templ # commit-buffer  

              Commits the transaction to the system configuration.

               

              The following example configures a vHBA template and commits the transaction:

              UCSC# connect policy-mgr
              UCSC(policy-mgr)# scope org /
              UCSC(policy-mgr) /org* # create vhba template VhbaTempFoo
              UCSC(policy-mgr) /org/vhba-templ* # set descr "This is a vHBA template example."
              UCSC(policy-mgr) /org/vhba-templ* # set fabric a
              UCSC(policy-mgr) /org/vhba-templ* # set fc-if accounting
              UCSC(policy-mgr) /org/vhba-templ* # set max-field-size 2112
              UCSC(policy-mgr) /org/vhba-templ* # set pin-group FcPinGroup12
              UCSC(policy-mgr) /org/vhba-templ* # set qos-policy policy34foo
              UCSC(policy-mgr) /org/vhba-templ* # set stats-policy ServStatsPolicy
              UCSC(policy-mgr) /org/vhba-templ* # set type updating-template
              UCSC(policy-mgr) /org/vhba-templ* # set wwpn-pool SanPool7
              UCSC(policy-mgr) /org/vhba-templ* # commit-buffer
              UCSC(policy-mgr) /org/vhba-templ # 
              

              Deleting a vHBA Template

              Procedure
                 Command or ActionPurpose
                Step 1UCSC# connect policy-mgr  

                Enters policy manager mode.

                 
                Step 2UCSC(policy-mgr)# scope org org-name  

                Enters organization mode for the specified organization. To enter the root organization mode, type / as the org-name .

                 
                Step 3UCSC(policy-mgr) /org # delete vhba-templ vhba-templ-name  

                Deletes the specified vHBA template.

                 
                Step 4UCSC(policy-mgr) /org # commit-buffer  

                Commits the transaction to the system configuration.

                 

                The following example deletes the vHBA template named VhbaTempFoo and commits the transaction:

                UCSC# connect policy-mgr
                UCSC(policy-mgr)# scope org /
                UCSC(policy-mgr) /org # delete vhba template VhbaTempFoo
                UCSC(policy-mgr) /org* # commit-buffer
                UCSC(policy-mgr) /org # 
                

                Default vHBA Behavior Policy

                Default vHBA behavior policy allow you to configure how vHBAs are created for a service profile. You can choose to create vHBAs manually, or you can allow them to be created automatically.

                You can configure the default vHBA behavior policy to define how vHBAs are created. This can be one of the following:

                • NoneCisco UCS Central does not create default vHBAs for a service profile. All vHBAs must be explicitly created.

                • HW Inherit—If a service profile requires vHBAs and none have been explicitly defined, Cisco UCS Central creates the required vHBAs based on the adapter installed in the server associated with the service profile.


                Note


                If you do not specify a default behavior policy for vHBAs, none is used by default.


                Configuring a Default vHBA Behavior Policy

                Procedure
                   Command or ActionPurpose
                  Step 1UCSC# connect policy-mgr  

                  Enters policy manager mode.

                   
                  Step 2UCSC(policy-mgr)# scope org / 

                  Enters the root organization mode.

                   
                  Step 3UCSC(policy-mgr)/org # scope vhba-beh-policy 

                  Enters default vHBA behavior policy mode.

                   
                  Step 4UCSC(policy-mgr)/org/vhba-beh-policy # set action {hw-inherit [template_name name] | none} 

                  Specifies the default vHBA behavior policy. This can be one of the following:

                  • hw-inherit—If a service profile requires vHBAs and none have been explicitly defined, Cisco UCS Central creates the required vHBAs based on the adapter installed in the server associated with the service profile.

                    If you specify hw-inherit, you can also specify a vHBA template to create the vHBAs.

                  • noneCisco UCS Central does not create default vHBAs for a service profile. All vHBAs must be explicitly created.

                   
                  Step 5UCSC(policy-mgr)/org/vhba-beh-policy # commit-buffer 

                  Commits the transaction to the system configuration.

                   

                  This example shows how to set the default vHBA behavior policy to hw-inherit.

                  UCSC# connect policy-mgr
                  UCSC(policy-mgr) # scope org /
                  UCSC(policy-mgr)/org # scope vhba-beh-policy
                  UCSC(policy-mgr)/org/vhba-beh-policy # set action hw-inherit
                  UCSC(policy-mgr)/org/vhba-beh-policy* # commit-buffer
                  UCSC(policy-mgr)/org/vhba-beh-policy #

                  Configuring Fibre Channel Adapter Policies

                  Ethernet and Fibre Channel Adapter Policies

                  These policies govern the host-side behavior of the adapter, including how the adapter handles traffic. For example, you can use these policies to change default settings for the following:

                  • Queues

                  • Interrupt handling

                  • Performance enhancement

                  • RSS hash

                  • Failover in an cluster configuration with two fabric interconnects


                  Note


                  For Fibre Channel adapter policies, the values displayed by Cisco UCS Central may not match those displayed by applications such as QLogic SANsurfer. For example, the following values may result in an apparent mismatch between SANsurfer and Cisco UCS Central:

                  • Max LUNs Per Target—SANsurfer has a maximum of 256 LUNs and does not display more than that number. Cisco UCS Central supports a higher maximum number of LUNs.

                  • Link Down Timeout—In SANsurfer, you configure the timeout threshold for link down in seconds. In Cisco UCS Central, you configure this value in milliseconds. Therefore, a value of 5500 ms in Cisco UCS Central displays as 5s in SANsurfer.

                  • Max Data Field Size—SANsurfer has allowed values of 512, 1024, and 2048. Cisco UCS Central allows you to set values of any size. Therefore, a value of 900 in Cisco UCS Central displays as 512 in SANsurfer.


                  Operating System Specific Adapter Policies

                  By default, Cisco UCS provides a set of Ethernet adapter policies and Fibre Channel adapter policies. These policies include the recommended settings for each supported server operating system. Operating systems are sensitive to the settings in these policies. Storage vendors typically require non-default adapter settings. You can find the details of these required settings on the support list provided by those vendors.

                  Important:

                  We recommend that you use the values in these policies for the applicable operating system. Do not modify any of the values in the default policies unless directed to do so by Cisco Technical Support.

                  However, if you are creating an Ethernet adapter policy for a Windows OS (instead of using the default Windows adapter policy), you must use the following formulas to calculate values that work with Windows:

                  • Completion Queues = Transmit Queues + Receive Queues
                  • Interrupt Count = (Completion Queues + 2) rounded up to nearest power of 2

                  For example, if Transmit Queues = 1 and Receive Queues = 8 then:

                  • Completion Queues = 1 + 8 = 9
                  • Interrupt Count = (9 + 2) rounded up to the nearest power of 2 = 16

                  Accelerated Receive Flow Steering

                  Accelerated Receive Flow Steering (ARFS) is hardware-assisted receive flow steering that can increase CPU data cache hit rate by steering kernel level processing of packets to the CPU where the application thread consuming the packet is running. Using ARFS can improve CPU efficiency and reduce traffic latency.

                  ARFS is disabled by default and can be enabled through Cisco UCS Manager. To configure ARFS, do the following:

                  1. Create an adapter policy with ARFS enabled.

                  2. Associate the adapter policy with a service profile.

                  3. Enable ARFS on a host.

                  Configuring a Fibre Channel Adapter Policy

                  Procedure
                     Command or ActionPurpose
                    Step 1UCSC# connect policy-mgr 

                    Enters policy manager mode.

                     
                    Step 2UCSC(policy-mgr)# scope org org-name  

                    Enters organization mode for the specified organization. To enter the root organization mode, type / as the org-name .

                     
                    Step 3UCSC(policy-mgr) /org # create fc-policy policy-name  

                    Creates the specified Fibre Channel adapter policy and enters organization Fibre Channel policy mode.

                     
                    Step 4UCSC(policy-mgr) /org/fc-policy # set descr description   (Optional)

                    Provides a description for the policy.

                    Note   

                    If your description includes spaces, special characters, or punctuation, you must begin and end your description with quotation marks. The quotation marks will not appear in the description field of any show command output.

                     
                    Step 5UCSC(policy-mgr) /org/fc-policy # set error-recovery {fcp-error-recovery {disabled | enabled} | link-down-timeout timeout-msec | port-down-io-retry-count retry-count | port-down-timeout timeout-msec}   (Optional)

                    Configures the Fibre Channel error recovery.

                     
                    Step 6UCSC(policy-mgr) /org/fc-policy # set interrupt mode {intx | msi | msi-x}}   (Optional)

                    Configures the driver interrupt mode.

                     
                    Step 7UCSC(policy-mgr) /org/fc-policy # set port {io-throttle-count throttle-count | max-luns max-num}   (Optional)

                    Configures the Fibre Channel port.

                     
                    Step 8UCSC(policy-mgr) /org/fc-policy # set port-f-logi {retries retry-count | timeout timeout-msec}   (Optional)

                    Configures the Fibre Channel port fabric login (FLOGI).

                     
                    Step 9UCSC(policy-mgr) /org/fc-policy # set port-p-logi {retries retry-count | timeout timeout-msec}   (Optional)

                    Configures the Fibre Channel port-to-port login (PLOGI).

                     
                    Step 10UCSC(policy-mgr) /org/fc-policy # set recv-queue {count count | ring-size size-num}   (Optional)

                    Configures the Fibre Channel receive queue.

                     
                    Step 11UCSC(policy-mgr) /org/fc-policy # set scsi-io {count count | ring-size size-num}   (Optional)

                    Configures the Fibre Channel SCSI I/O.

                     
                    Step 12UCSC(policy-mgr) /org/fc-policy # set trans-queue ring-size size-num}   (Optional)

                    Configures the Fibre Channel transmit queue.

                     
                    Step 13UCSC(policy-mgr) /org/fc-policy # commit-buffer  

                    Commits the transaction to the system configuration.

                     

                    The following example configures a Fibre Channel adapter policy and commits the transaction:

                    UCSC# connect policy-mgr
                    UCSC(policy-mgr)# scope org /
                    UCSC(policy-mgr) /org* # create fc-policy FcPolicy42
                    UCSC(policy-mgr) /org/fc-policy* # set descr "This is a Fibre Channel adapter policy example."
                    UCSC(policy-mgr) /org/fc-policy* # set error-recovery error-detect-timeout 2500
                    UCSC(policy-mgr) /org/fc-policy* # set port max-luns 4
                    UCSC(policy-mgr) /org/fc-policy* # set port-f-logi retries 250
                    UCSC(policy-mgr) /org/fc-policy* # set port-p-logi timeout 5000
                    UCSC(policy-mgr) /org/fc-policy* # set recv-queue count 1
                    UCSC(policy-mgr) /org/fc-policy* # set scsi-io ring-size 256
                    UCSC(policy-mgr) /org/fc-policy* # set trans-queue ring-size 256
                    UCSC(policy-mgr) /org/fc-policy* # commit-buffer
                    UCSC(policy-mgr) /org/fc-policy # 
                    

                    Deleting a Fibre Channel Adapter Policy

                    Procedure
                       Command or ActionPurpose
                      Step 1UCSC# connect policy-mgr 

                      Enters policy manager mode.

                       
                      Step 2UCSC(policy-mgr)# scope org org-name  

                      Enters organization mode for the specified organization. To enter the root organization mode, type / as the org-name .

                       
                      Step 3UCSC(policy-mgr) /org # delete fc-policy policy-name  

                      Deletes the specified Fibre Channel adapter policy.

                       
                      Step 4UCSC(policy-mgr) /org # commit-buffer  

                      Commits the transaction to the system configuration.

                       

                      The following example deletes the Fibre Channel adapter policy named FcPolicy42 and commits the transaction:

                      UCSC# connect policy-mgr
                      UCSC(policy-mgr)# scope org /
                      UCSC(policy-mgr) /org # delete fc-policy FcPolicy42
                      UCSC(policy-mgr) /org* # commit-buffer
                      UCSC(policy-mgr) /org # 
                      

                      Configuring SAN Connectivity Policies

                      LAN and SAN Connectivity Policies

                      Connectivity policies determine the connections and the network communication resources between the server and the LAN or SAN on the network. These policies use pools to assign MAC addresses, WWNs, and WWPNs to servers and to identify the vNICs and vHBAs that the servers use to communicate with the network.


                      Note


                      We do not recommend that you use static IDs in connectivity policies, because these policies are included in service profiles and service profile templates and can be used to configure multiple servers.


                      Privileges Required for LAN and SAN Connectivity Policies

                      Connectivity policies enable users without network or storage privileges to create and modify service profiles and service profile templates with network and storage connections. However, users must have the appropriate network and storage privileges to create connectivity policies.

                      Privileges Required to Create Connectivity Policies

                      Connectivity policies require the same privileges as other network and storage configurations. For example, you must have at least one of the following privileges to create connectivity policies:

                      • admin—Can create LAN and SAN connectivity policies

                      • ls-server—Can create LAN and SAN connectivity policies

                      • ls-network—Can create LAN connectivity policies

                      • ls-storage—Can create SAN connectivity policies

                      Privileges Required to Add Connectivity Policies to Service Profiles

                      After the connectivity policies have been created, a user with ls-compute privileges can include them in a service profile or service profile template. However, a user with only ls-compute privileges cannot create connectivity policies.

                      Creating a SAN Connectivity Policy

                      Procedure
                         Command or ActionPurpose
                        Step 1UCSC# connect policy-mgr  

                        Enters policy manager mode.

                         
                        Step 2UCSC(policy-mgr) # scope org org-name 

                        Enter organization mode for the specified organization. To enter the root organization mode, enter / as the org-name.

                         
                        Step 3UCSC(policy-mgr) /org # create san-connectivity-policy policy-name  

                        Creates the specified SAN connectivity policy, and enters organization network control policy mode.

                        This name can be between 1 and 16 alphanumeric characters. You cannot use spaces or any special characters other than - (hyphen), _ (underscore), : (colon), and . (period) and you cannot change this name after the object has been saved.

                         
                        Step 4UCSC(policy-mgr) /org/san-connectivity-policy # set descr policy-name   (Optional)

                        Adds a description to the policy. We recommend that you include information about where and how the policy should be used.

                        Enter up to 256 characters. you can use any characters or spaces except ' (accent mark), \ (backslash), ^ (carat), " (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote).

                         
                        Step 5UCSC(policy-mgr) /org/service-profile # set identity {dynamic-uuid {uuid | derived} | dynamic-wwnn {wwnn | derived} | uuid-pool pool-name | wwnn-pool pool-name}  

                        Specifies how the server acquires a UUID or WWNN. You can do one of the following:

                        • Create a unique UUID in the form nnnnnnnn-nnnn-nnnn-nnnnnnnnnnnn

                        • Derive the UUID from the one burned into the hardware at manufacture

                        • Use a UUID pool

                        • Create a unique WWNN in the form hh : hh : hh : hh : hh : hh : hh : hh

                        • Derive the WWNN from one burned into the hardware at manufacture

                        • Use a WWNN pool

                         
                        Step 6UCSC(policy-mgr) /org/san-connectivity-policy # commit-buffer  

                        Commits the transaction to the system configuration.

                         

                        The following example shows how to create a SAN connectivity policy named SanConnect242 and commit the transaction:

                        UCSC# connect policy-mgr
                        UCSC(policy-mgr)# scope org /
                        UCSC(policy-mgr) /org* # create san-connectivity-policy SanConnect242
                        UCSC(policy-mgr) /org/san-connectivity-policy* # set descr "SAN connectivity policy"
                        UCSC(policy-mgr) /org/san-connectivity-policy* # set identity wwnn-pool SanPool7
                        UCSC(policy-mgr) /org/san-connectivity-policy* # commit-buffer
                        UCSC(policy-mgr) /org/san-connectivity-policy #
                        What to Do Next

                        Add one or more vHBAs and/or initiator groups to this SAN connectivity policy.

                        Creating a vHBA for a SAN Connectivity Policy

                        If you are continuing from Creating a SAN Connectivity Policy, begin this procedure at Step 3
                        Procedure
                           Command or ActionPurpose
                          Step 1UCSC# connect policy-mgr  

                          Enters policy manager mode.

                           
                          Step 2UCSC(policy-mgr) # scope org org-name 

                          Enters organization mode for the specified organization. To enter the root organization mode, enter / as the org-name.

                           
                          Step 3UCSC(policy-mgr) /org # scope san-connectivity-policy policy-name  

                          Enters SAN connectivity policy mode for the specified SAN connectivity policy.

                           
                          Step 4UCSC(policy-mgr) /org/san-connectivity-policy # create vhba vhba-name [fabric {a | b}] [fc-if fc-if-name]  

                          Creates a vHBA for the specified SAN connectivity policy and enters vHBA mode.

                          This name can be between 1 and 16 alphanumeric characters. You cannot use spaces or any special characters other than - (hyphen), _ (underscore), : (colon), and . (period), and you cannot change this name after the object has been saved.

                           
                          Step 5UCSC(policy-mgr) /org/san-connectivity-policy/vhba # set adapter-policy policy-name  

                          Specifies the adapter policy to use for the vHBA.

                           
                          Step 6UCSC(policy-mgr) /org/san-connectivity-policy/vhba # set identity {dynamic-wwpn {wwpn | derived} | wwpn-pool wwn-pool-name}  

                          Specifies the WWPN for the vHBA.

                          You can set the storage identity using one of the following options:

                          • Create a unique WWPN in the form hh:hh:hh:hh:hh:hh:hh:hh.

                            You can specify a WWPN in the range from 20:00:00:00:00:00:00:00 to 20:FF:FF:FF:FF:FF:FF:FF or from 50:00:00:00:00:00:00:00 to 5F:FF:FF:FF:FF:FF:FF:FF.

                            If you want the WWPN to be compatible with Cisco MDS Fibre Channel switches, use the WWPN template 20:00:00:25:B5:XX:XX:XX.

                          • Derive the WWPN from one burned into the hardware at manufacture.

                          • Assign a WWPN from a WWN pool.

                           
                          Step 7UCSC(policy-mgr) /org/san-connectivity-policy/vhba # set max-field-size size-num  

                          Specifies the maximum size of the Fibre Channel frame payload (in bytes) that the vHBA supports.

                          Enter an integer between 256 and 2112. The default is 2048.

                           
                          Step 8UCSC(policy-mgr) /org/san-connectivity-policy/vhba # set order {order-num | unspecified}  

                          Specifies the PCI scan order for the vHBA.

                           
                          Step 9UCSC(policy-mgr) /org/san-connectivity-policy/vhba # set pers-bind {disabled | enabled}  

                          Disables or enables persistent binding to Fibre Channel targets.

                           
                          Step 10UCSC(policy-mgr) /org/san-connectivity-policy/vhba # set pin-group group-name  

                          Specifies the SAN pin group to use for the vHBA.

                           
                          Step 11UCSC(policy-mgr) /org/san-connectivity-policy/vhba # set qos-policy policy-name  

                          Specifies the QoS policy to use for the vHBA.

                           
                          Step 12UCSC(policy-mgr) /org/san-connectivity-policy/vhba # set stats-policy policy-name  

                          Specifies the statistics threshold policy to use for the vHBA.

                           
                          Step 13UCSC(policy-mgr) /org/san-connectivity-policy/vhba # set template-name policy-name  

                          Specifies the vHBA template to use for the vHBA. If you choose to use a vHBA template for the vHBA, you must still complete all of the configuration not included in the vHBA template, including Steps 4, 7, and 8.

                           
                          Step 14UCSC(policy-mgr) /org/san-connectivity-policy/vhba # set vcon {1 | 2 | 3 | 4 | any}  

                          Assigns the vHBA to one or all virtual network interface connections.

                           
                          Step 15UCSC(policy-mgr) /org/san-connectivity-policy/vhba # commit-buffer  

                          Commits the transaction to the system configuration.

                           

                          The following example shows how to configure a vHBA for a SAN connectivity policy named SanConnect242 and commit the transaction:

                          UCSC# connect policy-mgr
                          UCSC(policy-mgr)# scope org /
                          UCSC(policy-mgr) /org* # scope san-connectivity-policy SanConnect242
                          UCSC(policy-mgr) /org/san-connectivity-policy* # create vhba vhba3 fabric a
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba* # set adapter-policy AdaptPol2
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba* # set identity wwpn-pool SanPool7
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba* # set max-field-size 2112
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba* # set order 0
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba* # set pers-bind enabled
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba* # set pin-group FcPinGroup12
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba* # set qos-policy QosPol5
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba* # set stats-policy StatsPol2
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba* # set template-name SanConnPol3
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba* # set vcon any
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba* # commit-buffer
                          UCSC(policy-mgr) /org/san-connectivity-policy/vhba # 
                          
                          What to Do Next

                          If desired, add another vHBA or an initiator group to the SAN connectivity policy. If not, include the policy in a service profile or service profile template.

                          Creating an Initiator Group for a SAN Connectivity Policy

                          If you are continuing from Creating a SAN Connectivity Policy, begin this procedure at Step 3.

                          Procedure
                             Command or ActionPurpose
                            Step 1UCSC# connect policy-mgr  

                            Enters policy manager mode.

                             
                            Step 2UCSC(policy-mgr) # scope org org-name 

                            Enters organization mode for the specified organization. To enter the root organization mode, enter / as the org-name.

                             
                            Step 3UCSC(policy-mgr) /org # scope san-connectivity-policy policy-name  

                            Enters SAN connectivity policy mode for the specified SAN connectivity policy.

                             
                            Step 4UCSC(policy-mgr) /org/san-connectivity-policy # create initiator-group group-name fc 

                            Creates the specified initiator group for Fibre Channel zoning and enters initiator group mode.

                            This name can be between 1 and 16 alphanumeric characters. You cannot use spaces or any special characters other than - (hyphen), _ (underscore), : (colon), and .(period), and you cannot change this name after the object has been saved.

                             
                            Step 5UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group # create initiator vhba-name  

                            Creates the specified vHBA initiator in the initiator group.

                            If desired, repeat this step to add a second vHBA initiator to the group.

                             
                            Step 6UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group # set storage-connection-policy policy-name  

                            Associates the specified storage connection policy with the SAN connectivity policy.

                            Note   

                            This step assumes that you want to associate an existing storage connection policy to associate with the SAN connectivity policy. If you do, continue with Step 10. If you want to create a local storage definition for this policy instead, continue with Step 6.

                             
                            Step 7UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group/storage-connection-def # create storage-target wwpn  

                            Creates a storage target endpoint with the specified WWPN, and enters storage target mode.

                             
                            Step 8UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group/storage-connection-def/storage-target # set target-path {a | b}  

                            Specifies which fabric interconnect is used for communications with the target endpoint.

                             
                            Step 9UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group/storage-connection-def/storage-target # set target-vsan vsan  

                            Specifies which VSAN is used for communications with the target endpoint.

                             
                            Step 10UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group # commit-buffer  

                            Commits the transaction to the system configuration.

                             

                            The following example shows how to configure an initiator group named initGroupZone1 with two initiators for a a SAN connectivity policy named SanConnect242, configure a local storage connection policy definition named scPolicyZone1, and commit the transaction:

                            UCSC# connect policy-mgr
                            UCSC(policy-mgr)# scope org /
                            UCSC(policy-mgr) /org* # scope san-connectivity-policy SanConnect242
                            UCSC(policy-mgr) /org/san-connectivity-policy # create initiator-group initGroupZone1 fc
                            UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group* # set zoning-type sist
                            UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group* # create initiator vhba1
                            UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group* # create initiator vhba2
                            UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group* # create storage-connection-def scPolicyZone1
                            UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group/storage-connection-def* # create storage-target 
                            20:10:20:30:40:50:60:70
                            UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group/storage-connection-def/storage-target* # set 
                            target-path a
                            UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group/storage-connection-def/storage-target* # set 
                            target-vsan default
                            UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group* # commit-buffer
                            UCSC(policy-mgr) /org/san-connectivity-policy/initiator-group # 
                            
                            What to Do Next

                            If desired, add another initiator group or a vHBA to the SAN connectivity policy. If not, include the policy in a service profile or service profile template.

                            Deleting a vHBA from a SAN Connectivity Policy

                            Procedure
                               Command or ActionPurpose
                              Step 1UCSC# connect policy-mgr  

                              Enters policy manager mode.

                               
                              Step 2UCSC(policy-mgr) # scope org org-name 

                              Enters organization mode for the specified organization. To enter the root organization mode, enter / as the org-name.

                               
                              Step 3UCSC(policy-mgr) /org # scope san-connectivity-policy policy-name  

                              Enters SAN connectivity policy mode for the specified SAN connectivity policy.

                               
                              Step 4UCSC(policy-mgr) /org/san-connectivity-policy # delete vHBA vhba-name 

                              Deletes the specified vHBA from the SAN connectivity policy.

                               
                              Step 5UCSC(policy-mgr) /org/san-connectivity-policy # commit-buffer  

                              Commits the transaction to the system configuration.

                               

                              The following example shows how to delete a vHBA named vHBA3 from a SAN connectivity policy named SanConnect242 and commit the transaction:

                              UCSC# connect policy-mgr
                              UCSC(policy-mgr)# scope org /
                              UCSC(policy-mgr) /org # scope san-connectivity-policy SanConnect242
                              UCSC(policy-mgr) /org/san-connectivity-policy # delete vHBA vHBA3
                              UCSC(policy-mgr) /org/san-connectivity-policy* # commit-buffer
                              UCSC(policy-mgr) /org/san-connectivity-policy # 
                              

                              Deleting an Initiator Group from a SAN Connectivity Policy

                              Procedure
                                 Command or ActionPurpose
                                Step 1UCSC# connect policy-mgr  

                                Enters policy manager mode.

                                 
                                Step 2UCSC(policy-mgr) # scope org org-name 

                                Enters organization mode for the specified organization. To enter the root organization mode, enter, / as the org-name.

                                 
                                Step 3UCSC(policy-mgr) /org # scope san-connectivity-policy policy-name  

                                Enters SAN connectivity policy mode for the specified SAN connectivity policy.

                                 
                                Step 4UCSC(policy-mgr) /org/san-connectivity-policy # delete initiator-group group-name 

                                Deletes the specified initiator group from the SAN connectivity policy.

                                 
                                Step 5UCSC(policy-mgr) /org/san-connectivity-policy # commit-buffer  

                                Commits the transaction to the system configuration.

                                 

                                The following example shows how to delete an initiator group named initGroup3 from a SAN connectivity policy named SanConnect242 and commit the transaction:

                                UCSC# connect policy-mgr
                                UCSC(policy-mgr)# scope org /
                                UCSC(policy-mgr) /org # scope san-connectivity-policy SanConnect242
                                UCSC(policy-mgr) /org/san-connectivity-policy # delete initiator-group initGroup3
                                UCSC(policy-mgr) /org/san-connectivity-policy* # commit-buffer
                                UCSC(policy-mgr) /org/san-connectivity-policy #