Infrastructure setup (x1):

  • Start and configure the DHCP infrastructure
  • Optional: Configure and enable infrastructure services such as AAA servers, SNMP servers, syslog server
  • Install and configure Ignite
    • Create IP/VLAN pools
    • Design the configuration templates for the leaf and spine switches
      • One single template is needed per switch category (such as leaf, spine, core)
    • Design the topology for the fabric
    • Assign image version and configuration templates to the switches
  • Configure the DHCP server to redirect DHCP requests from the switches to Ignite

Sample DHCP-Server configuration for POAP (Linux dhcpd):

## ScopeStart:ScopeName:POAP_Scope  
     subnet 10.10.10.0 netmask 255.255.255.0 {  
     range 10.10.10.40 10.10.10.50;  
            max-lease-time 3600;  
      option bootfile-name "poap.py";  
         option domain-name-servers 10.10.10.250;  
          option routers 10.10.10.1;  
        option tftp-server-name "10.10.10.200";  
     }  

Design Pools of Resources:

Design Pools of Resources

Design Configuration Template Leaf Switches with Ignite:

Design Configuration Template Leaf Switches with Ignite

Design Topology for the Fabric with Ignite:

Design Topology for the Fabric with Ignite

Assigning Configuration Templates to Switches:

Assigning Configuration Templates to Switches

Switch setup (x100):

  • Rack the switch
  • Connect the management (in-band or out-of-band) interfaces
  • Connect a console connection to a terminal server (Optional)
  • Power-on the switch

Each switch, upon being booted, completes the following steps automatically:

  • Issues a DHCP request and receives an IP address
  • Contacts the Ignite server and downloads the assigned image and configuration
    • Ignite generates configurations based on the defined configuration templates and pools
  • Reboots with the proper image and configuration, see the figure Switch Booting Up with POAP
  • Installs and configures the configuration agents (Puppet, Chef, Splunk Forwarder)

Switch Booting Up with POAP

[7:51:26] - INFO: Get serial number: ABC1234ab
[7:51:26]S/N[ABC1234ab] - INFO: device type is n9k
[7:51:26]S/N[ABC1234ab] - INFO: device os version is 7.0(3)I1(2)
[7:51:26]S/N[ABC1234ab] - INFO: device system image is n9000-dk9.7.0.3.I1.2.bin
[7:51:26]S/N[ABC1234ab] - INFO: check free space
[7:51:26]S/N[ABC1234ab] - INFO: free space is 3881536 kB
[7:51:26]S/N[ABC1234ab] - INFO: Ready to copy protocol scp, host 10.10.10.30, source /server-list.cfg
[7:51:29]S/N[ABC1234ab] - INFO: Get Device Image Config File
[7:51:29]S/N[ABC1234ab] - INFO: removing tmp file /bootflash/server-list.cfg
[7:51:29]S/N[ABC1234ab] - INFO: Ready to copy protocol scp host 10.10.10.30/ABC1234ab/recipe.cfg recipe.cfg
[7:51:33]S/N[ABC1234ab] - INFO: Get Device Recipe
[7:51:33]S/N[ABC1234ab] - INFO: removing tmp file /bootflash/recipe.cfg
[7:51:35]S/N[ABC1234ab] - INFO: Download CA Certificate
[7:51:35]S/N[ABC1234ab] - INFO: Ready to copy protocol scp, host 10.10.10.30, source /cacert.pem
[7:51:38]S/N[ABC1234ab] - INFO: create_image_conf
[7:51:51]S/N[ABC1234ab] - INFO: Ready to copy protocol scp, host 10.10.10.30, source /n9000-dk9.7.0.3.I2.1.bin
[7:53:13]S/N[ABC1234ab] - INFO: Completed Copy of System Image
[7:53:35]S/N[ABC1234ab] - INFO: Ready to copy protocol scp, host 10.10.10.30, source /ABC1234ab/device-config
[7:53:38]S/N[ABC1234ab] - INFO: Completed Copy of Config File
[7:53:38]S/N[ABC1234ab] - INFO: Split config invoked....

Fabric Wide (x1):

Validate node-to-node and end-to-end configuration and connectivity

  • (Future) Trigger a validation in Ignite to verify configuration and connectivity