Kusk-gateway 1.0: OpenAPI-driven K8s Ingress Controller

May 5, 2022
Est. reading time:
2 min
The Kusk team is proud to announce the v1.0 of Kusk-gateway, which adds Kubernetes API mocking capabilities, a CLI tool, auto-deployments, an interactive dashboard, and HTTP-related improvements.
Christopher Jones
Senior Product Manager
Kusk
Table of Contents
Kusk-gateway 1.0: OpenAPI-driven K8s Ingress Controller

Intro

The Kusk team is proud to announce the 1.0 release of Kusk-gateway! 

For the unfamiliar, What makes Kusk-gateway unique is that it uses the ubiquitous OpenAPI specification file as a single source of truth for making an API available to consumers, which includes routing configuration, request validation, timeouts, etc. It will especially resonate with developers and teams like ours, who have adopted a design-first approach to API development. Thanks to Kusk-gateway and OpenAPI (Swagger), you can quickly publish your APIs deployed in Kubernetes without having to add any additional configuration resources, which plays nicely with both manual and automated/GitOps-based development workflows. 

Kusk-gateway enables you to design and deploy your APIs from a single OpenAPI definition, allowing you to:

  • Rapidly prototype your Kubernetes APIs by mocking your API responses, allowing your teams to instantly start building on top of your APIs without your services being implemented
  • Protect your endpoints with automatic request and response validations
  • Configure critical policies like request timeouts and CORs with no coding required
  • Centrally control your APIs from an Open Source dashboard
  • Automate the entire deployment process of your Kubernetes API without requiring manual DevOps intervention

Kusk-gateway is for you if:

  • You or your team develop REST APIs running in Kubernetes
  • You embrace a design-first approach to developing your APIs using OpenAPI or Swagger
  • You want to decrease ramp-up time when deploying a new REST API to a Kubernetes cluster and you don't want to spend lots of time configuring ingress controllers that require a dedicated Ops Engineer
  • You want your REST API endpoints to be configured, both functionally and operationally  from one source of truth.

What’s new?

Since the last beta release we have been focusing on making the core of Kusk-gateway production ready - but have also managed to squeeze in some new functionality.

Auto-deployments

Kusk-gateway will automatically detect and deploy an API CRD for any service with the annotations specifying the OpenAPI spec. 

-- CODE language-bash --
apiVersion: v1
kind: Service
metadata:
  annotations:
    kusk-gateway/openapi-url: <path/url to openapi definition>

Read more about automated API deployment.

Interactive Dashboard

Kusk-gateway now includes a browser-based dashboard for inspecting deploying Kubernetes APIs, EnvoyFleets and StaticRoutes. For Kubernetes APIs it is also possible to dig into the underlying OpenAPI definition and make ad-hoc requests to the Kubernetes API using the embedded Swagger-UI.

Deploy through Dashboard

To support use cases where developers do not want to create YAML files or deploy through kubectl, you can now deploy an API directly through the dashboard by supplying an OpenAPI spec.

Read more about deploying through the dashboard in our documentation.

The roadmap post 1.0

The main areas for improvement we are planning after this 1.0 release include:

  • Authentication (OAuth, ApiKey, etc)
  • Rate Limiting 
  • Caching
  • … and much more!

For more about future enhancements, you’re welcome to check out the 1.1.0 Release project on GitHub to see how things are going, don’t hesitate to jump in with comments and suggestions!

Try it out!

Head over to the Kusk Gateway GitHub repository to download the latest release - installation instructions and documentation are available there as well. If you have any questions or ideas please feel free to join our Discord server and get in touch.

Thank you!

Tags:
release

Related Content

November 30, 2022
|
3 min
read

Kusk-gateway 1.4: OpenAPI code-first support

We're proud to announce the v1.4 release of Kusk Gateway, which adds support for code-first OpenAPI generation, install Kusk CLI using `apt` and `choco` and scalable authorization with Cloudentity.

Open API
Kusk
Design-first
October 14, 2022
|
5 min
read

Kusk + Cloudentity: Fine-Grained API Authorization

Kusk has partnered with Cloudentity, an Authorization as a Service platform, to enable users to create powerful authorization rules while still using OpenAPI at the core of their API workflows!

Open API
Kusk
Design-first
October 3, 2022
|
4 min
read

Kusk v1.3: Updated CLI & dashboard experience

We're excited to release Kusk v1.3 with many improvements to the CLI experience, and a totally new design of the dashboard. Read more to learn about the new features!

Open API
Kusk
Design-first
September 12, 2022
|
6 min
read

Setup Ingress Controller with CORS configuration

