What is OpenClos?
OpenClos is open-source software written in Python that helps stand up a leaf-spine data center. Why? Standing up a DC is a fussy business – lots of cabling, IP addressing schemes, and routing protocol configuration to do. OpenClos automates a lot of that work away.
What do we discuss?
- Who was Clos?
- We use Clos in lots of places. IP fabrics have a long history!
- Why is leaf/spine getting so much attention lately?
- How do we build an IP fabric? What are the challenges in this process that OpenClos is addressing?
- What are OpenClos’ design assumptions?
- You are building an IP fabric.
- Inputs come from the user to define the IP addressing scheme, server VLAN scheme, what ASN to start with, etc.
- Outputs come out to create a switch configuration.
- Spine and leaf switches using a template, which can be extended to support anything. Today, support is for Junos. ZTP is available to load the configuration into the hardware.
- DOT files output for documentation, as well as JSON format. No XML right now.
- A cabling plan that can be checked after implementation using LLDP to mitigate an anticipated 5% physical cabling error rate.
- Extensibility of OpenClos to non-Juniper systems.
- How do we know OpenClos is good stuff?
- Continuous integration process using Jenkins.
- Regression & unit testing.
- Project is hosted on GitHub.