20
Powering Edge Cloud with Tungsten Fabric andAkraino Edge Stack Sukhdev Kapur, Distinguished Engineer 关注TF中文社区,获取更多TF中文资料

Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Powering   Edge  Cloud  wi th    Tungsten  Fabric   andAkraino    Edge Stack

Sukhdev  Kapur,  DistinguishedEngineer

关注TF中文社区,获取更多TF中文资料

Page 2: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Architecture Overview

Physical IP Fabric(no changes)

ORCHESTRATOR / APPS

Host O/SvRouter

Network / Storage Orchestration

CONTRAIL CONTROLLER

Gateway

Internet /WAN or LegacyEnv.

(Config, Control, Analytics, CSN)

(Windows, Linux ….) on BMS

TOR

Compute Orchestration

Logical View

Virtual Network Virtual Network …Blue Red

FWBGP

BGP XMPPNETCONF

vRouter Host O/S

… ……

DC Computes CPEDevices Public CloudVM

Dist

ribut

ed P

olic

yEn

forc

emen

tCe

ntra

lized

Pol

icy

Def

initi

on

Page 3: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Tungsten  Fabric  vRouter  Architecture&Overview

HostCompute

Kernel space

User    space

vRouter Kernel

vRouter Agent

Config

VRFs Policy    Table

vhost0

pkt0 tap-­xyztap-­abc

Netlink

Routing    Instance

Routing    Instance

Virtual    Machine    (Tenant A)

Virtual    Machine    (Tenant B)

Control Node

XMPP ethX  ORbondX

vRouterAgent• Exchanging  control  state  such  as  routes  with  the  Control  nodes    using  XMPP.

• Receiving   low-­level  configuration  state  such  as  routing  instances    and  forwarding  policy  from  the  Controlnodes  using  XMPP

• Reporting  analytics  state  such  as  logs,  statistics,  and  events  to  the    analytics nodes.

• Installing  forwarding  state  into  the  forwardingplane• Discovering   the  existence  and  attributes  of  VMs  in cooperation    with  the  Novaagent.

• Applying forwardingpolicyfor the first packetof eachnew flow    and  installing  a  flow  entry  in  the  flow  table  of  the  forwarding    plane.

• Proxying   DHCP,  ARP,DNSvRouterKernel/DPDK• Encapsulating  packets  sent  from  the  overlay  network  andde-­capsulating  packets  received  for  the  overlaynetwork.

• Packets received from the overlay network are assigned to arouting instance basedon the MPLS label or Virtual NetworkIdentifier (VNI).

• Doing a lookup of thedestinationaddress  of the in theForwarding    Information  Base  (FIB)  and  forwarding  the  packet  to  the  correct    destination.  The  routes  may  be  layer-­3  IP  prefixes  or  layer-­2  MAC    addresses.

• Doing  RPF  check  before  sending  Virtual  machine  traffic  to    destination.  This  isconfigurable.

Page 4: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

vRouter  Deployment ModelsKERNEL VROUTER DPDK VROUTER

SRIOV/  VROUTER COEXISTENCE SMARTNIC VROUTER

…VM1vRouter    

Agent VNF 2

…VM 1vRouter    

Agent VM 2…

VM 1vRouter    Agent VM 2

…VM 1vRouter    

Agent VM 2

▪ vRouter  runs  as  a  user    space  process  and    uses  DPDK  for  fast    path  Packet I/O.

▪ Full  set  of  SDN    Capabilities Supported

▪ Requires  the  VMs  to    have  DPDK enabled    for  performance    benefits

▪ vRouter  fwding plane    runs  within  the NIC

▪ Workloads  are SRIOV-­connected  to  the NIC

▪ Some  workloads  can  directly    SRIOV  into  the  NIC,  while    others  go  through  the vRouter

▪ Sometimes  a  VNF  can  have    multiple  interfaces  some  of    which  are  SRIOV-­ed  to  the NIC

▪ Interfaces  that  are  SRIOV-­ed    into  NIC  don’t  get  the  benefits /    features  of vRouter

▪ This  the  normal  operation    where  fwding  plane  of  vRouter    runs  in  the  kernel  and  are    connected  to  VMs  using  TAP    interface  (or  veth  pair  for    containers)

▪ vRouter  itself  is  enhanced  using    other  performance  related    features:o TSO  / LROo Multi-­Q Virtio

Page 5: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Tungsten  Fabric  Integration  with k8s

Compute Node-­01

CNIPluginKubelet

POD 1 POD 2

CNIPluginKubelet

POD 3 POD 4

vRouter(replaces kube-­proxy)

vRouter    (replaces kube-­proxy)

Contrail-­kube-­mgr

Contrail Controller

API Server

Scheduler

Controller/ReplicationManager

kubectl    (user commands)

etcd

Discovery Dashboard ContrailAnalytics

Compute Node-­02

Namespace: kube-­system

*  Contrail-­Kube-­manager  listens  to  K8s  API  Server  and    conveys  the  API  request  to  Contrail Controller

Page 6: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Tungsten  Fabric  Evolution  to Microservices

Contrail  Controller:  2n+1

Contrail 1.X/2.X/3.X    BMS  or  VMs  base    (SDNController)

VM VM VM

OR

BMS

Contrail  4.X  (Containers)    BMS  or  VMs  base    (SDNController)

Contrail  5.X (Containers)Microservices    (SDNController)

Analytics    DB

Config +    Control Analytics

Kube    MGR

HAProxy

vRouter    Agent

Multiple  Process  running  in  one    Container  (FAT Containers)

● Contrail-­Control   (5 daemons)● Contrail-­Config  (  8 daemons)● Contrail-­Analytics  (5 daemons)● Contrail-­WebUI  (  4 daemons)● Contrail-­DB  (3 daemons)● Contrail-­vRouter  (3  D)  +  Kernel/DPDK (FP)

DaemonSet,  Ingress  Services  with  Host    Networking

with  choice  of  run  single  ormultiple    containers  per PODs

27-­30  Containers Images

Page 7: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Levels  of  Isolation  -­ Multitenancy

N  a  m  e  s  p  a  c  e -­ B

S3 S4

POD9…

POD13…

N  a  m  e  s  p  a  c  e -­ A

S1 S2

POD1…

POD5…

N  a  m  e  s  p  a  c  e -­ D

S7 S8

POD25…

POD29…

N  a  m  e  s  p  a  c  e -­ C

S5 S6

POD17…

POD21…

N  a  m  e  s  p  a  c  e -­ F

S1    1 S12

POD41…

POD45…

N  a  m  e  s  p  a  c  e -­ E

S9 S10

POD33…

POD37…

DEFAULT  CLUSTER  MODE NAMESPACE  ISOLATION POD  /  SERVICE  ISOLATION▪ This  is  how  Kubernetes  networking  works    today

▪ Flat  subnet  where  -­-­ Any  workload  can  talk toany  other  workload

▪ In  addition  to  default  cluster,  operator  can  add    isolation  to  different  namespaces  transparent  to    the developer

▪ In  this  mode,  each  POD  is  isolated  from    one another

▪ Note  that  all  three  modes  can co-­exist

Page 8: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Policy FrameworkNew  B  e  h  a  v  i  o r

Can  we  use  one  policy  to  be  applied  in  all  the  different  deployments ?

Web App db

Network  Policy  =P3

1. ReducedComplexity2. SimplifiedManagement3. Improved Scalability

Web App db

Network  Policy  =P2

App1,   Deployment   = Prod

Web App db

Old  B  e  h  a  v  i  o r

App1,   Deployment   = Dev

Network  Policy  = P1

App1,   Deployment   = Staging

Web App db

App1,   Deployment   =  Dev

db

App1,   Deployment   = Staging

Web App

Web App db

App1,   Deployment   = Prod

Policy  =P

Page 9: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Policy Framework

Web App db

App1,   Deployment   = Dev-­AWS

Web App db

App1,   Deployment   =  Dev

Web App db

App1,   Deployment   = Staging

Web App db

App1,   Deployment   = Prod

Reuse  of  policies  across  multiple  clouds  and  with  multiple orchestrators

Web App db

App1,   Deployment   = Dev-­K8s

Web App db

App1,   Deployment   = Dev-­Mesos

Web App db

B  a  r  e  M  e  t  a   l  S  e  r  v  e  r sApp1,   Deployment   = Staging-­BMS

Policy  = P

Define/Review/Approve  Once  →  Use Everywhere

Page 10: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Policy  Framework  –Use  CaseExample

site  =EMEA

App   =  Finance,  Deployment   = Dev

Web App

App   =  Finance,  Deployment   = Prod

Web App

site  = US

App   =  Finance,  Deployment   = Dev

Web App

App   =  Finance,  Deployment   = Staging

Web App

allow  https-­traffic  tier=web  > tier=app1

2 allow  mysql-­traffic  tier=app  > tier=dbDev

Production

Staging

Legacy    Data  (tier =    

db)

match  deployment  &&site    

match site

E  n  f  o  r  c  e  m  e  nt

D  e  fn

Legacy Data    (tier  = db)

Page 11: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Multi Cloud

11

On-­Prem

OpenStack/K8s  &  Contrail    Controller

compute-­02 BMSBMS

Fabric    IP-­CLOS

MC-­GW

Multi-­Cloud    Gateway

MC-­GW

Multi-­Cloud    Gateway

MC-­GW

Multi-­Cloud    Gateway

PNFVM VNF

compute-­01

VM VNF PNF

POD CNF

AWS-­Compute

POD CNF

AZ-­ComputeIPsec/SSL    

