The presentation discusses the use of WireGuard and Project Calico to provide full mesh encryption in Kubernetes for compliance and zero-trust security.
- Encrypting data-in-transit is important for compliance and zero-trust security in Kubernetes
- Common encryption options include mutual TLS and IPsec
- Project Calico uses WireGuard for full mesh encryption at a layer below application workloads
- WireGuard is lightweight, fast, scalable, and easy to configure
- Calico's data plane components interact with WireGuard to manage the kernel and networking rules
- The implementation has some gaps and areas for improvement
The top use case for encryption in Kubernetes is compliance, such as PCI or HIPAA. A recent NSA report recommends encrypting data in transit to harden Kubernetes. By default, Kubernetes does not encrypt data in transit, which can make users nervous in a zero-trust environment. Project Calico, which powers about 2 million nodes daily across 166 countries, uses WireGuard for full mesh encryption at a layer below application workloads. WireGuard is popular for its lightweight, fast, scalable, and easy-to-configure features. Calico's data plane components interact with WireGuard to manage the kernel and networking rules. However, the implementation has some gaps and areas for improvement.