Kubernetes API Gateway
All development and operations teams regularly face building vs buy decisions when it comes to deploying infrastructure. With the prevalence of open source Kubernetes Gateways like Emissary-Ingress, or the prevalence of open source proxies like Envoy, it is natural that organizations will ask the question - should I build on top of these open source projects or buy functionality from third-party vendors. In the case of authentication (Oauth) for API Gateways, it is almost always better to purchase from a vendor, unless there is a business justification to scale up and maintain a long term authentication project.
To assess the right choice, here are some criteria you can use to evaluate whether you want to build your own OAuth service or purchase a subscription to a pre-built application such as Edge Stack API Gateway.
Authentication Implementation: Build Scenarios
June 10, 2020 | 11 min read
Kubernetes
Description
Come learn how the Knative building blocks work together with zero baked in knowledge of one another. We will cover a new model for loose coupling in Kubernetes, and show how it is used throughout Knative. We will demonstrate how this model can be used to read and manipulate whole classes of Kubernetes resources. We will also demonstrate how this model can be used with Knative, e.g. to create a new abstractions to receive Events.
June 8, 2020 | 1 min read
Kubernetes
Set up automatic HTTPS with the Edge Stack API Gateway
Supporting HTTPS on your website and public APIs is an essential requirement for cloud native applications. Search engines rank HTTPS-enabled sites higher than insecure sites, and enabling Transport Level Security TLS for consumer-facing APIs dramatically reduces the ability for bad actors to sniff traffic and perform man-in-the-middle attacks. However, configuring HTTPS and managing ingress TLS certificates when deploying applications into Kubernetes is not easy.
Setting Up Kubernetes TLS with Cert-Manager or Lets Encrypt
May 26, 2020 | 4 min read
API Gateway
A cloud-native app has been designed and written specifically to run in the cloud and take advantage of this type of infrastructure's properties. An organization can consider itself “cloud native” when it has also adopted supporting DevOps workflows and practices to enable greater agility, increased speed, and reduced issues for both the app and the organization.
In common cloud-native app architectures, each is composed of several loosely-coupled and highly-cohesive microservices working together to form a distributed system. Loosely coupled means that an individual microservice can be changed internally with minimal impact on any other microservices. Highly-cohesive microservices are built around a well-defined business context, and any modifications required are typically focused on a single area of responsibility or functionality.
Cloud native applications are often packaged and run in containers. The underlying cloud infrastructure often runs on shared commodity hardware that is regularly changing, restarting, or failing. This means that a microservice should be designed to be temporary. It should start quickly, locate its dependent network services rapidly, and fail fast.
May 18, 2020 | 11 min read
Telepresence
How do you set up a product development environment for microservices and Kubernetes? While the tooling and infrastructure for building traditional web applications has been highly optimized over time, the same cannot be said for microservices.
In particular, setting up a product development environment for microservices can be considerably more complex than a traditional web application:
Your service likely relies on resources like a database or a queue. In production these will often be provided by your cloud provider, e.g. AWS RDS for databases or Google Pub/Sub for publish/subscribe messaging.
May 14, 2020 | 6 min read
Kubernetes
Practically every cloud vendor or private cloud solution supports the deployment and operation of the Kubernetes container orchestration framework. Since the initial release of Kubernetes by Google in 2014, a large community has formed around the framework, often facilitated by the organisation that is now the steward of the project, the Cloud Native Computing Foundation (CNCF).
Kubernetes has been widely adopted as a container manager, and has been running in production across a variety of organizations for several years. As such, it provides a solid foundation on which to support the other three capabilities of a cloud native platform: progressive delivery, edge management, and observability. These capabilities can be provided, respectively, with the following technologies: continuous delivery pipelines, an edge stack, and an observability stack.
Starting with Kubernetes, let's explore how each of these technologies integrates to provide the core capabilities of a cloud platform.
April 16, 2020 | 21 min read