nginx-kubernetes-gateway

module
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 24, 2023 License: Apache-2.0

README

OpenSSF Scorecard FOSSA Status

NGINX Kubernetes Gateway

NGINX Kubernetes Gateway is an open-source project that provides an implementation of the Gateway API using NGINX as the data plane. The goal of this project is to implement the core Gateway APIs -- Gateway, GatewayClass, HTTPRoute, TCPRoute, TLSRoute, and UDPRoute -- to configure an HTTP or TCP/UDP load balancer, reverse-proxy, or API gateway for applications running on Kubernetes. NGINX Kubernetes Gateway is currently under development and supports a subset of the Gateway API.

For a list of supported Gateway API resources and features, see the Gateway API Compatibility doc.

Warning: This project is actively in development (beta feature state) and should not be deployed in a production environment. All APIs, SDKs, designs, and packages are subject to change.

Getting Started

  1. Quick Start on a kind cluster.
  2. Install NGINX Kubernetes Gateway.
  3. Build an NGINX Kubernetes Gateway container image from source or use a pre-built image available on GitHub Container Registry.
  4. Deploy various examples.

NGINX Kubernetes Gateway Releases

We publish NGINX Kubernetes Gateway releases on GitHub. See our releases page.

The latest release is 0.3.0.

The edge version is useful for experimenting with new features that are not yet published in a release. To use, choose the edge version built from the latest commit from the main branch.

To use NGINX Kubernetes Gateway, you need to have access to:

  • An NGINX Kubernetes Gateway image.
  • Installation manifests.
  • Documentation and examples.

It is important that the versions of those things above match.

The table below summarizes the options regarding the images, manifests, documentation and examples and gives your links to the correct versions:

Version Description Image Installation Manifests Documentation and Examples
Latest release For experimental use Use the 0.3.0 image from GitHub Manifests. Documentation. Examples.
Edge For experimental use and latest features Use the edge image from GitHub Manifests. Documentation. Examples.

Technical Specifications

The following table lists the software versions NGINX Kubernetes Gateway supports.

NGINX Kubernetes Gateway Gateway API Kubernetes NGINX OSS
Edge 0.6.2 1.21+ 1.21.x *
0.3.0 0.6.2 1.21+ 1.21.x *
0.2.0 0.5.1 1.21+ 1.21.x *
0.1.0 0.5.0 1.19+ 1.21.3

*the installation manifests use the nginx:1.21 image, which always points to the latest version of 1.21.x releases.

Contacts

We’d like to hear your feedback! If you have any suggestions or experience issues with our Gateway Controller, please create an issue or send a pull request on GitHub. You can contact us directly via kubernetes@nginx.com or on the NGINX Community Slack in the #nginx-kubernetes-gateway channel.

Contributing

Please read our Contributing guide if you'd like to contribute to the project.

Support

NGINX Kubernetes Gateway is not covered by any support contract.

Directories

Path Synopsis
cmd
internal
events/eventsfakes
Code generated by counterfeiter.
Code generated by counterfeiter.
helpers
Package helpers contains helper functions for unit tests.
Package helpers contains helper functions for unit tests.
manager/managerfakes
Code generated by counterfeiter.
Code generated by counterfeiter.
nginx/config/configfakes
Code generated by counterfeiter.
Code generated by counterfeiter.
nginx/config/validation
Package validation includes validators to validate values that will propagate to the NGINX configuration.
Package validation includes validators to validate values that will propagate to the NGINX configuration.
nginx/file/filefakes
Code generated by counterfeiter.
Code generated by counterfeiter.
nginx/runtime/runtimefakes
Code generated by counterfeiter.
Code generated by counterfeiter.
reconciler/reconcilerfakes
Code generated by counterfeiter.
Code generated by counterfeiter.
sort
Package sort provides utilities for sorting Kubernetes resources.
Package sort provides utilities for sorting Kubernetes resources.
state/dataplane
Package dataplane translates Graph representation of the cluster state into an intermediate representation of data plane configuration.
Package dataplane translates Graph representation of the cluster state into an intermediate representation of data plane configuration.
state/graph
Package graph translates the cluster state (Gateway API and Kubernetes resources) into a graph-like representation, for which: - Resources are validated.
Package graph translates the cluster state (Gateway API and Kubernetes resources) into a graph-like representation, for which: - Resources are validated.
state/relationship/relationshipfakes
Code generated by counterfeiter.
Code generated by counterfeiter.
state/resolver/resolverfakes
Code generated by counterfeiter.
Code generated by counterfeiter.
state/secrets/secretsfakes
Code generated by counterfeiter.
Code generated by counterfeiter.
state/statefakes
Code generated by counterfeiter.
Code generated by counterfeiter.
state/validation/validationfakes
Code generated by counterfeiter.
Code generated by counterfeiter.
status/statusfakes
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL