DevOps@RajeshKumar.XYZ
Docker For Sysadmins Linux Windows VMware
To get you up and runing...
The CMN and Libnetwork
Container network model | AKA | Container network interface | Docker | Speciality | Kubernetes | Docker,Inc. | Origin | CoreOS,Inc. |
A.k.a. namespace Isolated area of OS Contains full network stack
Network interface. E.g. ethO
Connected endpoints
Central place for all Docker networking logic. API. UX etc...
htt ps://github.com/docker/libnetwork
X-platform Pluggable
Written in Go/Golang Real-world implementation of CNM by Docker. Inc.A
Network-Specific Detail
Design/DNA | Control Plane & Management Plane | Data P/ane |
Central place for all Docker networking logic. API. UX etc...
htt ps://github.com/docker/libnetwork
X-platform Pluggable
Written in Go/Golang Real-world implementation of CNM by Docker. Inc.A
Network-Specific Detail
"Local" = native
"Remote" =3rd party
Master plan/grand design
De facto implementation of the CNM
Network-specific detail
The hands-on stuff!!!!!
With the bridge driver(Linux)
~nat driver (Windows)
Multi-host overlay networking
With the Docker overlay driver
Joining existing networks with the MACVLAN driver
With the Linux MACVLAN driver
Similar(ish) to "I2bridge" on windowsJoining existing networks with the IPVLAN driver
But doesn't give containers their own MAC address.
With the Linux IPVLAN driver
Similar to windows I2bridge
More cloud friendly than MACVLAN(YMMV)
Special considerations when working DHCP
Containers cannot ping their host
Similar to MACVLAN,but ...
Doesn't require promiscuous mode
Doesn't give every container a MAC
Might be a issue with some cloud platforms
Needs hints about the underlay
Get your IPAM right!
Newer than overlay,bridge,MACVLAN...
Network Services!
Service Discovery
Port-based Routing with the Routing Mesh
App-aware Routing with the HTTP Routing Mesh
Made up of multiple smaller Services
Made up of multiple smaller Services
"Microservices"
Made up of multiple smaller Services
"Microservices"
Service Discovery is massively important
Service Discovery is automatic in Docker
Made up of multiple smaller Services
"Microservices"
Service Discovery is massively important
Service Discovery is automatic in Docker
Made up of multiple smaller Services
"Microservices"
Service Discovery is massively important
Service Discovery is automatic in Docker
Service Discovery is automatic in Docker
Every container gets a small DNS resolver
Network-scoped
Service Discovery is automatic in Docker
Every container gets a small DNS resolver
Network-scoped
Service Discovery is automatic in Docker
Every container gets a small DNS resolver
Network-scoped
Service Discovery is automatic in Docker
Every container gets a small DNS resolver
Network-scoped
Service Discovery is automatic in Docker
Every container gets a small DNS resolver
Network-scoped
Service Discovery is automatic in Docker
Every container gets a small DNS resolver
Network-scoped
Service Discovery is automatic in Docker
Every container gets a small DNS resolver
Network-scoped
Transport Layer(L4)Routing Mesh
Routing and load balance incoming connection with the Routing Mesh
(Transport Layer/Layer4)
$ docker swarm init...
Creates a swarm-wide overlay called ingress
$ docker service create...
Publish it on a port(swarm-wide)
Routing and load balance incoming connections with the Builds on top of port-based/L4 Routing mesh
Very new at the time of recording(Application Layer/L7)
Requires Docker Datacenter*