---
sidebar_label: Amazon Elastic Kubernetes Service (EKS) configuration
doc_id: 95760d90-1cb1-4888-99c3-13b90f2915ee
description: >-
  Configuration schema for Amazon EKS settings including cluster, network,
  security, and resource management options.
keywords:
  - Amazon EKS
  - Kubernetes
  - cluster configuration
  - load balancer
  - container orchestration
---

# Amazon Elastic Kubernetes Service \(EKS\) configuration

Defines the configuration for Amazon Elastic Kubernetes Service (EKS) settings in the application, including cluster settings and Kubernetes specifics

**Type**: `eks-configuration`

**Properties**

|Name|Type|Description|Required|
|----|----|-----------|--------|
|[**cluster**](#cluster)<br/>(EKS cluster settings)|`object`|Settings specific to the EKS cluster.<br/>|yes|
|[**network**](#network)|`object`|Network-related configurations, including load balancer configurations<br/>|no|
|[**balancer**](#balancer)<br/>(Load Balancer Configuration)|`object`|Load balancer configurations for public and private traffic routing<br/>|no|
|[**security**](#security)|`object`|Security-related configurations, including service accounts and other Kubernetes security elements<br/>|no|
|[**traffic\_manager**](#traffic_manager)<br/>(Traffic Manager Settings)|`object`|Traffic manager sidecar container settings<br/>|no|
|[**resource\_management**](#resource_management)|`object`|Kubernetes resource allocation and limit settings for containerized applications<br/>|no|

**Additional Properties:** not allowed  
**Example**

```json
{
    "cluster": {
        "id": "my-cluster",
        "namespace": "my-namespace"
    },
    "network": {
        "balancer_group_suffix": "my-suffix"
    },
    "balancer": {
        "public_name": "my-public-balancer",
        "private_name": "my-private-balancer",
        "alb_capacity_threshold": 75
    },
    "security": {
        "image_pull_secrets": [
            "image-pull-secret-nullplatform"
        ],
        "service_account_name": "my-service-account"
    },
    "traffic_manager": {
        "version": "latest"
    },
    "resource_management": {}
}
```

<a name="cluster"></a>
## cluster: EKS cluster settings

Settings specific to the EKS cluster.

**Properties**

|Name|Type|Description|Required|
|----|----|-----------|--------|
|**id**<br/>(Cluster Name)|`string`|The name of the Amazon EKS cluster (e.g., "my-cluster"). Cluster names must be unique within your AWS account and region<br/>Maximal Length: `100`<br/>Pattern: `^[a-zA-Z0-9]([a-zA-Z0-9-]{0,98}[a-zA-Z0-9])?$`<br/>|yes|
|**namespace**<br/>(Kubernetes Namespace)|`string`|The Kubernetes namespace within the EKS cluster where the application is deployed (e.g.,"my-namespace"). Namespace names must be DNS labels<br/>Maximal Length: `63`<br/>Pattern: `^[a-z0-9]([-a-z0-9]*[a-z0-9])?$`<br/>|no|
|**use\_nullplatform\_namespace**|`boolean`|When enabled, uses the nullplatform system namespace instead of a custom namespace<br/>|no|

**Example**

```json
{
    "id": "my-cluster",
    "namespace": "my-namespace"
}
```

<a name="network"></a>
## network: Network

Network-related configurations, including load balancer configurations

**Properties**

|Name|Type|Description|Required|
|----|----|-----------|--------|
|**balancer\_group\_suffix**<br/>(ALB Name Suffix)|`string`|When set, this suffix is added to the Application Load Balancer name, enabling management across multiple clusters in the same account or exceeding AWS ALB limit.<br/>Maximal Length: `63`<br/>Pattern: `^[a-z0-9]([-a-z0-9]*[a-z0-9])?$`<br/>||

**Example**

```json
{
    "balancer_group_suffix": "my-suffix"
}
```

<a name="balancer"></a>
## balancer: Load Balancer Configuration

Load balancer configurations for public and private traffic routing

**Properties**

|Name|Type|Description|Required|
|----|----|-----------|--------|
|**public\_name**<br/>(Main Public Load Balancer)|`string`|Primary public-facing load balancer name for external traffic routing<br/>Maximal Length: `100`<br/>Pattern: `^[a-zA-Z0-9]([a-zA-Z0-9-]{0,98}[a-zA-Z0-9])?$`<br/>||
|**private\_name**<br/>(Main Private Load Balancer)|`string`|Primary private load balancer name for internal traffic routing<br/>Maximal Length: `100`<br/>Pattern: `^[a-zA-Z0-9]([a-zA-Z0-9-]{0,98}[a-zA-Z0-9])?$`<br/>||
|**alb\_capacity\_threshold**|`integer`|Maximum ALB rule usage percentage (50-99). The remaining capacity (100 minus this value) reserves slots for concurrent deployments. Higher values maximize ALB utilization but increase the risk of deployment failures due to insufficient available slots<br/>Default: `75`<br/>Maximum: `99`<br/>||
|[**additional\_public\_names**](#balanceradditional_public_names)<br/>(Additional Public Load Balancers)|`string[]`|Additional public load balancers to support scope deployments beyond the 100-rule ALB limit<br/>||
|[**additional\_private\_names**](#balanceradditional_private_names)<br/>(Additional Private Load Balancers)|`string[]`|Additional private load balancers to support scope deployments beyond the 100-rule ALB limit<br/>||

**Example**

```json
{
    "public_name": "my-public-balancer",
    "private_name": "my-private-balancer",
    "alb_capacity_threshold": 75
}
```

<a name="balanceradditional_public_names"></a>
### balancer\.additional\_public\_names\[\]: Additional Public Load Balancers

Additional public load balancers to support scope deployments beyond the 100-rule ALB limit

**Items**

**Item Type:** `string`  
**Item Maximal Length:** `100`  
**Item Pattern:** `^[a-zA-Z0-9]([a-zA-Z0-9-]{0,98}[a-zA-Z0-9])?$`  
<a name="balanceradditional_private_names"></a>
### balancer\.additional\_private\_names\[\]: Additional Private Load Balancers

Additional private load balancers to support scope deployments beyond the 100-rule ALB limit

**Items**

**Item Type:** `string`  
**Item Maximal Length:** `100`  
**Item Pattern:** `^[a-zA-Z0-9]([a-zA-Z0-9-]{0,98}[a-zA-Z0-9])?$`  
<a name="security"></a>
## security: Security

Security-related configurations, including service accounts and other Kubernetes security elements

**Properties**

|Name|Type|Description|Required|
|----|----|-----------|--------|
|[**image\_pull\_secrets**](#securityimage_pull_secrets)<br/>(List of secret names to use image pull secrets)|`string[]`|Image pull secrets store Docker credentials in EKS clusters, enabling secure access to private container images for seamless Kubernetes application deployment.<br/>||
|**service\_account\_name**|`string`|The name of the Kubernetes service account used for deployments.<br/>||

**Example**

```json
{
    "image_pull_secrets": [
        "image-pull-secret-nullplatform"
    ],
    "service_account_name": "my-service-account"
}
```

<a name="securityimage_pull_secrets"></a>
### security\.image\_pull\_secrets\[\]: List of secret names to use image pull secrets

Image pull secrets store Docker credentials in EKS clusters, enabling secure access to private container images for seamless Kubernetes application deployment.

**Items**

**Item Type:** `string`  
**Item Pattern:** `^[a-z0-9]([-a-z0-9]*[a-z0-9])?$`  
**Example**

```json
[
    "image-pull-secret-nullplatform"
]
```

<a name="traffic_manager"></a>
## traffic\_manager: Traffic Manager Settings

Traffic manager sidecar container settings

**Properties**

|Name|Type|Description|Required|
|----|----|-----------|--------|
|**version**<br/>(Traffic Manager Version)|`string`|Uses 'latest' by default, but you can specify a different tag for the traffic container<br/>Default: `"latest"`<br/>Maximal Length: `63`<br/>Pattern: `^[a-z0-9]([-a-z0-9]*[a-z0-9])?$`<br/>||

**Example**

```json
{
    "version": "latest"
}
```

<a name="resource_management"></a>
## resource\_management: Resource Management

Kubernetes resource allocation and limit settings for containerized applications

**Properties**

|Name|Type|Description|Required|
|----|----|-----------|--------|
|**max\_milicores**<br/>(Max Mili\-Cores)|`string`|Sets the maximum amount of CPU mili cores a pod can use. It caps the `maxCoreMultiplier` value when it is set<br/>||
|**memory\_cpu\_ratio**|`string`|Amount of MiB of ram per CPU. Default value is `2048`, it means 1 core for every 2 GiB of RAM<br/>||
|**max\_cores\_multiplier**|`string`|Sets the ratio between requested and limit CPU. Default value is `3`, must be a number greater than or equal to 1<br/>||
|**memory\_request\_to\_limit\_ratio**|`string`|Sets the ratio between requested and limit memory. Default value is `1`, must be a number greater than or equal to 1<br/>||

