Upstream Kubernetes includes Feature Gates to enable or disable features with flags and track the maturity of a feature using Feature Stages. Here in the Kubernetes Ingress Controller (KIC) we use the same definitions of Feature Gates
and Feature Stages
from upstream Kubernetes, but with our own list of features.
Using Feature Gates
enables contributors to add and manage new (and potentially) experimental functionality to the KIC in a controlled manner: the features will be "hidden" until generally available (GA) and the progress and maturity of features on their path to GA will be documented. Feature gates also create a clear path for deprecating features.
See below for current features and their statuses, and follow the links to the relevant feature documentation.
Below you will find the overviews of features at various maturity levels:
Please read the Important Notes section before using any Alpha
or Beta
features.
- Most features will be planned and detailed using [Kubernetes Enhancement Proposals (KEP)][k8s-kep]: If you're interested in the development side of features familiarize yourself with our KEPs
- The
Since
andUntil
rows in below tables refer to KIC Releases - For
GA
features the documentation exists in the main Kong Documentation, see the API reference and Guides
An additional warning for end-users who are reading this documentation and trying to enable Alpha
or Beta
features: it is very important to understand that features that are currently in an Alpha
or Beta
state may become Deprecated
at any time and may be removed as part of the next consecutive minor release. This is especially true for Alpha
maturity features. In other words, until a feature becomes GA there are no guarantees that it's going to continue being available. To avoid disruption to your services engage with the community and read the CHANGELOG carefully to track progress. Alternatively do not use features until they have reached a GA status.
If you're looking for documentation for Alpha
maturity features you can find feature preview documentation here in this repo.
Once a feature graduates from Alpha
to Beta
maturity these preview docs will be moved to the main Kong Documentation.
{{< table caption="Feature Gates for Graduated or Deprecated Features" >}}
Feature | Default | Stage | Since | Until |
---|
{{< /table >}}
Features that reach GA and over time become stable will be removed from this table, they can be found in the main KIC CRD Documentation and Guides.
{{< table caption="Feature gates for features in Alpha or Beta states" >}}
Feature | Default | Stage | Since | Until |
---|---|---|---|---|
Knative | true |
Alpha | 0.8.0 | TBD |
Gateway | false |
Alpha | 2.2.0 | TBD |
CombinedRoutes | false |
Alpha | 2.4.0 | TBD |
{{< /table > }}