Before You Install
- Set up an account with Juniper Networks so you can download CN2 manifests from the Juniper Networks download site (https://support.juniper.net/support/downloads/?p=contrail-networking) and access the container repository at https://enterprise-hub.juniper.net.
-
Set up the fabric network and connect your nodes to the fabric.
The example networks used in this document are shown in the respective installation sections.
-
Configure the server and agent (cluster) nodes.
- Install a fresh OS on all servers/VMs that you'll use as cluster nodes. Ensure the OS and kernel versions on the cluster nodes are on the list of supported OSes and kernels (see the CN2 Tested Integrations matrix at https://www.juniper.net/documentation/us/en/software/cn-cloud-native/cn2-tested-integrations/cn-cloud-native-tested-integrations/concept/cn-cloud-native-tested-integrations.html).
-
Disable transmit checksum offload on any cluster node that is a VM. You must
disable the offload in a persistent manner (that survives reboots).
There are different ways you can do this, including disabling transmit checksum offload in the VM definition. Use the method that works best in your setup.
-
Configure the OS on each node minimally for the following:
- static IP address and mask as per the example cluster you want to install (for example, 172.16.0.11/24 through 172.16.0.13/24 in our single cluster example) and gateway
- access to one or more DNS serversNote:
If you're running systemd-resolved on Ubuntu, ensure that /etc/resolv.conf is linked to /run/systemd/resolve/resolv.conf, and not to /run/systemd/resolve/stub-resolv.conf.
ln -svf /run/systemd/resolve/resolv.conf /etc/resolv.conf
See https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/#known-issues for more information.ls -l /etc/resolv.conf lrwxrwxrwx 1 root root 32 May 23 19:15 /etc/resolv.conf -> /run/systemd/resolve/resolv.conf
- SSH connectivity including root SSH access
- NTP (must be chrony)
-
If you're planning on running with a DPDK data plane, prepare each cluster node
that is running DPDK.
For an example on how to do this, see Prepare a Cluster Node for DPDK.
-
Download the Contrail Networking manifests (Manifests) and extract the tgz onto the
host where you plan on running the installation. This host must be able to reach the
cluster nodes.
In the examples in this document, we run the installation on an RKE2 server node.
-
Configure your repository login credentials in the downloaded manifests.
Add your repository login credentials to the k8s and contrail-tools manifests. See Configure Repository Credentials for one way to do this.
- Install Contrail tools.
-
Install contrailstatus on the machine where you plan on running kubectl. Contrailstatus
is a kubectl plug-in you can use to query Contrail microservices and Contrail-specific
resources.
In the examples in this document, we run kubectl on an RKE2 server node.The contrailstatus executable is packaged within the downloaded tools package. Extract and copy the kubectl-contrailstatus executable to /usr/local/bin.