Pick cluster and underlay to build the POC.
- Bridge
- Contrail integration deployment.
- Contrail basic features.
- Gateway MX
- Overlay-underlay connectivity via MX.
- Distributed fabric forwarding (gateway-less mode).
- IP Fabric
- Contrail Fabric Management
- IP Fabric HA
- Contrail Fabric Management HA
- Multi-Site
- Gateway x2
- Contrail gateway to corp gateway.
- Contrail gateway to Contrail gateway (DCI).
- Remote compute.
- openstack
- openstack-ha
- cfm
- kubernetes
- kubernetes-ha
- openShift-origin
- multi-site
- multi-site-2
- cfm-kubernetes
- kubernete-mc
Here are prerequisites for the hypervisor.
-
Resource
- The hypervisor used by this guide has 32 vCPU, 256GB memory and 2TB disk.
- At least one NIC that has public/internet access.
-
Host OS
- CentOS 7.5 and Ubuntu 16.04.3 are validated.
-
Disk partition
- Optionally, for better disk performance, reserve a partition (1TB) for libvirt volume.
- Partition reservation has to be done during host OS installation.
- Here is the recommended partition schema for a 2TB disk.
- Partition 1, 250MB,
/boot
. - Partition 2, 1TB, volume group
system
.- Logical volume
swap
, 256GB. - Logical volume
root
, the rest space.
- Logical volume
- Partition 3, the rest space (for libvirt volume).
- Partition 1, 250MB,
Note: In case no partition is reserved, all VM images will be on file system.
- Kernel
- Upgrade kernel and reboot, after installation.
- Install
git
.
yum install git
- Clone repository.
git clone https://github.com/tonyliu0592/contrail-poc.git
- Update the followings variables in
poc.conf
.volume_dev
ntp_server
Note, comment out volume_dev
if no partition is reserved.
- Setup the hypervisor.
cd contrail-poc
poc setup-hypervisor
Copy the following VM images /opt/vm-image
directory.
CentOS-7-x86_64-GenericCloud-1805.qcow2
cirros-0.4.0-x86_64-disk.img
vmx-re.qcow2
vmx-re-hdd.qcow2
metadata-usb-re.img
vFPC-20180829.img
vqfx-19.4R1-2019010209-pfe-qemu.qcow
jinstall-vqfx-10-f-19.4R1.10-poc.qcow2
CentOS-7-x86_64-GenericCloud-1805.qcow2
CentOS Linux release 7.5.1804 (Core)
3.10.0-862.3.2.el7.x86_64
CentOS-7-x86_64-GenericCloud-1907.qcow2
CentOS Linux release 7.6.1810 (Core)
3.10.0-957.27.2.el7.x86_64
3.10.0-1062.1.2.el7.x86_64
AppFormix and AppFormix-Flow is integrated with cluster cfm
.
- With Contrail 1912.32, AppFormix 3.1.11 and AppFormix-Flow 1.0.6 will be deployed. Download the following packages from Juniper and upload them to
/opt/appformix
and/opt/appformix-flow
directories on the hypervisor host.
# ls /opt/appformix/
appformix-3.1.11.tar.gz
appformix-dependencies-images-3.1.11.tar.gz
appformix-internal-openstack-3.1.sig
appformix-network_device-images-3.1.11.tar.gz
appformix-openstack-images-3.1.11.tar.gz
appformix-platform-images-3.1.11.tar.gz
# ls /opt/appformix-flow/
appformix-flows-1.0.6.tar.gz
appformix-flows-ansible-1.0.6.tar.gz
-
Send request to
AppFormix-Key-Request.juniper.net
for AppFormix license. -
Copy the license to
/opt/appformix
directory on the hypervisor host. -
Update
appformix_license
inpoc.conf
. -
AppFormix and AppFormix-Flow will be deployed when build
cfm
cluster.
-
Update variables in
poc.conf
for deployment.- Choose underlay and cluster.
- Set username and password for hub.juniper.net/contrail.
- Set Contrail container tag and Contrail Command container tag.
- Set Ansible playbook name.
-
Build underlay and cluster.
poc build-underlay
poc build-cluster
- Delete existing underlay.
poc delete-underlay
-
Update underlay selection in
poc.conf
. -
Build new underlay.
poc build-underlay
- Delete existing cluster.
poc delete-cluster
-
Update cluster selection in
poc.conf
. -
Build new cluster.
poc build-cluster
To access server or underlay device, login onto the host, then ssh to the hostname or management address.
HAProxy is configured to provide access to the cluster.
Contrail web UI: https://<host>:8143
Contrail Command: https://<host>:9091
OpenStack Horizon: http://<host>
AppFormix UI: http://<host>:9000
Default username and password for vQFX and vMX is root
/ Juniper
.
This POC is using these vQFX RE and PFE image.
jinstall-vqfx-10-f-19.4R1.10-poc.qcow2
vqfx-19.4R1-2019010209-pfe-qemu.qcow
The PFE image is untouched. The RE image is customized with the followings.
- Root user with password
Juniper
- SSH access
- SSH key
- DHCP on interface
em0
With jinstall-vqfx-10-f-18.4R1.8.qcow2
, EVPN type-2 MAC/IP route with IP shows up in default-switch.evpn.0
. ARP request from BMS is resolved by vQFX, not being multicasted anymore. When VM sends out ARP request for BMS, vrouter doesn't resolve it, but multicasts ARP request. When vQFX resolves request and sends reply back to vrouter, it sets VNI to 0. This is invalid VNI for vrouter. So the reply is dropped by vrouter.
This POC is using vMX 18.3R1.9 with trial license.
This is the integration with Openstack non-HA cluster.
- Contrail Networking
- OpenStack
- VM
host management data vCPU memory disk OS
---------------------------------------------------------------------------
contrail-1 10.6.8.1 10.6.11.1 5 64 80 CentOS 7.5-1805
openstack-1 10.6.8.2 10.6.11.2 5 48 80 CentOS 7.5-1805
compute-1 10.6.8.7 10.6.11.7 4 16 40 CentOS 7.5-1805
compute-2 10.6.8.8 10.6.11.8 4 16 40 CentOS 7.5-1805
---------------------------------------------------------------------------
Total 18 144 240
This is the integration with Openstack HA cluster.
- Contrail Networking
- OpenStack
- VM
host management data vCPU memory disk OS
---------------------------------------------------------------------------
contrail-1 10.6.8.1 10.6.11.1 5 64 80 CentOS 7.5-1805
contrail-2 10.6.8.3 10.6.11.3 5 64 80 CentOS 7.5-1805
contrail-3 10.6.8.5 10.6.11.5 5 64 80 CentOS 7.5-1805
openstack-1 10.6.8.2 10.6.11.2 5 48 80 CentOS 7.5-1805
openstack-2 10.6.8.4 10.6.11.4 5 48 80 CentOS 7.5-1805
openstack-3 10.6.8.6 10.6.11.6 5 48 80 CentOS 7.5-1805
compute-1 10.6.8.7 10.6.11.7 4 16 40 CentOS 7.5-1805
compute-2 10.6.8.8 10.6.11.8 4 16 40 CentOS 7.5-1805
---------------------------------------------------------------------------
Total 38 368 560
This is Contrail Fabric Management with Openstack non-HA cluster.
- Contrail Networking
- OpenStack
- CSN
- Contrail Command
- Appformix
- VM
- LCM BMS and non-LCM BMS
host management data vCPU memory disk OS
---------------------------------------------------------------------------
command 10.6.8.91 10.6.11.91 4 16 40 CentOS 7.5-1805
contrail-1 10.6.8.1 10.6.11.1 5 64 80 CentOS 7.5-1805
openstack-1 10.6.8.2 10.6.11.2 5 48 80 CentOS 7.5-1805
csn-1 10.6.8.3 10.6.11.3 1 8 30 CentOS 7.5-1805
compute-1 10.6.8.7 10.6.11.7 4 16 40 CentOS 7.5-1805
appformix-1 10.6.8.71 10.6.11.71 4 16 60 CentOS 7.5-1805
appformix-flow-1 10.6.8.74 10.6.11.74 4 16 60 CentOS 7.5-1805
---------------------------------------------------------------------------
Total 27 172 390
This is the integration with Kubernetes non-HA cluster.
- Contrail Networking
- Kubernetes
- Container
host management data vCPU memory disk OS
---------------------------------------------------------------------------
cmaster-1 10.6.8.61 10.6.11.61 5 64 80 CentOS 7.5-1805
node-1 10.6.8.67 10.6.11.67 4 16 40 CentOS 7.5-1805
node-2 10.6.8.68 10.6.11.68 4 16 40 CentOS 7.5-1805
---------------------------------------------------------------------------
Total 13 96 160
This is the integration with Kubernetes HA cluster.
- Contrail Networking
- Kubernetes
- Container
host management data vCPU memory disk OS
---------------------------------------------------------------------------
cmaster-1 10.6.8.61 10.6.11.61 5 64 80 CentOS 7.5-1805
cmaster-1 10.6.8.62 10.6.11.62 5 64 80 CentOS 7.5-1805
cmaster-1 10.6.8.63 10.6.11.63 5 64 80 CentOS 7.5-1805
node-1 10.6.8.67 10.6.11.67 4 16 40 CentOS 7.5-1805
node-2 10.6.8.68 10.6.11.68 4 16 40 CentOS 7.5-1805
---------------------------------------------------------------------------
Total 23 224 320
This is the integration with OpenShift Origin non-HA cluster.
- Contrail Networking
- OpenShift Origin
- Container
host management data vCPU memory disk OS
---------------------------------------------------------------------------
master-1 10.6.8.61 10.6.11.61 2 16 40 CentOS 7.5-1805
infra-1 10.6.8.64 10.6.11.64 5 64 80 CentOS 7.5-1805
node-1 10.6.8.67 10.6.11.67 4 16 40 CentOS 7.5-1805
node-2 10.6.8.68 10.6.11.68 4 16 40 CentOS 7.5-1805
---------------------------------------------------------------------------
Total 15 112 200
This is the integration with OpenShift Origin HA cluster.
- Contrail Networking
- OpenShift Origin
- Container
host management data vCPU memory disk OS
---------------------------------------------------------------------------
master-1 10.6.8.61 10.6.11.61 2 16 40 CentOS 7.5-1805
master-2 10.6.8.62 10.6.11.62 2 16 40 CentOS 7.5-1805
master-3 10.6.8.63 10.6.11.63 2 16 40 CentOS 7.5-1805
infra-1 10.6.8.64 10.6.11.64 5 64 80 CentOS 7.5-1805
infra-2 10.6.8.65 10.6.11.65 5 64 80 CentOS 7.5-1805
infra-3 10.6.8.66 10.6.11.66 5 64 80 CentOS 7.5-1805
node-1 10.6.8.67 10.6.11.67 4 16 40 CentOS 7.5-1805
node-2 10.6.8.68 10.6.11.68 4 16 40 CentOS 7.5-1805
---------------------------------------------------------------------------
Total 29 272 440
This is Contrail Fabric Management with a remote site.
- Contrail Networking
- OpenStack
- CSN
- Contrail Command
- VM
host management data vCPU memory disk OS
---------------------------------------------------------------------------
contrail-1 10.6.8.1 10.6.11.1 5 64 80 CentOS 7.5-1805
openstack-1 10.6.8.2 10.6.11.2 5 48 80 CentOS 7.5-1805
csn-1 10.6.8.3 10.6.11.3 1 8 30 CentOS 7.5-1805
compute-1 10.6.8.7 10.6.11.7 4 16 40 CentOS 7.5-1805
compute-r1 10.6.8.8 10.6.12.8 4 16 40 CentOS 7.5-1805
---------------------------------------------------------------------------
Total 19 152 270
This is Contrail Fabric Management with a remote site.
- Contrail Networking
- OpenStack
- CSN
- Contrail Command
- VM
host management data vCPU memory disk OS
---------------------------------------------------------------------------
contrail-c2-1 10.6.8.51 10.6.13.51 5 64 80 CentOS 7.5-1805
openstack-c2-1 10.6.8.52 10.6.13.52 5 48 80 CentOS 7.5-1805
csn-c2-1 10.6.8.53 10.6.13.53 1 8 30 CentOS 7.5-1805
compute-c2-1 10.6.8.57 10.6.13.57 4 16 40 CentOS 7.5-1805
compute-c2-r1 10.6.8.58 10.6.14.58 4 16 40 CentOS 7.5-1805
---------------------------------------------------------------------------
Total 19 152 270
This is Contrail Fabric Management and Kubernetes.
- Contrail Networking
- OpenStack
- CSN
- Kubernetes
- Contrail Command
- VM
- Container
- LCM BMS and non-LCM BMS
host management data vCPU memory disk OS
---------------------------------------------------------------------------
contrail-1 10.6.8.1 10.6.11.1 5 64 80 CentOS 7.5-1805
openstack-1 10.6.8.2 10.6.11.2 5 48 80 CentOS 7.5-1805
csn-1 10.6.8.3 10.6.11.3 1 8 30 CentOS 7.5-1805
compute-1 10.6.8.7 10.6.11.7 4 16 40 CentOS 7.5-1805
cmaster-1 10.6.8.61 10.6.11.61 5 64 80 CentOS 7.5-1805
node-1 10.6.8.67 10.6.11.67 4 16 40 CentOS 7.5-1805
node-2 10.6.8.68 10.6.11.68 4 16 40 CentOS 7.5-1805
---------------------------------------------------------------------------
Total 28 232 390
This is Kubernetes integration with multi-cloud support.
- Contrail Networking
- Kubernetes
- CSN
- Contrail Command
- Container
- non-LCM BMS
host management data vCPU memory disk OS
---------------------------------------------------------------------------
cmaster-1 10.6.8.61 10.6.11.61 5 64 80 CentOS 7.5-1805
node-1 10.6.8.67 10.6.11.67 4 16 40 CentOS 7.5-1805
node-2 10.6.8.68 10.6.11.68 4 16 40 CentOS 7.5-1805
mc-gw 10.6.8.81 10.6.12.81 4 16 40 CentOS 7.5-1805
---------------------------------------------------------------------------
Total 17 112 200
fabric-ha fabric multi-site multi-site-2
-------------------------------------------------------------------------
10.6.8.11 vqfx-leaf-1 vqfx-leaf-1 vqfx-leaf-1
10.6.8.12 vqfx-leaf-2 vqfx-leaf-2 vqfx-leaf-2
10.6.8.13 vqfx-leaf-3
10.6.8.14 vqfx-leaf-4
10.6.8.21 vqfx-spine-1 vqfx-spine-1 vqfx-spine-1
10.6.8.22 vqfx-spine-2 vqfx-spine-2
10.6.8.31 vmx-1 vmx-1 vmx-1
10.6.8.32 vmx-2 vmx-2
10.6.8.33 vmx-3
10.6.8.34 vmx-4
openstack-ha openstack cfm multi-site multi-site-int
-------------------------------------------------------------------------------
10.6.8.1 contrail-1 contrail-1 contrail-1 contrail-1 contrail-1
10.6.8.2 openstack-1 openstack-1 openstack-1 openstack-1 openstack-1
10.6.8.3 contrail-2 csn-1 csn-1 csn-1
10.6.8.4 openstack-2 csn-r1 csn-r1
10.6.8.5 contrail-3
10.6.8.6 openstack-3 control-r1
10.6.8.7 compute-1 compute-1 compute-1 compute-1 compute-1
10.6.8.8 compute-2 compute-2 compute-2 compute-r1 compute-r1
multi-site-2
-------------------------------
10.6.8.51 contrail-c2-1
10.6.8.52 openstack-c2-1
10.6.8.53 csn-c2-1
10.6.8.54 csn-c2-r1
10.6.8.57 compute-c2-1
10.6.8.58 compute-c2-r1
kubernetes-ha kubernetes openshift-ha openshift
--------------------------------------------------------------
10.6.8.61 master-1 master-1 master-1 master-1
10.6.8.62 master-2 master-2
10.6.8.63 master-3 master-3
10.6.8.64 infra-1 infra-1
10.6.8.65 infra-2
10.6.8.66 infra-3
10.6.8.67 node-1 node-1 node-1 node-1
10.6.8.68 node-2 node-2 node-2 node-2
10.6.8.71 appformix-1
10.6.8.72 appformix-2
10.6.8.73 appformix-3
10.6.8.74 appformix-flow-1
10.6.8.81 mc-gw
10.6.8.91 command
10.6.8.95 bootstrap
10.6.8.96 aio