/// <summary> /// Initializes a new instance of the ManagedClusterAgentPoolProfile /// class. /// </summary> /// <param name="name">Unique name of the agent pool profile in the /// context of the subscription and resource group.</param> /// <param name="count">Number of agents (VMs) to host docker /// containers. Allowed values must be in the range of 0 to 1000 /// (inclusive) for user pools and in the range of 1 to 1000 /// (inclusive) for system pools. The default value is 1.</param> /// <param name="vmSize">The size of the agent pool VMs.</param> /// <param name="osDiskType">Possible values include: 'Managed', /// 'Ephemeral'</param> /// <param name="kubeletDiskType">Possible values include: 'OS', /// 'Temporary'</param> /// <param name="vnetSubnetID">The ID of the subnet which agent pool /// nodes and optionally pods will join on startup.</param> /// <param name="podSubnetID">The ID of the subnet which pods will join /// when launched.</param> /// <param name="maxPods">The maximum number of pods that can run on a /// node.</param> /// <param name="osType">Possible values include: 'Linux', /// 'Windows'</param> /// <param name="osSKU">Possible values include: 'Ubuntu', /// 'CBLMariner'</param> /// <param name="maxCount">The maximum number of nodes for /// auto-scaling</param> /// <param name="minCount">The minimum number of nodes for /// auto-scaling</param> /// <param name="enableAutoScaling">Whether to enable /// auto-scaler</param> /// <param name="scaleDownMode">The scale down mode to use when scaling /// the Agent Pool.</param> /// <param name="type">Possible values include: /// 'VirtualMachineScaleSets', 'AvailabilitySet'</param> /// <param name="mode">Possible values include: 'System', /// 'User'</param> /// <param name="orchestratorVersion">The version of Kubernetes running /// on the Agent Pool.</param> /// <param name="nodeImageVersion">The version of node image</param> /// <param name="upgradeSettings">Settings for upgrading the /// agentpool</param> /// <param name="provisioningState">The current deployment or /// provisioning state.</param> /// <param name="powerState">Describes whether the Agent Pool is /// Running or Stopped</param> /// <param name="availabilityZones">The list of Availability zones to /// use for nodes. This can only be specified if the AgentPoolType /// property is 'VirtualMachineScaleSets'.</param> /// <param name="enableNodePublicIP">Whether each node is allocated its /// own public IP.</param> /// <param name="nodePublicIPPrefixID">The public IP prefix ID which VM /// nodes should use IPs from.</param> /// <param name="scaleSetPriority">The Virtual Machine Scale Set /// priority. If not specified, the default is 'Regular'. Possible /// values include: 'Spot', 'Regular'</param> /// <param name="scaleSetEvictionPolicy">The Virtual Machine Scale Set /// eviction policy to use.</param> /// <param name="spotMaxPrice">The max price (in US Dollars) you are /// willing to pay for spot instances. Possible values are any decimal /// value greater than zero or -1 which indicates default price to be /// up-to on-demand.</param> /// <param name="tags">The tags to be persisted on the agent pool /// virtual machine scale set.</param> /// <param name="nodeLabels">The node labels to be persisted across all /// nodes in agent pool.</param> /// <param name="nodeTaints">The taints added to new nodes during node /// pool create and scale. For example, key=value:NoSchedule.</param> /// <param name="proximityPlacementGroupID">The ID for Proximity /// Placement Group.</param> /// <param name="kubeletConfig">The Kubelet configuration on the agent /// pool nodes.</param> /// <param name="linuxOSConfig">The OS configuration of Linux agent /// nodes.</param> /// <param name="enableEncryptionAtHost">Whether to enable host based /// OS and data drive encryption.</param> /// <param name="enableUltraSSD">Whether to enable UltraSSD</param> /// <param name="enableFIPS">Whether to use a FIPS-enabled OS.</param> /// <param name="gpuInstanceProfile">GPUInstanceProfile to be used to /// specify GPU MIG instance profile for supported GPU VM SKU. Possible /// values include: 'MIG1g', 'MIG2g', 'MIG3g', 'MIG4g', 'MIG7g'</param> public ManagedClusterAgentPoolProfile(string name, int?count = default(int?), string vmSize = default(string), int?osDiskSizeGB = default(int?), string osDiskType = default(string), string kubeletDiskType = default(string), string vnetSubnetID = default(string), string podSubnetID = default(string), int?maxPods = default(int?), string osType = default(string), string osSKU = default(string), int?maxCount = default(int?), int?minCount = default(int?), bool?enableAutoScaling = default(bool?), string scaleDownMode = default(string), string type = default(string), string mode = default(string), string orchestratorVersion = default(string), string nodeImageVersion = default(string), AgentPoolUpgradeSettings upgradeSettings = default(AgentPoolUpgradeSettings), string provisioningState = default(string), PowerState powerState = default(PowerState), IList <string> availabilityZones = default(IList <string>), bool?enableNodePublicIP = default(bool?), string nodePublicIPPrefixID = default(string), string scaleSetPriority = default(string), string scaleSetEvictionPolicy = default(string), double?spotMaxPrice = default(double?), IDictionary <string, string> tags = default(IDictionary <string, string>), IDictionary <string, string> nodeLabels = default(IDictionary <string, string>), IList <string> nodeTaints = default(IList <string>), string proximityPlacementGroupID = default(string), KubeletConfig kubeletConfig = default(KubeletConfig), LinuxOSConfig linuxOSConfig = default(LinuxOSConfig), bool?enableEncryptionAtHost = default(bool?), bool?enableUltraSSD = default(bool?), bool?enableFIPS = default(bool?), string gpuInstanceProfile = default(string)) : base(count, vmSize, osDiskSizeGB, osDiskType, kubeletDiskType, vnetSubnetID, podSubnetID, maxPods, osType, osSKU, maxCount, minCount, enableAutoScaling, scaleDownMode, type, mode, orchestratorVersion, nodeImageVersion, upgradeSettings, provisioningState, powerState, availabilityZones, enableNodePublicIP, nodePublicIPPrefixID, scaleSetPriority, scaleSetEvictionPolicy, spotMaxPrice, tags, nodeLabels, nodeTaints, proximityPlacementGroupID, kubeletConfig, linuxOSConfig, enableEncryptionAtHost, enableUltraSSD, enableFIPS, gpuInstanceProfile) { Name = name; CustomInit(); }
/// <summary> /// Initializes a new instance of the AgentPool class. /// </summary> /// <param name="id">Resource ID.</param> /// <param name="name">The name of the resource that is unique within a /// resource group. This name can be used to access the /// resource.</param> /// <param name="type">Resource type</param> /// <param name="count">Number of agents (VMs) to host docker /// containers. Allowed values must be in the range of 0 to 1000 /// (inclusive) for user pools and in the range of 1 to 1000 /// (inclusive) for system pools. The default value is 1.</param> /// <param name="vmSize">The size of the agent pool VMs.</param> /// <param name="osDiskType">Possible values include: 'Managed', /// 'Ephemeral'</param> /// <param name="kubeletDiskType">Possible values include: 'OS', /// 'Temporary'</param> /// <param name="vnetSubnetID">The ID of the subnet which agent pool /// nodes and optionally pods will join on startup.</param> /// <param name="podSubnetID">The ID of the subnet which pods will join /// when launched.</param> /// <param name="maxPods">The maximum number of pods that can run on a /// node.</param> /// <param name="osType">Possible values include: 'Linux', /// 'Windows'</param> /// <param name="osSKU">Possible values include: 'Ubuntu', /// 'CBLMariner'</param> /// <param name="maxCount">The maximum number of nodes for /// auto-scaling</param> /// <param name="minCount">The minimum number of nodes for /// auto-scaling</param> /// <param name="enableAutoScaling">Whether to enable /// auto-scaler</param> /// <param name="scaleDownMode">The scale down mode to use when scaling /// the Agent Pool.</param> /// <param name="agentPoolType">Possible values include: /// 'VirtualMachineScaleSets', 'AvailabilitySet'</param> /// <param name="mode">Possible values include: 'System', /// 'User'</param> /// <param name="orchestratorVersion">The version of Kubernetes running /// on the Agent Pool.</param> /// <param name="nodeImageVersion">The version of node image</param> /// <param name="upgradeSettings">Settings for upgrading the /// agentpool</param> /// <param name="provisioningState">The current deployment or /// provisioning state.</param> /// <param name="powerState">Describes whether the Agent Pool is /// Running or Stopped</param> /// <param name="availabilityZones">The list of Availability zones to /// use for nodes. This can only be specified if the AgentPoolType /// property is 'VirtualMachineScaleSets'.</param> /// <param name="enableNodePublicIP">Whether each node is allocated its /// own public IP.</param> /// <param name="nodePublicIPPrefixID">The public IP prefix ID which VM /// nodes should use IPs from.</param> /// <param name="scaleSetPriority">The Virtual Machine Scale Set /// priority. If not specified, the default is 'Regular'. Possible /// values include: 'Spot', 'Regular'</param> /// <param name="scaleSetEvictionPolicy">The Virtual Machine Scale Set /// eviction policy to use.</param> /// <param name="spotMaxPrice">The max price (in US Dollars) you are /// willing to pay for spot instances. Possible values are any decimal /// value greater than zero or -1 which indicates default price to be /// up-to on-demand.</param> /// <param name="tags">The tags to be persisted on the agent pool /// virtual machine scale set.</param> /// <param name="nodeLabels">The node labels to be persisted across all /// nodes in agent pool.</param> /// <param name="nodeTaints">The taints added to new nodes during node /// pool create and scale. For example, key=value:NoSchedule.</param> /// <param name="proximityPlacementGroupID">The ID for Proximity /// Placement Group.</param> /// <param name="kubeletConfig">The Kubelet configuration on the agent /// pool nodes.</param> /// <param name="linuxOSConfig">The OS configuration of Linux agent /// nodes.</param> /// <param name="enableEncryptionAtHost">Whether to enable host based /// OS and data drive encryption.</param> /// <param name="enableUltraSSD">Whether to enable UltraSSD</param> /// <param name="enableFIPS">Whether to use a FIPS-enabled OS.</param> /// <param name="gpuInstanceProfile">GPUInstanceProfile to be used to /// specify GPU MIG instance profile for supported GPU VM SKU. Possible /// values include: 'MIG1g', 'MIG2g', 'MIG3g', 'MIG4g', 'MIG7g'</param> public AgentPool(string id = default(string), string name = default(string), string type = default(string), int?count = default(int?), string vmSize = default(string), int?osDiskSizeGB = default(int?), string osDiskType = default(string), string kubeletDiskType = default(string), string vnetSubnetID = default(string), string podSubnetID = default(string), int?maxPods = default(int?), string osType = default(string), string osSKU = default(string), int?maxCount = default(int?), int?minCount = default(int?), bool?enableAutoScaling = default(bool?), string scaleDownMode = default(string), string agentPoolType = default(string), string mode = default(string), string orchestratorVersion = default(string), string nodeImageVersion = default(string), AgentPoolUpgradeSettings upgradeSettings = default(AgentPoolUpgradeSettings), string provisioningState = default(string), PowerState powerState = default(PowerState), IList <string> availabilityZones = default(IList <string>), bool?enableNodePublicIP = default(bool?), string nodePublicIPPrefixID = default(string), string scaleSetPriority = default(string), string scaleSetEvictionPolicy = default(string), double?spotMaxPrice = default(double?), IDictionary <string, string> tags = default(IDictionary <string, string>), IDictionary <string, string> nodeLabels = default(IDictionary <string, string>), IList <string> nodeTaints = default(IList <string>), string proximityPlacementGroupID = default(string), KubeletConfig kubeletConfig = default(KubeletConfig), LinuxOSConfig linuxOSConfig = default(LinuxOSConfig), bool?enableEncryptionAtHost = default(bool?), bool?enableUltraSSD = default(bool?), bool?enableFIPS = default(bool?), string gpuInstanceProfile = default(string)) : base(id, name, type) { Count = count; VmSize = vmSize; OsDiskSizeGB = osDiskSizeGB; OsDiskType = osDiskType; KubeletDiskType = kubeletDiskType; VnetSubnetID = vnetSubnetID; PodSubnetID = podSubnetID; MaxPods = maxPods; OsType = osType; OsSKU = osSKU; MaxCount = maxCount; MinCount = minCount; EnableAutoScaling = enableAutoScaling; ScaleDownMode = scaleDownMode; AgentPoolType = agentPoolType; Mode = mode; OrchestratorVersion = orchestratorVersion; NodeImageVersion = nodeImageVersion; UpgradeSettings = upgradeSettings; ProvisioningState = provisioningState; PowerState = powerState; AvailabilityZones = availabilityZones; EnableNodePublicIP = enableNodePublicIP; NodePublicIPPrefixID = nodePublicIPPrefixID; ScaleSetPriority = scaleSetPriority; ScaleSetEvictionPolicy = scaleSetEvictionPolicy; SpotMaxPrice = spotMaxPrice; Tags = tags; NodeLabels = nodeLabels; NodeTaints = nodeTaints; ProximityPlacementGroupID = proximityPlacementGroupID; KubeletConfig = kubeletConfig; LinuxOSConfig = linuxOSConfig; EnableEncryptionAtHost = enableEncryptionAtHost; EnableUltraSSD = enableUltraSSD; EnableFIPS = enableFIPS; GpuInstanceProfile = gpuInstanceProfile; CustomInit(); }
/// <summary> /// Initializes a new instance of the ManagedCluster class. /// </summary> /// <param name="location">Resource location</param> /// <param name="id">Resource Id</param> /// <param name="name">Resource name</param> /// <param name="type">Resource type</param> /// <param name="tags">Resource tags</param> /// <param name="sku">The managed cluster SKU.</param> /// <param name="extendedLocation">The extended location of the Virtual /// Machine.</param> /// <param name="identity">The identity of the managed cluster, if /// configured.</param> /// <param name="provisioningState">The current provisioning /// state.</param> /// <param name="powerState">The Power State of the cluster.</param> /// <param name="maxAgentPools">The max number of agent pools for the /// managed cluster.</param> /// <param name="kubernetesVersion">The version of Kubernetes the /// Managed Cluster is running.</param> /// <param name="dnsPrefix">The DNS prefix of the Managed /// Cluster.</param> /// <param name="fqdnSubdomain">The FQDN subdomain of the private /// cluster with custom private dns zone.</param> /// <param name="fqdn">The FQDN of the master pool.</param> /// <param name="privateFQDN">The FQDN of private cluster.</param> /// <param name="azurePortalFQDN">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.</param> /// <param name="agentPoolProfiles">The agent pool properties.</param> /// <param name="linuxProfile">The profile for Linux VMs in the Managed /// Cluster.</param> /// <param name="windowsProfile">The profile for Windows VMs in the /// Managed Cluster.</param> /// <param name="servicePrincipalProfile">Information about a service /// principal identity for the cluster to use for manipulating Azure /// APIs.</param> /// <param name="addonProfiles">The profile of managed cluster /// add-on.</param> /// <param name="podIdentityProfile">The pod identity profile of the /// Managed Cluster.</param> /// <param name="nodeResourceGroup">The name of the resource group /// containing agent pool nodes.</param> /// <param name="enableRBAC">Whether to enable Kubernetes Role-Based /// Access Control.</param> /// <param name="enablePodSecurityPolicy">(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.</param> /// <param name="networkProfile">The network configuration /// profile.</param> /// <param name="aadProfile">The Azure Active Directory /// configuration.</param> /// <param name="autoUpgradeProfile">The auto upgrade /// configuration.</param> /// <param name="autoScalerProfile">Parameters to be applied to the /// cluster-autoscaler when enabled</param> /// <param name="apiServerAccessProfile">The access profile for managed /// cluster API server.</param> /// <param name="diskEncryptionSetID">The Resource ID of the disk /// encryption set to use for enabling encryption at rest.</param> /// <param name="identityProfile">Identities associated with the /// cluster.</param> /// <param name="privateLinkResources">Private link resources /// associated with the cluster.</param> /// <param name="disableLocalAccounts">If local accounts should be /// disabled on the Managed Cluster.</param> /// <param name="httpProxyConfig">Configurations for provisioning the /// cluster with HTTP proxy servers.</param> /// <param name="securityProfile">Security profile for the managed /// cluster.</param> public ManagedCluster(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), ManagedClusterSKU sku = default(ManagedClusterSKU), ExtendedLocation extendedLocation = default(ExtendedLocation), ManagedClusterIdentity identity = default(ManagedClusterIdentity), string provisioningState = default(string), PowerState powerState = default(PowerState), int?maxAgentPools = default(int?), string kubernetesVersion = default(string), string dnsPrefix = default(string), string fqdnSubdomain = default(string), string fqdn = default(string), string privateFQDN = default(string), string azurePortalFQDN = default(string), IList <ManagedClusterAgentPoolProfile> agentPoolProfiles = default(IList <ManagedClusterAgentPoolProfile>), ContainerServiceLinuxProfile linuxProfile = default(ContainerServiceLinuxProfile), ManagedClusterWindowsProfile windowsProfile = default(ManagedClusterWindowsProfile), ManagedClusterServicePrincipalProfile servicePrincipalProfile = default(ManagedClusterServicePrincipalProfile), IDictionary <string, ManagedClusterAddonProfile> addonProfiles = default(IDictionary <string, ManagedClusterAddonProfile>), ManagedClusterPodIdentityProfile podIdentityProfile = default(ManagedClusterPodIdentityProfile), string nodeResourceGroup = default(string), bool?enableRBAC = default(bool?), bool?enablePodSecurityPolicy = default(bool?), ContainerServiceNetworkProfile networkProfile = default(ContainerServiceNetworkProfile), ManagedClusterAADProfile aadProfile = default(ManagedClusterAADProfile), ManagedClusterAutoUpgradeProfile autoUpgradeProfile = default(ManagedClusterAutoUpgradeProfile), ManagedClusterPropertiesAutoScalerProfile autoScalerProfile = default(ManagedClusterPropertiesAutoScalerProfile), ManagedClusterAPIServerAccessProfile apiServerAccessProfile = default(ManagedClusterAPIServerAccessProfile), string diskEncryptionSetID = default(string), IDictionary <string, UserAssignedIdentity> identityProfile = default(IDictionary <string, UserAssignedIdentity>), IList <PrivateLinkResource> privateLinkResources = default(IList <PrivateLinkResource>), bool?disableLocalAccounts = default(bool?), ManagedClusterHTTPProxyConfig httpProxyConfig = default(ManagedClusterHTTPProxyConfig), ManagedClusterSecurityProfile securityProfile = default(ManagedClusterSecurityProfile)) : base(location, id, name, type, tags) { Sku = sku; ExtendedLocation = extendedLocation; Identity = identity; ProvisioningState = provisioningState; PowerState = powerState; MaxAgentPools = maxAgentPools; KubernetesVersion = kubernetesVersion; DnsPrefix = dnsPrefix; FqdnSubdomain = fqdnSubdomain; Fqdn = fqdn; PrivateFQDN = privateFQDN; AzurePortalFQDN = azurePortalFQDN; AgentPoolProfiles = agentPoolProfiles; LinuxProfile = linuxProfile; WindowsProfile = windowsProfile; ServicePrincipalProfile = servicePrincipalProfile; AddonProfiles = addonProfiles; PodIdentityProfile = podIdentityProfile; NodeResourceGroup = nodeResourceGroup; EnableRBAC = enableRBAC; EnablePodSecurityPolicy = enablePodSecurityPolicy; NetworkProfile = networkProfile; AadProfile = aadProfile; AutoUpgradeProfile = autoUpgradeProfile; AutoScalerProfile = autoScalerProfile; ApiServerAccessProfile = apiServerAccessProfile; DiskEncryptionSetID = diskEncryptionSetID; IdentityProfile = identityProfile; PrivateLinkResources = privateLinkResources; DisableLocalAccounts = disableLocalAccounts; HttpProxyConfig = httpProxyConfig; SecurityProfile = securityProfile; CustomInit(); }