You can use Edge Microgateway to provide Apigee API management for services running in a Kubernetes cluster. This topic explains why you might want to deploy Edge Microgateway on Kubernetes, and it describes the two main deployment scenarios: sidecar and service deployment.
Services deployed to Kubernetes commonly expose APIs, either to external consumers or to other services running within the cluster.
In either case, there is an important problem to solve: How will you manage these APIs? For example:
- How will you secure them?
- How will you manage traffic?
- How will you gain insight into traffic patterns, latencies, and errors?
- How will you publish your APIs so developers can discover and use them?
Whether you are migrating existing services and APIs to the Kubernetes stack or are creating new services and APIs, Edge Microgateway helps provide a clean API management experience that includes security, traffic management, analytics, publishing, and more.
Running Edge Microgateway as a sidecar proxy
Sidecar proxy is a common microservices architecture pattern. The sidecar runs in the same pod as the main service, and provides additional services that extend or enhance the main service, such as security, policy enforcement, traffic management, and analytics. The sidecar routes incoming traffic to its main service and routes outgoing traffic to other deployed services or to services outside the cluster. The ability to route calls to services deployed inside the cluster creates a network of deployed services, or a "service mesh."
You can inject Edge Microgateway into Kubernetes as a sidecar proxy, where a microgateway and a service each run in a single pod, and where the microgateway manages traffic to and from its companion service. The following figure illustrates this architecture:
Running Edge Microgateway as a service
When deployed to Kubernetes as a service, Edge Microgateway runs in its own pod. In this architecture, Edge Microgateway intercepts incoming API calls and routes them to one or more target services running in other pods. In this configuration, Edge Microgateway provides API management features such as security, analytics, traffic management, and policy enforcement to the other services.
The following figure illustrates the architecture where Edge Microgateway runs as a service in a Kubernetes cluster:
To learn how to run Edge Microgateway as a sidecar proxy in Kubernetes, see Deploy Edge Microgateway as a sidecar proxy.
To learn how to run Edge Microgateway as a service in Kubernetes, see Deploy Edge Microgateway as a service in Kubernetes.