A collection of tools and references around container networking accompanying my O'Reilly book Container Networking.
- Network Protocols Programmer's Compendium
- Demystifying container networking by Michele Bertasi
- An Empirical Study of Load Balancing Algorithms
- The History of Containers
- A history of low-level Linux container runtimes
- Networking in Containers and Container Clusters
- Anatomy of a Container: Namespaces, cgroups & Some Filesystem Magic - LinuxCon
- Network namespaces
- Network classifier cgroup
- Exploring LXC Networking
- IPv6 and Containers: Why We Can't Have Nice Things (And How We Can)
- Docker Networking
- Concerning Containers’ Connections: on Docker Networking
- Unifying Docker Container and VM Networking
- Letting Go: Docker Networking and Knowing When Enough Is Enough
- The Tale of Two Container Networking Standards: CNM v. CNI
- Networking design
- Services
- Administration—Cluster Networking
- Provide Load-Balanced Access to an Application in a Cluster
- Create an External Load Balancer
- DNS for Services and Pods
- Kubernetes DNS example
- Issue 44063: Implement IPVS-based in-cluster service load balancing
- Tutorials and Recipes for using Kubernetes Network Policies feature by Ahmet Alp Balkan
- Data and analysis of the Kubernetes Ingress survey 2018 by the Kubernetes SIG Network
- Kubernetes Networking 101 by Bryan Boreham of WeaveWorks
- Illustrated Guide To Kubernetes Networking by Tim Hockin of Google
- The Easy--Don't Drive Yourself Crazy--Way to Kubernetes Networking by Gerard Hickey (KubeCon 2017, Austin)
- Blog post series by Mark Betz:
- Understanding CNI (Container Networking Interface) by Jon Langemak
- Operating a Kubernetes network by Julia Evans
- The Service Mesh: Past, Present, and Future by William Morgan (KubeCon 2017, Austin)
- Meet Bandaid, the Dropbox service proxy by Dmitry Kopytkov
- Kubernetes NodePort vs LoadBalancer vs Ingress? When should I use what? by Sandeep Dinesh
- OpenShift custom router with TCP/SNI support
- Cilium
- OpenContrail
- Contiv
- flannel
- Weaveworks Weave
- Metaswitch’s Project Calico and canal
- Open vSwitch
- OpenVPN
- coreos/corelb: a loadbalancer built on coreinit and NGINX
- Envoy: cloud-native proxy supporting HTTP/2 and gRPC
- HAProxy: load balancing and proxying for TCP and HTTP-based apps
- kube-proxy: Kubernetes built-in East-West traffic service proxy (managing IPtables entries)
- MetalLB: a load-balancer implementation for bare metal Kubernetes clusters using ARP, NDP, or BGP.
- NGINX Reverse Proxy: configuring NGINX as a reverse proxy
- Træfik: a HTTP reverse proxy and load balancer
- Ambassador: a Kubernetes-native API gateway built on Envoy
- Contour: a Kubernetes Ingress controller for Envoy
- [coreos/alb-ingress-controller](- https://github.com/coreos/alb-ingress-controller ): a Kubernetes Ingress Controller for AWS ALB
- kube-router: IPVS-based service proxy, Network Policy controller,
- Kubernetes Ingress controllers:
- Conduit: an ultralight service mesh for Kubernetes
- Istio: an open platform to connect, manage, and secure microservices
- Linkerd: a transparent proxy to be deployed as a service mesh
- coreos/go-iptables: Go bindings for IPtables
- coreos/matchbox: network boot and provision Container Linux clusters
- jetstack/cert-manager: automatically manage TLS certificates in Kubernetes