Skip to content
This repository has been archived by the owner on Jan 17, 2023. It is now read-only.

Latest commit

 

History

History
123 lines (95 loc) · 5.78 KB

README.md

File metadata and controls

123 lines (95 loc) · 5.78 KB

Episode 135: Antrea CNI

  • Hosted by @jbeda
  • Recording date: 2020-10-09

Table of Contents

  • 00:00:00 - Welcome to TGIK!
  • 00:04:46 - Week in Review
  • 00:17:06 - Starting with Antrea
  • 00:18:26 - CNI vs. Service Mesh
  • 00:23:04 - Why Antrea?
  • 00:28:01 - Launching a cluster
  • 00:41:00 - Installing Antrea
  • 00:49:59 - Installing a sample app
  • 00:54:38 - Feature gates
  • 01:04:27 - Debugging bad config
  • 01:10:25 - Setting up Traceflow
  • 01:27:02 - Prometheus exports
  • 01:35:30 - Antrea Architecture
  • 01:41:34 - route -n in a node
  • 01:48:28 - Wrap up and Thank You!

Week in review

Core

Not much going on in core this week, these are some great KEPs for 1.20:

Cloud Native Ecosystem

Show Notes

Build AWS cluster

This is a simple test cluster. AWS specific cloud provider is not used so we won't have ELB or EBS integration.

Pre built AMIs:

Created a set of 3 nodes in EC2 using a launch template

  • Single security group that allows external SSH and all network access on VPC
  • t3a.large
  • 30GB EBS root volume, gp2

Name each node in console and copy/paste IPs to config.sh.

Launch on control-plane

POD_NETWORK=10.20.0.0/16
kubeadm init --pod-network-cidr=$POD_NETWORK
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

Join on each client node. Something like this.

kubeadm join 172.31.43.148:6443 --token tuc8cn.4kg46l7bpybcs2fz \
    --discovery-token-ca-cert-hash sha256:0559388cee70283b8d483620d4dfb2d5bb704ce566de146d92c9f82d05c43e9f

Install Antrea.

Directions here

kubectl apply -f https://github.com/vmware-tanzu/antrea/releases/download/v0.10.1/antrea.yml

TODO: Explore feature gates

Download/use antctl

Install Octant Plugin

Demo App

Demo app: Emojivoto from Boyant folks

kubectl apply -k github.com/BuoyantIO/emojivoto/kustomize/deployment

Explore

Details in #326.

From @jayunit100:

From @antoninbas:

  • Use Traceflow (packet tracing in the Pod network) along with NetworkPolicies to show traffic being accepted or dropped. antctl query endpoint can be demo'd simultaneously to show policies applied to specific Pods and aggregated NetworkPolicy metrics can be show using vanilla kubectl.
  • Enable flow export and show flow information using Kibana dashboards (https://github.com/vmware-tanzu/antrea/blob/master/docs/network-flow-visibility.md). This requires a "beefier" cluster to run the ELK stack, but we provide the manifests.

From @jianjuns:

Reference Links