# AzureKubernetesEnvironmentExtensions

- Kind: `class`
- Package: [Aspire.Hosting.Azure.Kubernetes](/reference/api/csharp/aspire.hosting.azure.kubernetes.md)
- Version: `13.3.0-preview.1.26254.5`
- Namespace: `Aspire.Hosting`
- Target framework: `net8.0`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/5bd693ae1897dee5e2ce71c2cc08879c1c7eff51/src/Aspire.Hosting.Azure.Kubernetes/AzureKubernetesEnvironmentExtensions.cs)

Provides extension methods for adding Azure Kubernetes Service (AKS) environments to the application model.

## Definition

```csharp
namespace Aspire.Hosting;

public static class AzureKubernetesEnvironmentExtensions
{
    // ...
}
```

## Methods

- [AddAzureKubernetesEnvironment(IDistributedApplicationBuilder, string)](/reference/api/csharp/aspire.hosting.azure.kubernetes/azurekubernetesenvironmentextensions/methods.md#addazurekubernetesenvironment-idistributedapplicationbuilder-string) : `IResourceBuilder<AzureKubernetesEnvironmentResource>` `extension` `ats export` -- Adds an Azure Kubernetes Service (AKS) environment to the distributed application. This provisions an AKS cluster and configures it as a Kubernetes compute environment.
- [AddNodePool(IResourceBuilder<AzureKubernetesEnvironmentResource>, string, string, int, int)](/reference/api/csharp/aspire.hosting.azure.kubernetes/azurekubernetesenvironmentextensions/methods.md#addnodepool-iresourcebuilder-azurekubernetesenvironmentresource-string-string-int-int) : `IResourceBuilder<AksNodePoolResource>` `extension` `ats export` -- Adds a node pool to the AKS cluster.
- [WithContainerRegistry(IResourceBuilder<AzureKubernetesEnvironmentResource>, IResourceBuilder<AzureContainerRegistryResource>)](/reference/api/csharp/aspire.hosting.azure.kubernetes/azurekubernetesenvironmentextensions/methods.md#withcontainerregistry-iresourcebuilder-azurekubernetesenvironmentresource-iresourcebuilder-azurecontainerregistryresource) : `IResourceBuilder<AzureKubernetesEnvironmentResource>` `extension` `ats export` -- Configures the AKS environment to use a specific Azure Container Registry for image storage. When set, this replaces the auto-created default container registry.
- [WithSubnet(IResourceBuilder<AzureKubernetesEnvironmentResource>, IResourceBuilder<AzureSubnetResource>)](/reference/api/csharp/aspire.hosting.azure.kubernetes/azurekubernetesenvironmentextensions/methods.md#withsubnet-iresourcebuilder-azurekubernetesenvironmentresource-iresourcebuilder-azuresubnetresource) : `IResourceBuilder<AzureKubernetesEnvironmentResource>` `extension` `ats export` -- Configures the AKS cluster to use a VNet subnet for node pool networking. Unlike `AzureVirtualNetworkExtensions.WithDelegatedSubnet`, this does NOT add a service delegation to the subnet -- AKS uses plain (non-delegated) subnets.
- [WithSubnet(IResourceBuilder<AksNodePoolResource>, IResourceBuilder<AzureSubnetResource>)](/reference/api/csharp/aspire.hosting.azure.kubernetes/azurekubernetesenvironmentextensions/methods.md#withsubnet-iresourcebuilder-aksnodepoolresource-iresourcebuilder-azuresubnetresource) : `IResourceBuilder<AksNodePoolResource>` `extension` `ats export` -- Configures a specific AKS node pool to use its own VNet subnet. When applied, this node pool's subnet overrides the environment-level subnet set via [AzureKubernetesEnvironmentExtensions.WithSubnet(IResourceBuilder<AzureKubernetesEnvironmentResource>, IResourceBuilder<AzureSubnetResource>)](/reference/api/csharp/aspire.hosting.azure.kubernetes/azurekubernetesenvironmentextensions/methods.md#withsubnet-iresourcebuilder-azurekubernetesenvironmentresource-iresourcebuilder-azuresubnetresource).
- [WithSystemNodePool(IResourceBuilder<AzureKubernetesEnvironmentResource>, string, int, int)](/reference/api/csharp/aspire.hosting.azure.kubernetes/azurekubernetesenvironmentextensions/methods.md#withsystemnodepool-iresourcebuilder-azurekubernetesenvironmentresource-string-int-int) : `IResourceBuilder<AzureKubernetesEnvironmentResource>` `extension` `ats export` -- Replaces the default system node pool with a customized configuration.
- [WithWorkloadIdentity(IResourceBuilder<AzureKubernetesEnvironmentResource>, bool)](/reference/api/csharp/aspire.hosting.azure.kubernetes/azurekubernetesenvironmentextensions/methods.md#withworkloadidentity-iresourcebuilder-azurekubernetesenvironmentresource-bool) : `IResourceBuilder<AzureKubernetesEnvironmentResource>` `extension` `ats export` -- Enables or disables workload identity on the AKS environment, allowing pods to authenticate to Azure services using federated credentials.
