Exemple #1
0
 /// <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();
 }
Exemple #2
0
 /// <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();
 }