Implementing Cloud-Native Contrail Networking (CN2) – Outline

Detailed Course Outline

Course Introduction
Course Prologue
  • Describe the basics of the Cloud-Native Contrail Networking solution
  • Identify the key Contrail use cases
  • Outline a use case scenario for the course
Kubernetes Overview
  • Describe Kubernetes fundamentals
  • Describe the Kubernetes objects
  • Describe Kubernetes networking
  • Describe connecting applications with services

Lab 1: Working with Kubernetes

Describing Cloud-Native Contrail Networking Architecture
  • Describe the Contrail architecture and its core components
  • Describe component communications
  • Describe deployment models
  • Describe the configuration resources
Installing Cloud-Native Contrail Networking
  • Describe the installation process for Contrail on Upstream Kubernetes
  • Identify other components to be installed
Verifying and Troubleshooting Contrail Installation
  • Validate cluster state using kubectl
  • Validate using log files
  • Validate using Contrailstatus plug-in
  • Describe Kubernetes-specific validations

Lab 2: Validating the Contrail installation

Describing Contrail CNI
  • Define CNI plugins
  • Explain the CN2 CNI default implementation
  • Explain the CN2 CNI custom implementation
Implementing Namespaces
  • Describe namespaces
  • Implement an additional namespace
  • Implement an isolated namespace

Lab 3: Implementing Namespaces

Describing Services
  • Describe service support
Implementing Services
  • Implement a ClusterIP service
  • Implement a NodePort service
  • Implement a LoadBalance service
  • Implement ingress access

Lab 4: Implementing Services

Describing Network Policies
  • Describe the Kubernetes network policy concepts
  • Describe the network policies YAML template
Implementing Network Policies
  • Isolate pods from traffic sourced from other namespaces
  • Implement a policy based on namespace, pod, and port
  • Implement an ingress policy based on IP Block and port, with egress enabled based on namespace

Lab 5: Implementing Network Policies

Describing Virtual Networks
  • Describe virtual networks
  • Describe network attachment definitions with Multus
  • Describe user-defined virtual network templates
Implementing Virtual Networks
  • Implement a user-defined virtual network
  • Attach deployments to a virtual network
  • Implement user-defined pod network
  • Attach deployments to a user-defined pod network

Lab 6: Implementing Virtual Networks

Implementing Route Targets
  • Describe route targets
  • Implement route targets

Lab 7: Implementing Route Targets

Implementing Virtual Network Routers
  • Describe virtual network routers
  • Implement mesh virtual network routers
  • Implement hub-and-spoke virtual network routers
  • Implement multi-namespace virtual network routers

Lab 8: Implementing Virtual Network Routers

Implementing IP Forwarding and Fabric Source NAT
  • Implement IP forwarding
  • Implement fabric source NAT

Lab 9: Implementing IP Forwarding and Fabric Source NAT

Basic CN2 Troubleshooting
  • Describe basic CN2 troubleshooting

Lab 10: Performing Basic CN2 Troubleshooting