Adding CORS should not be complicated. Read more to learn how Kusk help CORS configuration using OpenAPI.

Open API
Kusk
Design-first
September 7, 2022
|
6 min
read

Can Agile Teams Have a Design-First Approach to APIs?

Read more to learn how you can combine the power of OpenAPI with a Design-First approach with a successful agile environment!

Open API
Kusk
Design-first
September 6, 2022
|
3 min
read

Kusk-gateway 1.2.0: OAuth, Local Mocking + more

The Kusk team is proud to announce the v1.2.0 release of Kusk Gateway, which adds OAuth support, mocking of the API directly from the CLI and improved developer experience of the CLI!

Open API
Kusk
Design-first
September 6, 2022
|
2 min
read

Kusk on the Road - Our September ‘22 Schedule

The Kusk team is hitting the road to meet users and industry friends face-to-face across the US in September. Read more to see how we can meet!

Open API
Kusk
Design-first
August 23, 2022
|
Newstack
read

What it means to be OpenAPI-first in Kubernetes

Dive into how OpenAPI can help API developers become productive and what its support looks like in the current state of the Kubernetes realm

Open API
Kusk
Design-first
July 21, 2022
|
6 min
read

Automatic Request Validation with OpenAPI

Let's explore how you can use OpenAPI with Kusk Gateway to ensure that all the request bodies sent to your cluster a properly validated!

Open API
Kusk
Design-first
June 30, 2022
|
5 min
read

Kusk-gateway 1.1.0: Authentication support + more

The Kusk team is proud to announce the v1.1.0 release of Kusk Gateway, which adds Header Based Authentication, Rate limiting, Caching and Post-processed OpenAPI definitions

Open API
Kusk
Design-first
June 20, 2022
|
7 min
read

Rapidly prototype your APIs on K8s w/Kusk-gateway

We will explore how to use Kusk Gateway and OpenAPI to generate automatic mocks of your APIs that will allow for rapid prototyping between your teams

Open API
Kusk
Design-first
May 19, 2022
|
5 min
read

APIOps Lifecycle: API workflows via OpenAPI Definition

What is APIOps and how can we use the OpenAPI standard as a way to implement an API-First & Design-first approach to development of modern REST APIs deployed to Kubernetes.

Open API
Kusk
Design-first
April 21, 2022
|
8 min
read

Design-First to Automated Deployment w/OpenAPI

Use OpenAPI to drive the functional and operational aspects of your APIs with a Design-First approach and automated deployment.

Open API
Kusk
Design-first
March 28, 2022
|
3 min
read

Kusk-gateway  OpenAPI-driven Kubernetes Ingress Controller Beta

The Kusk team is proud to announce the beta release of Kusk Gateway, which adds API mocking capabilities, a CLI tool, and HTTP/SSL-related improvements.

Open API
Kusk
Design-first
January 31, 2022
|
Newstack
read

Can You GitOps Your APIs?

Kusk automates generation of resources for various ingress controllers by treating your OpenAPI Specification as the source of truth for configuration.

Open API
Kusk
Design-first
January 28, 2022
|
5 min
read

Kusk-gateway OpenAPI-Driven K8s Gateway Alpha 2

Kusk-gateway v0.0.0.alpha.2 was released today with lots of enhancements, new features and bug fixes.

Open API
Kusk
Design-first
November 29, 2021
|
1 min
read

Kusk-gateway OpenAPI-first K8s Ingress Controller

An Argument for using OpenAPI (Swagger) to configure Ingress in Kubernetes.

Open API
Kusk
Design-first
September 16, 2021
|
2 min
read

Kusk 0.2.0 released with Traefik support and more

Today the Kubeshop team released Kusk version 0.2.0 featuring Traefik V2 support, further improvements on x-kusk OpenAPI extension and…

Open API
Kusk
Design-first
September 15, 2021
|
4 min
read

Automate Configuration w/Kusk—a DevOps Design-First Approach to APIs

APIs are everywhere. APIs are a standardized way for applications to expose their functionality. API functionality often supersedes that…

Open API
Kusk
Design-first
September 14, 2021
|
3 min
read

Kusk: Configuring K8s Ingress Controller for CORS w/OpenAPI

Kusk: Configuring your Ingress Controller for CORS with OpenAPI

Open API
Kusk
Design-first
August 16, 2021
|
1 min
read

Hello Kusk—OpenAPI for Kubernetes

Hello Kusk: OpenAPI for Kubernetes

Open API
Kusk
Design-first

Stay in the Loop

Subscribe to stay up to date by getting the blog direct to your inbox

Or join the Kubeshop Community in one of these channels