This post shows the detail of build cord-pod 5.0 branch.
More detail information and important concept about CORD will be available on CORD Guide. If you have no experience about CORD, it will be more easy to start from CORD in a Box.
I listed some difference between CORD-POD and CORD-in-a-Box here.
- CORD-in-a-Box only have 1 leaf enabled, CORD-POD have a complete Fabric architecture.
- CORD-in-a-Box usually have only 1 compute node
compute1enabled, CORD-POD have 3 compute nodes (includes head node).
- CORD-in-a-Box’s outside traffic will pass through fabric port on overlay ovs, but it will go back to headnode’s self routing table, CORD-POD will send outside traffic to fabric and pass to headnode, then NAT (from vRouter) to outside.
In here, I only list my equipments, you can find Bill of Materials(BOM) on CORD Guide.
- EdgeCore AS5812 * 4
- Accton 5081 Server 3 (HeadNode + 2 Compute Node)
- Management Switch (TOR)
- fabric: 4 switches include spine1, spine2, leaf1, leaf2
- head1: Headnode
- compute1: First Compute Node
This image shows cable relationship between TOR, Fabric and Compute Node. Fabric switches connect to each other with fiber cable, and
compute1 connect to
compute2 connect to
leaf2. Besides connection in CORD, we also need to connect head1-public, head1-private, compute1, compute2, spine1, spine2, leaf1, leaf2 to Management Switch (TOR).
I would suggest you to write down your configuration first, it can make sure your configuration right, my configuration shows as following.
We need to install head1 with Ubuntu 14.04, and head1’s MAAS must have connectivity with compute1 and compute2’s IPMI(Intelligent Platform Management Interface), MAAS controls with IPMI will over management network on TOR.
In this part, your head node should already installed as brand new Ubuntu 14.04(trusty), and follow this part to configure your head node machine.
And information about your CORD will be filled in a file named like as
mcord-oai-physical.yml, this file put in your CORD type directory:
~/cord/orchestration/profiles/mcord/podconfig/, if you are using
E-CORD, then change to target profile directory.
You can find configuration example here. And replace variables:
deploy_docker_registry and so on as your machine’s constant.
After everything were set, you can run following commands to start build.
Build log will redirect to
~/build.out, but I’m still highly recommend you to execute make command with
tmux, execute build in tmux and you detach session, then you are free to go to grab food and drink, come back 2 hours later.