Tunnels

Contrail DeployerA  Single  Deployer  for  all  E2ESetup

Page 12: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Multi  Cloud  ServiceChaining

12

On-­Prem

AWS AzurePODright_vn    3.3.3.5/24

PODleft_vn    

2.2.2.5/24

Service InstancePort  Tuple (SI)

Left_vn

2.2.2.3/24

right_vn

3.3.3.3/24VM-­Left2.2.2.4/24

VM-­Right3.3.3.4/24

left_vn: 2.2.2.0/24right_vn:3.3.3.0/24

Page 13: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Distributed  Networking  for  VMs,  PODs,&  BMS

Neutron/CNI/DM/FabricSDN ControllerEdge/MC-­GW Kubernetes

CNI

OpenStackNeutron

Edge/POP  Site

Edge/POP  Site

Edge/POP  Site

Basic Networking:L2/L3   or  L2/L3   NetworkIPAM/DHCP,  DNS, Multi-­Tenancy

Advance Networking:VLAN-­ID,  VRRP,  VIP,   LB, RoutesAdvertisement,GW  Function,   Service  Chaining,    Traffic  Steering,   Flow  awareness,    QoS,   SR-­IOV/DPDK,  BGP-­VPN,Inter  Site  Federation,   Health  Checks,    FW,  IPSec/TLS Support

BMS  & Fabric    Manager

On-­Prem:● Core Site● Core  Distributed Site● Edge Site

Page 14: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Akraino  R1  Blueprint:  Provider  Access Edge

Kubernetes  Native  Infrastructure  for  Industrial Automation

Purpose/Features• Addresses generic Edge Use cases

(small footprints deployments)

• Focused on Native Container workloads able to host NFV and MEC with no OpenStack

• Manage edge stacks at scale and with a consistent, uniform user experience from infrastructure up to workloads, on bare metal or public cloud

Target Industry: Telco, Enterprise

1

Page 15: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Akraino  Network  Cloud  &  TF  Integration (Blueprint)

https://wiki.akraino.org/display/AK/Akraino+Network+Cloud+Blueprint+-­+Reference+Architecture

TF  as  Single SDNKernel/DPDK/SR-­IOV  & CNI

Page 16: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

©  2017  Juniper  Networks,  Inc.  Allrightsreserved.

HARDWARE

LAYER

Physical Infrastructure

Operating  System&    Drivers Network ingCompute  +    

Accelerators Local Storage

SERVICES

LAYER

DME

LAYER

Platform  KubernetesClusters

VIRTUALIZATION

PLATFORM

LAYER

Cloudlet   Software Stack

He16terogJUeNnIPeEoRuNsETWORKSCONFIDENTIAL

Homogenous

To Mobi ledgeXCl oud Controller

Find Cloudlet

Verified Loc ation

Regist er

App  Edge Services

Dist rib u ted    Ma t c h ing    Engine

CloudletCRM ResourceManager

NATIVE    VNF

NATIVE    APP

IAAS SharedServices&HypervisorVM VM VM VM VM VM VM VM

Kubernetes  APIServer

APP1Container(s) APP(n) Container(s)

APP1 K8s Cluster APP(n)  K8s Cluster

Standard Intel X86Server Hardware CPU, GPU, RAM, Flash, HDD , NIC

TF Agent

To  Tungs t en FabricController

vRouter   ForwardingPlane

Page 17: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Tungsten  Fabric  DeploymentModels    wi th Openstack

● Two  Deploymentmodels

○ MonolithicPlugin

○ ML2based-­ this isusedin thedemo

Neutron

ML2 Plugin

MechanismDriver

VLAN GRE VxLAN Flat

OpenvSwitch

T ypeDriver

OpenDaylight

Arista

CiscoNexus

Networking

Open    

Contrail

1177

Page 18: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

● Running  Tungsten  Fabric  SDN  along  with  other  ML2drivers● This facilitates:

○ Running  OVS,  SR-­IOV  and  vRouter  based  workssimultaneously

○ Running  OVS  and  SR-­IOV  workloads  and  have  Tungsten  Fabric  manage  the fabric

○ Live  migration  of  OVS  based  computes  to  vRouter  basedcomputes

https://opendev.org/x/networking-­opencontrail

Tungsten  Fabric  andML2

1188

Page 19: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Try  Tungsten Fabric

https://tungstenfabric.github.io/website/Tungsten-­Fabric-­15-­minute-­deployment-­wi th-­k8s-­on-­AWS.html

Page 20: Powering)Edge)Cloud)with)) Tungsten)Fabric)andAkraino)) …zt.itpub.net/topic/JuniperMulticloud/ppt/1.pdf · 2020-02-12 · ArchitectureOverview Physical IP Fabric (nochanges) ORCHESTRATOR

Thank You

关注TF中文社区,获取更多TF资讯