---
sidebar_label: Azure Kubernetes Service
doc_id: b8048550-4900-454e-bb08-5c3db8b75881
description: >-
  Configuration schema for Azure Kubernetes Service including cluster, gateway,
  security, and resource management settings.
keywords:
  - Azure Kubernetes Service
  - AKS
  - Kubernetes
  - cluster configuration
  - container orchestration
---

# Azure Kubernetes Service

Defines the settings for Azure Kubernetes Service , including cluster settings and gateway specifics

**Type**: `aks-configuration`

**Properties**

|Name|Type|Description|Required|
|----|----|-----------|--------|
|[**cluster**](#cluster)|`object`|Settings specific to the AKS cluster<br/>|yes|
|[**gateway**](#gateway)|`object`|Gateway-related settings<br/>|yes|
|[**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-aks-cluster",
        "namespace": "nullplatform",
        "resource_group": "my-aks-resource-group",
        "authentication_mode": "localAccounts"
    },
    "gateway": {
        "namespace": "istio-ingress",
        "public_name": "istio-ingress",
        "private_name": "istio-ingress-private"
    },
    "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: Cluster

Settings specific to the AKS cluster

**Properties**

|Name|Type|Description|Required|
|----|----|-----------|--------|
|**id**<br/>(Name)|`string`|The name of the AKS cluster (e.g., 'my-aks-cluster'). Cluster names must be unique within your Azure subscription and resource group<br/>Minimal Length: `1`<br/>Maximal Length: `63`<br/>Pattern: `^[a-zA-Z][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]$`<br/>|yes|
|**namespace**<br/>(Applications Namespace)|`string`|The Kubernetes namespace within the AKS cluster where the application is deployed (e.g., 'my-namespace'). Namespace names must be valid DNS labels<br/>Maximal Length: `63`<br/>Pattern: `^[a-z0-9]([-a-z0-9]*[a-z0-9])?$`<br/>|yes|
|**resource\_group**<br/>(Resource Group Name)|`string`|Name of the resource group containing the AKS cluster<br/>|yes|
|**authentication\_mode**<br/>(Cluster authentication mode)|`string`|The type of authentication used to connect the cluster<br/>|no|

**Example**

```json
{
    "id": "my-aks-cluster",
    "namespace": "nullplatform",
    "resource_group": "my-aks-resource-group",
    "authentication_mode": "localAccounts"
}
```

<a name="gateway"></a>
## gateway: Gateway

Gateway-related settings

**Properties**

|Name|Type|Description|Required|
|----|----|-----------|--------|
|**namespace**|`string`|The namespace in which the gateway is deployed<br/>Maximal Length: `63`<br/>Pattern: `^[a-z0-9]([-a-z0-9]*[a-z0-9])?$`<br/>|yes|
|**public\_name**<br/>(Public Gateway Name)|`string`|The name of the public Application Gateway in AKS (e.g., 'public-gateway')<br/>Minimal Length: `1`<br/>Maximal Length: `80`<br/>Pattern: `^[a-zA-Z][a-zA-Z0-9-]{0,78}[a-zA-Z0-9]$`<br/>|yes|
|**private\_name**<br/>(Private Gateway Name)|`string`|The name of the private Application Gateway in AKS (e.g., 'private-gateway')<br/>Minimal Length: `1`<br/>Maximal Length: `80`<br/>Pattern: `^[a-zA-Z][a-zA-Z0-9-]{0,78}[a-zA-Z0-9]$`<br/>|no|

**Example**

```json
{
    "namespace": "istio-ingress",
    "public_name": "istio-ingress",
    "private_name": "istio-ingress-private"
}
```

<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 AKS 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 AKS 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/>||

