Edge Stack API Gateway, Kubernetes
Refactoring applications into a microservice-style architecture package within containers and deployed into Kubernetes brings several new challenges for the edge. In particular, as an increasing number of microservices are exposed to end users, the edge must support managing a multitude of configurations for a wide range of microservices. For more on these challenges, see the article “The Two Most Important Challenges with an API Gateway when Adopting Kubernetes.”
This article explores three strategies that engineering teams can apply in order to effectively manage the edge when migrating to microservices and Kubernetes: deploying an additional Kubernetes API gateway; extending an existing API gateway; and deploying a comprehensive self-service edge stack.
The presentation of each strategy includes a technical overview, a discussion of the associated pros and cons, and an analysis of how the solution can meet each of the two primary challenges with an API gateway when adopting Kubernetes.
November 13, 2019 | 10 min read
Edge Stack API Gateway, Kubernetes
Building applications using the microservices pattern and deploying these services onto Kubernetes has become the de facto approach for running cloud-native applications today. In a microservice architecture, a single application is decomposed into multiple microservices. Each microservice is owned by a small team that is empowered and responsible to make the right decisions for the specific microservice.
This responsibility typically extends from the edge of the system where the user requests arrive, right the way through to the service’s business logic and down into the associated messaging and data store schema.
When integrating a Kubernetes API gateway with a microservices-based application running on Kubernetes, you must consider two primary challenges:
October 31, 2019 | 7 min read
Edge Stack API Gateway
We explain the difference between a service mesh and an API gateway and help you understand which tool you should be using.
Today, we talk about a hot topic: the difference between an API gateway and a service mesh. An API Gateway is used to manage traffic into your cluster, we call this north-south traffic. A service mesh manages traffic between services within your cluster, we call this east-west traffic.
One of the sources of confusion between API gateways and service meshes is that there is some overlapping functionality when building cloud native applications. For example, you need common semantics around resilience and common functionality around observability.
October 21, 2019 | 1 min read
Kubernetes
When you think of companies that might use Kubernetes, some really big names probably come to mind. Kubernetes has become synonymous with scale, and rightfully so. However, scale is just one benefit to running on Kubernetes with Ambassador Edge Stack, and knowing all of the advantages way before you need to scale to hundreds of requests every second is extremely beneficial.
Running with Edge Stack API Gateway on Kubernetes also brings lots of very modern, very cool, and very powerful tools into focus. This creates an environment that is built to integrate. In this really short piece, we’d like to take a minute to explain these benefits. We’ll try to look through the lens of a smaller company, at a stage where the teams aren’t really huge yet, but there are lots of established procedures around building and shipping releases and fixes.
There’s great incentive to really adapt (and stick with) CI/CD workflows.
October 14, 2019 | 6 min read
Envoy, Kubernetes
Measuring proxy latency in an elastic environment
In a typical Kubernetes deployment, all traffic to Kubernetes services flows through an ingress. The ingress proxies traffic from the Internet to the backend services. As such, the ingress is on your critical path for performance. There are a wide variety of ways to benchmark and measure performance.
Perhaps the most common way of measuring proxy performance is raw throughput. In this type of testing, increasing amounts of traffic is sent through the proxy, and the maximum amount of traffic that a proxy can process is measured. A typical measurement for this will measure performance in Requests Per Second (RPS).
October 1, 2019 | 8 min read
Kubernetes, Edge Stack API Gateway
Strategies for planning and implementing a migration from virtual machines to a cloud-native platform
An increasing number of organizations are migrating from a datacenter composed of virtual machines (VMs) to a “next-generation” cloud-native platform that is built around container technologies like Docker and Kubernetes. However, due to the inherent complexity of this move, a migration doesn’t happen overnight. Instead, an organization will typically be running a hybrid multi-infrastructure and multi-platform environment in which applications span both VMs and containers. Beginning a migration at the edge of a system, using functionality provided by a cloud-native API gateway, and working inwards towards the application opens up several strategies to minimize the pain and risk.
In a recently published article series on the Ambassador Labs blog, four strategies related to the planning and implementation of such a migration were presented: deploying a multi-platform service discovery system that is capable of routing effectively within a highly dynamic environment; adapting your continuous delivery pipeline to take advantage of best practices and avoid pitfalls with network complexity; using traffic shifting to facilitate an incremental and safe migration; and securing your infrastructure with encryption and network segmentation for all traffic, from end user to service.
September 11, 2019 | 9 min read