Class ManagedClusterProperties


  • public final class ManagedClusterProperties
    extends Object
    Properties of the managed cluster.
    • Constructor Detail

      • ManagedClusterProperties

        public ManagedClusterProperties()
    • Method Detail

      • provisioningState

        public String provisioningState()
        Get the provisioningState property: The current provisioning state.
        Returns:
        the provisioningState value.
      • powerState

        public PowerState powerState()
        Get the powerState property: The Power State of the cluster.
        Returns:
        the powerState value.
      • maxAgentPools

        public Integer maxAgentPools()
        Get the maxAgentPools property: The max number of agent pools for the managed cluster.
        Returns:
        the maxAgentPools value.
      • kubernetesVersion

        public String kubernetesVersion()
        Get the kubernetesVersion property: The version of Kubernetes the Managed Cluster is running. When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details.
        Returns:
        the kubernetesVersion value.
      • withKubernetesVersion

        public ManagedClusterProperties withKubernetesVersion​(String kubernetesVersion)
        Set the kubernetesVersion property: The version of Kubernetes the Managed Cluster is running. When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details.
        Parameters:
        kubernetesVersion - the kubernetesVersion value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • dnsPrefix

        public String dnsPrefix()
        Get the dnsPrefix property: The DNS prefix of the Managed Cluster. This cannot be updated once the Managed Cluster has been created.
        Returns:
        the dnsPrefix value.
      • withDnsPrefix

        public ManagedClusterProperties withDnsPrefix​(String dnsPrefix)
        Set the dnsPrefix property: The DNS prefix of the Managed Cluster. This cannot be updated once the Managed Cluster has been created.
        Parameters:
        dnsPrefix - the dnsPrefix value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • fqdnSubdomain

        public String fqdnSubdomain()
        Get the fqdnSubdomain property: The FQDN subdomain of the private cluster with custom private dns zone. This cannot be updated once the Managed Cluster has been created.
        Returns:
        the fqdnSubdomain value.
      • withFqdnSubdomain

        public ManagedClusterProperties withFqdnSubdomain​(String fqdnSubdomain)
        Set the fqdnSubdomain property: The FQDN subdomain of the private cluster with custom private dns zone. This cannot be updated once the Managed Cluster has been created.
        Parameters:
        fqdnSubdomain - the fqdnSubdomain value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • fqdn

        public String fqdn()
        Get the fqdn property: The FQDN of the master pool.
        Returns:
        the fqdn value.
      • privateFqdn

        public String privateFqdn()
        Get the privateFqdn property: The FQDN of private cluster.
        Returns:
        the privateFqdn value.
      • azurePortalFqdn

        public String azurePortalFqdn()
        Get the azurePortalFqdn property: The special FQDN used by the Azure Portal to access the Managed Cluster. This FQDN is for use only by the Azure Portal and should not be used by other clients. The Azure Portal requires certain Cross-Origin Resource Sharing (CORS) headers to be sent in some responses, which Kubernetes APIServer doesn't handle by default. This special FQDN supports CORS, allowing the Azure Portal to function properly.
        Returns:
        the azurePortalFqdn value.
      • agentPoolProfiles

        public List<ManagedClusterAgentPoolProfile> agentPoolProfiles()
        Get the agentPoolProfiles property: The agent pool properties.
        Returns:
        the agentPoolProfiles value.
      • withAgentPoolProfiles

        public ManagedClusterProperties withAgentPoolProfiles​(List<ManagedClusterAgentPoolProfile> agentPoolProfiles)
        Set the agentPoolProfiles property: The agent pool properties.
        Parameters:
        agentPoolProfiles - the agentPoolProfiles value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • linuxProfile

        public ContainerServiceLinuxProfile linuxProfile()
        Get the linuxProfile property: The profile for Linux VMs in the Managed Cluster.
        Returns:
        the linuxProfile value.
      • withLinuxProfile

        public ManagedClusterProperties withLinuxProfile​(ContainerServiceLinuxProfile linuxProfile)
        Set the linuxProfile property: The profile for Linux VMs in the Managed Cluster.
        Parameters:
        linuxProfile - the linuxProfile value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • windowsProfile

        public ManagedClusterWindowsProfile windowsProfile()
        Get the windowsProfile property: The profile for Windows VMs in the Managed Cluster.
        Returns:
        the windowsProfile value.
      • withWindowsProfile

        public ManagedClusterProperties withWindowsProfile​(ManagedClusterWindowsProfile windowsProfile)
        Set the windowsProfile property: The profile for Windows VMs in the Managed Cluster.
        Parameters:
        windowsProfile - the windowsProfile value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • servicePrincipalProfile

        public ManagedClusterServicePrincipalProfile servicePrincipalProfile()
        Get the servicePrincipalProfile property: Information about a service principal identity for the cluster to use for manipulating Azure APIs.
        Returns:
        the servicePrincipalProfile value.
      • withServicePrincipalProfile

        public ManagedClusterProperties withServicePrincipalProfile​(ManagedClusterServicePrincipalProfile servicePrincipalProfile)
        Set the servicePrincipalProfile property: Information about a service principal identity for the cluster to use for manipulating Azure APIs.
        Parameters:
        servicePrincipalProfile - the servicePrincipalProfile value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • addonProfiles

        public Map<String,​ManagedClusterAddonProfile> addonProfiles()
        Get the addonProfiles property: The profile of managed cluster add-on.
        Returns:
        the addonProfiles value.
      • withAddonProfiles

        public ManagedClusterProperties withAddonProfiles​(Map<String,​ManagedClusterAddonProfile> addonProfiles)
        Set the addonProfiles property: The profile of managed cluster add-on.
        Parameters:
        addonProfiles - the addonProfiles value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • podIdentityProfile

        public ManagedClusterPodIdentityProfile podIdentityProfile()
        Get the podIdentityProfile property: The pod identity profile of the Managed Cluster. See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on AAD pod identity integration.
        Returns:
        the podIdentityProfile value.
      • withPodIdentityProfile

        public ManagedClusterProperties withPodIdentityProfile​(ManagedClusterPodIdentityProfile podIdentityProfile)
        Set the podIdentityProfile property: The pod identity profile of the Managed Cluster. See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on AAD pod identity integration.
        Parameters:
        podIdentityProfile - the podIdentityProfile value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • nodeResourceGroup

        public String nodeResourceGroup()
        Get the nodeResourceGroup property: The name of the resource group containing agent pool nodes.
        Returns:
        the nodeResourceGroup value.
      • withNodeResourceGroup

        public ManagedClusterProperties withNodeResourceGroup​(String nodeResourceGroup)
        Set the nodeResourceGroup property: The name of the resource group containing agent pool nodes.
        Parameters:
        nodeResourceGroup - the nodeResourceGroup value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • enableRbac

        public Boolean enableRbac()
        Get the enableRbac property: Whether to enable Kubernetes Role-Based Access Control.
        Returns:
        the enableRbac value.
      • withEnableRbac

        public ManagedClusterProperties withEnableRbac​(Boolean enableRbac)
        Set the enableRbac property: Whether to enable Kubernetes Role-Based Access Control.
        Parameters:
        enableRbac - the enableRbac value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • enablePodSecurityPolicy

        public Boolean enablePodSecurityPolicy()
        Get the enablePodSecurityPolicy property: (DEPRECATING) Whether to enable Kubernetes pod security policy (preview). This feature is set for removal on October 15th, 2020. Learn more at aka.ms/aks/azpodpolicy.
        Returns:
        the enablePodSecurityPolicy value.
      • withEnablePodSecurityPolicy

        public ManagedClusterProperties withEnablePodSecurityPolicy​(Boolean enablePodSecurityPolicy)
        Set the enablePodSecurityPolicy property: (DEPRECATING) Whether to enable Kubernetes pod security policy (preview). This feature is set for removal on October 15th, 2020. Learn more at aka.ms/aks/azpodpolicy.
        Parameters:
        enablePodSecurityPolicy - the enablePodSecurityPolicy value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • networkProfile

        public ContainerServiceNetworkProfile networkProfile()
        Get the networkProfile property: The network configuration profile.
        Returns:
        the networkProfile value.
      • withNetworkProfile

        public ManagedClusterProperties withNetworkProfile​(ContainerServiceNetworkProfile networkProfile)
        Set the networkProfile property: The network configuration profile.
        Parameters:
        networkProfile - the networkProfile value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • aadProfile

        public ManagedClusterAadProfile aadProfile()
        Get the aadProfile property: AADProfile specifies attributes for Azure Active Directory integration. The Azure Active Directory configuration.
        Returns:
        the aadProfile value.
      • withAadProfile

        public ManagedClusterProperties withAadProfile​(ManagedClusterAadProfile aadProfile)
        Set the aadProfile property: AADProfile specifies attributes for Azure Active Directory integration. The Azure Active Directory configuration.
        Parameters:
        aadProfile - the aadProfile value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • autoUpgradeProfile

        public ManagedClusterAutoUpgradeProfile autoUpgradeProfile()
        Get the autoUpgradeProfile property: The auto upgrade configuration.
        Returns:
        the autoUpgradeProfile value.
      • withAutoUpgradeProfile

        public ManagedClusterProperties withAutoUpgradeProfile​(ManagedClusterAutoUpgradeProfile autoUpgradeProfile)
        Set the autoUpgradeProfile property: The auto upgrade configuration.
        Parameters:
        autoUpgradeProfile - the autoUpgradeProfile value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • autoScalerProfile

        public ManagedClusterPropertiesAutoScalerProfile autoScalerProfile()
        Get the autoScalerProfile property: Parameters to be applied to the cluster-autoscaler when enabled.
        Returns:
        the autoScalerProfile value.
      • withAutoScalerProfile

        public ManagedClusterProperties withAutoScalerProfile​(ManagedClusterPropertiesAutoScalerProfile autoScalerProfile)
        Set the autoScalerProfile property: Parameters to be applied to the cluster-autoscaler when enabled.
        Parameters:
        autoScalerProfile - the autoScalerProfile value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • apiServerAccessProfile

        public ManagedClusterApiServerAccessProfile apiServerAccessProfile()
        Get the apiServerAccessProfile property: The access profile for managed cluster API server.
        Returns:
        the apiServerAccessProfile value.
      • withApiServerAccessProfile

        public ManagedClusterProperties withApiServerAccessProfile​(ManagedClusterApiServerAccessProfile apiServerAccessProfile)
        Set the apiServerAccessProfile property: The access profile for managed cluster API server.
        Parameters:
        apiServerAccessProfile - the apiServerAccessProfile value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • diskEncryptionSetId

        public String diskEncryptionSetId()
        Get the diskEncryptionSetId property: The Resource ID of the disk encryption set to use for enabling encryption at rest. This is of the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'.
        Returns:
        the diskEncryptionSetId value.
      • withDiskEncryptionSetId

        public ManagedClusterProperties withDiskEncryptionSetId​(String diskEncryptionSetId)
        Set the diskEncryptionSetId property: The Resource ID of the disk encryption set to use for enabling encryption at rest. This is of the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'.
        Parameters:
        diskEncryptionSetId - the diskEncryptionSetId value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • identityProfile

        public Map<String,​UserAssignedIdentity> identityProfile()
        Get the identityProfile property: Identities associated with the cluster.
        Returns:
        the identityProfile value.
      • withIdentityProfile

        public ManagedClusterProperties withIdentityProfile​(Map<String,​UserAssignedIdentity> identityProfile)
        Set the identityProfile property: Identities associated with the cluster.
        Parameters:
        identityProfile - the identityProfile value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • privateLinkResources

        public List<PrivateLinkResourceInner> privateLinkResources()
        Get the privateLinkResources property: Private link resources associated with the cluster.
        Returns:
        the privateLinkResources value.
      • withPrivateLinkResources

        public ManagedClusterProperties withPrivateLinkResources​(List<PrivateLinkResourceInner> privateLinkResources)
        Set the privateLinkResources property: Private link resources associated with the cluster.
        Parameters:
        privateLinkResources - the privateLinkResources value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • disableLocalAccounts

        public Boolean disableLocalAccounts()
        Get the disableLocalAccounts property: If local accounts should be disabled on the Managed Cluster. If set to true, getting static credentials will be disabled for this cluster. This must only be used on Managed Clusters that are AAD enabled. For more details see [disable local accounts](https://docs.microsoft.com/azure/aks/managed-aad#disable-local-accounts-preview).
        Returns:
        the disableLocalAccounts value.
      • withDisableLocalAccounts

        public ManagedClusterProperties withDisableLocalAccounts​(Boolean disableLocalAccounts)
        Set the disableLocalAccounts property: If local accounts should be disabled on the Managed Cluster. If set to true, getting static credentials will be disabled for this cluster. This must only be used on Managed Clusters that are AAD enabled. For more details see [disable local accounts](https://docs.microsoft.com/azure/aks/managed-aad#disable-local-accounts-preview).
        Parameters:
        disableLocalAccounts - the disableLocalAccounts value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • httpProxyConfig

        public ManagedClusterHttpProxyConfig httpProxyConfig()
        Get the httpProxyConfig property: Configurations for provisioning the cluster with HTTP proxy servers.
        Returns:
        the httpProxyConfig value.
      • withHttpProxyConfig

        public ManagedClusterProperties withHttpProxyConfig​(ManagedClusterHttpProxyConfig httpProxyConfig)
        Set the httpProxyConfig property: Configurations for provisioning the cluster with HTTP proxy servers.
        Parameters:
        httpProxyConfig - the httpProxyConfig value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • securityProfile

        public ManagedClusterSecurityProfile securityProfile()
        Get the securityProfile property: Security profile for the managed cluster.
        Returns:
        the securityProfile value.
      • withSecurityProfile

        public ManagedClusterProperties withSecurityProfile​(ManagedClusterSecurityProfile securityProfile)
        Set the securityProfile property: Security profile for the managed cluster.
        Parameters:
        securityProfile - the securityProfile value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • publicNetworkAccess

        public PublicNetworkAccess publicNetworkAccess()
        Get the publicNetworkAccess property: PublicNetworkAccess of the managedCluster Allow or deny public network access for AKS.
        Returns:
        the publicNetworkAccess value.
      • withPublicNetworkAccess

        public ManagedClusterProperties withPublicNetworkAccess​(PublicNetworkAccess publicNetworkAccess)
        Set the publicNetworkAccess property: PublicNetworkAccess of the managedCluster Allow or deny public network access for AKS.
        Parameters:
        publicNetworkAccess - the publicNetworkAccess value to set.
        Returns:
        the ManagedClusterProperties object itself.
      • validate

        public void validate()
        Validates the instance.
        Throws:
        IllegalArgumentException - thrown if the instance is not valid.