GKE Networking Recipes
This repository contains various use cases (aka Recipes) and examples of GKE Networking. For each of the use-cases there are full YAML examples that show how and when these GKE capabilities should be used.
Each recipes is a self-contained example. With a full tutorial for how to set it up and tear it down.
If you're not familiar with the basics of Kubernetes networking then check out Cluster Networking and Service Networking. These resources should give you some of the foundations behind Kubernetes networking.
GKE is a managed Kubernetes platform that provides a more opinionated and seamless experience. For more information on GKE networking, check out network overview, Ingress, and Service networking pages. Each of the following recipes demonstrate specific networking use-cases in GKE. Setup your GKE environment and try out some of these recipes in your own kitchen.
Recipes
-
Ingress
-
Multi-cluster Ingress
-
Basic Multi-cluster Ingress - Deploy applications across different clusters and different regions but retain a single global load balancer and public IP for global traffic management.
-
Blue/Green Multi-cluster Ingress Cluster Migration - Deploy applications across multiple clusters in the same region, leveraging a single global load balancer and public IP for global traffic management, to support seamless cluster upgrades without impacting client access.
- (#Missing) Blue/Green Multi-cluster Ingress App Migration - Deploy applications across multiple clusters in the same region, leveraging a single global load balancer and public IP for global traffic management, to support seamless app upgrade without impacting client access.
-
Multi-Cluster w/ FrontendConfig - Deploy applications across multiple clusters and use the FrontendConfig CRD to configure HTTP to HTTPS redirect and customize the TLS configuration.
-
Multi-Cluster E2E HTTPS - Deploy applications across different clusters with End to End HTTPS (Client -> (https) -> LoadBalancer -> (https) -> workload).
-
Multi-Cluster Anthos Service Mesh E2E HTTPS - Deploy applications across different clusters with Anthos Service Mesh and End to End HTTPS (Client -> (https) -> LoadBalancer -> (https) -> Istio Ingress Gateway -> (mTLS) -> Workload).
-
Services
-
Gateway
Testing the recipes
See test/README.md for instructions on how to run the examples recipes against your project.
Contributions
Do you have a GKE networking recipe that would be useful for others? Contribute it and help build the shared knowledge of the GKE community!