2022-02-16 19:54:43 +00:00
---
layout: docs
2023-06-12 20:41:16 +00:00
page_title: API gateway for Kubernetes technical specifications
2022-02-16 19:54:43 +00:00
description: >-
2023-06-12 20:41:16 +00:00
Learn about the requirements for installing and using the Consul API gateway for Kubernetes, including required ports, component version minimums, Consul Enterprise limitations, and compatible k8s cloud environments.
2022-02-16 19:54:43 +00:00
---
2023-06-12 20:41:16 +00:00
# API gateway for Kubernetes technical specifications
2022-02-22 21:57:04 +00:00
2023-06-12 20:41:16 +00:00
This topic describes the technical specifications associated with using Consul API gateway.
2022-02-23 00:44:30 +00:00
## Requirements
2023-06-12 20:41:16 +00:00
Verify that your environment meets the following requirements prior to using Consul API gateway.
2022-02-23 00:44:30 +00:00
2023-06-12 20:41:16 +00:00
### Datacenter requirements
2022-02-22 21:57:04 +00:00
2023-06-12 20:41:16 +00:00
Your datacenter must meet the following requirements prior to configuring the Consul API gateway:
2022-02-22 22:43:46 +00:00
2023-06-12 20:41:16 +00:00
- HashiCorp Consul Helm chart v1.2.0 and later
2022-02-22 22:43:46 +00:00
2023-06-12 20:41:16 +00:00
### TCP port requirements
2022-02-23 00:44:30 +00:00
2023-06-12 20:41:16 +00:00
The following table describes the TCP port requirements for each component of the API gateway.
2022-02-23 00:44:30 +00:00
| Port | Description | Component |
2022-04-26 03:59:18 +00:00
| ---- | ----------- | --------- |
2022-02-23 00:44:30 +00:00
| 20000 | Kubernetes readiness probe | Gateway instance pod |
| Configurable | Port for scraping Prometheus metrics. Disabled by default. | Gateway controller pod |
2023-06-12 20:41:16 +00:00
## Consul server deployments
2022-02-22 21:57:04 +00:00
- Consul Editions supported: OSS and Enterprise
- Supported Consul Server deployment types:
2022-02-22 22:43:46 +00:00
- Self-Managed
2022-02-22 21:57:04 +00:00
- HCP Consul
2022-09-08 18:38:27 +00:00
### Limited Support of some Consul Features
2023-06-12 20:41:16 +00:00
The following table lists API gateway limitations related to specific Consul features
2022-09-08 18:38:27 +00:00
| Consul Feature | Limitation |
| -------------- | ---------- |
2022-11-17 23:42:25 +00:00
| Routing between datacenters | If you are connecting multiple Consul datacenters to create a federated network, you can route to services in other datacenters through peered connections. Refer to [Route Traffic to Peered Services](/consul/docs/api-gateway/usage/route-to-peered-services) for additional information. |
2022-09-08 18:38:27 +00:00
2022-02-22 21:57:04 +00:00
## Deployment Environments
2023-06-12 20:41:16 +00:00
Consul API gateway can be deployed in the following Kubernetes-based environments:
2022-02-22 21:57:04 +00:00
- Generic Kubernetes
- AWS Elastic Kubernetes Service (EKS)
- Google Kubernetes Engine (GKE)
- Azure Kubernetes Service (AKS)
2023-06-12 20:41:16 +00:00
## Supported versions of Kubernetes Gateway API specification
2022-02-22 21:57:04 +00:00
2023-06-12 20:41:16 +00:00
Refer to the [release notes](/consul/docs/release-notes) for your version of Consul.
2022-02-22 21:57:04 +00:00
2023-06-12 20:41:16 +00:00
## Resource allocations
2022-02-22 21:57:04 +00:00
2023-06-12 20:41:16 +00:00
The following resources are allocated for each component of the API gateway.
2022-02-22 21:57:04 +00:00
2023-06-12 20:41:16 +00:00
### Gateway controller pod
2022-02-22 21:57:04 +00:00
2022-04-26 03:59:18 +00:00
- **CPU**: None. Either the namespace or cluster default is allocated, depending on the Kubernetes cluster configuration.
2023-07-31 17:56:09 +00:00
- **Memory**: None. Either the namespace or cluster default is allocated, depending on the Kubernetes cluster configuration.
2022-02-22 21:57:04 +00:00
2023-06-12 20:41:16 +00:00
### Gateway instance pod
2022-02-22 21:57:04 +00:00
2022-04-26 03:59:18 +00:00
- **CPU**: None. Either the namespace or cluster default is allocated, depending on the Kubernetes cluster configuration.
- **Memory**: None. Either the namespace or cluster default is allocated, depending on the Kubernetes cluster configuration.