// Module included in the following assemblies:
//
// * networking/ingress_load_balancing/configuring_gateway_api/understand-gateway-api.adoc

:_mod-docs-content-type: CONCEPT
[id="gateway-api-implementation-specifics_{context}"]
= Gateway API implementation specifics

[role="_abstract"]
To ensure interoperability between external vendor implementations and your networking infrastructure in {product-title}, the Ingress Operator manages the lifecycle of Gateway API custom resource definitions (CRDs). Understanding how these CRDs are managed helps you prevent disrupted workloads and security issues caused by incompatible vendor fields.

In some situations, Gateway API provides one or more fields that a vendor implementation does not support, but that implementation is otherwise compatible in schema with the rest of the fields. These "dead fields" can result in disrupted Ingress workloads, improperly provisioned applications and services, and security-related issues. Because {product-title} uses a specific version of Gateway API CRDs, any use of third-party implementations of Gateway API must conform to the {product-title} implementation to ensure that all fields work as expected.

Any CRDs created within an {product-title} {product-version} cluster are compatibly versioned and maintained by the Ingress Operator. If CRDs are already present but were not previously managed by the Ingress Operator, the Ingress Operator checks whether these configurations are compatible with Gateway API version supported by {product-title}, and creates an admin-gate that requires your acknowledgment of CRD succession.

[IMPORTANT]
====
If you are updating your cluster from a previous {product-title} version that contains Gateway API CRDs, change those resources so that they exactly match the version supported by {product-title}. Otherwise, you cannot update your cluster because those CRDs were not managed by {product-title}, and could contain functionality that is unsupported by Red{nbsp}Hat.
====

[id="gateway-api-x-k8s-io-crds_{context}"]
== Gateway API CRDs for `gateway.networking.x-k8s.io`

In previous versions of {product-title}, cluster security policies blocked the deployment of the Gateway API CRD for `gateway.networking.x-k8s.io`. Starting in {product-title} 4.22, this restriction is removed, and you can deploy that CRD.

[NOTE]
====
Experimental Gateway API CRDs in the `gateway.networking.k8s.io` group remain restricted.

You can install the `gateway.networking.x-k8s.io` CRD and related objects on the cluster because they are no longer blocked. The built-in Gateway API implementation managed by the Ingress Operator does not reconcile those objects in {product-title}. Use a compatible third-party Gateway implementation if you need those APIs reconciled.
====
