This section provides a short list of essential commands that can be used to deploy virtual or physical PODs.
Before you start, you must obtain the CORD source tree and install Vagrant. Instructions for doing this can be found at Required Tools.
To prepare a newly installed Ubuntu 14.04 system for either a Physical or Virtual pod, you can use the cord-bootstrap.sh script:
{% include "/partials/cord-bootstrap.md" %}
NOTE: Change the
master
path component in the URL to your desired version branch (ex:cord-5.0
) if required.
This is a summary of Installing a Virtual Pod (CORD-in-a-Box).
To install a CiaB, on a suitable Ubuntu 14.04 system, run the following commands:
./cord-bootstrap.sh -v cd ~/cord/build && \ make PODCONFIG=rcord-virtual.yml config && \ make -j4 build |& tee ~/build.out && \ make pod-test |& tee ~/test.out
This will create a virtual R-CORD pod (as specified in the PODCONFIG
), and go through the build and end-to-end test procedure, bringing up vSG and ExampleService instances.
If you'll be running these commands frequently, a shortcut is to use the -t
option on the cord-bootstrap.sh
script to download source, then run all the make targets involved in doing a build and test cycle:
./cord-bootstrap.sh -v -t "PODCONFIG=rcord-virtual.yml config" -t "build" -t "pod-test"
This is a summary of Installing a Physical POD.
After performing the physical configuration, install Ubuntu 14.04 on a suitable head node. On the target head node, add a cord
user with sudo
rights:
sudo adduser cord && \ sudo usermod -a -G sudo cord && \ echo 'cord ALL=(ALL) NOPASSWD:ALL' | sudo tee --append /etc/sudoers.d/90-cloud-init-users
Create a POD configuration file using [physical-example.yml](https://github.com/opencord/cord/blob/{{ book.branch }}/podconfig/physical-example.yml) as a template. Then run:
cd ~/cord/build && \ make PODCONFIG_PATH={PATH_TO_YOUR_PODCONFIG_FILE.yml} config && \ make -j4 build |& tee ~/build.out
After a successful build, set the compute nodes and the switches to boot from PXE and manually reboot them. They will be automatically deployed.