Confidential Server OS App Hypervisor OS App OS App Server OS App Hypervisor OS App OS App Server OS App Hypervisor OS App OS App Server OS App Hypervisor OS App OS App Running applications – virtualisation
Confidential • Yes and No … • Yes • Run multiple applications per host • Isolate adjacent applications to prevent conflict • Fair resource usage • No • Shared kernel – security implications • Shared kernel – (generally) containers must be same operating system • Containers use less resources (i.e. much quicker start up, less RAM/CPU required without hypervisor) So containers are like VMs?
Confidential Traditional application deployment environment C ++ .Net Java Developers Write Code Development Environment C ++ .Net Java Ops / IT Setup runtime environment IIS / Tomcat / JRE / … Linux / Windows / Unix Production Environment
Confidential • CLI tool for defining and running multi container applications • Uses a YAML file • Leverages container linking • Can use dockerfiles Docker Compose https://www.docker.com/docker-compose
Confidential Built-in network drivers Driver Model Bridge Host-only bridge NAT to expose services Host Host network namespaces All containers use same interfaces Overlay VXLAN encapsulation Docker control plane MACVLAN IP per container No NAT, No encapsulation
Confidential 100% Open Source The Most Powerful Container Networking Fabric L2, L3, Overlay or ACI Rich Policies DevOps IT Admin Any Networking Any Platform Any Infrastructure Application Intent Rich Policy Declarative Simple Install GUI + CLI LDAP/RBAC Cisco Contiv
Confidential • Use the network model that suits the infrastructure • Contiv provides flexibility on the network side with consistency on the application side • References: • https://github.com/contiv/netplugin • https://github.com/contiv/install Summary