/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the eks-2017-11-01.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.EKS.Model
{
///
/// Container for the parameters to the UpdateClusterConfig operation.
/// Updates an Amazon EKS cluster configuration. Your cluster continues to function during
/// the update. The response output includes an update ID that you can use to track the
/// status of your cluster update with the DescribeUpdate API operation.
///
///
///
/// You can use this API operation to enable or disable exporting the Kubernetes control
/// plane logs for your cluster to CloudWatch Logs. By default, cluster control plane
/// logs aren't exported to CloudWatch Logs. For more information, see Amazon
/// EKS Cluster Control Plane Logs in the Amazon EKS User Guide .
///
///
///
/// CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported
/// control plane logs. For more information, see CloudWatch
/// Pricing.
///
///
///
/// You can also use this API operation to enable or disable public and private access
/// to your cluster's Kubernetes API server endpoint. By default, public access is enabled,
/// and private access is disabled. For more information, see Amazon
/// EKS cluster endpoint access control in the Amazon EKS User Guide .
///
///
///
///
/// You can't update the subnets or security group IDs for an existing cluster.
///
///
///
/// Cluster updates are asynchronous, and they should finish within a few minutes. During
/// an update, the cluster status moves to UPDATING
(this status transition
/// is eventually consistent). When the update is complete (either Failed
/// or Successful
), the cluster status moves to Active
.
///
///
public partial class UpdateClusterConfigRequest : AmazonEKSRequest
{
private string _clientRequestToken;
private Logging _logging;
private string _name;
private VpcConfigRequest _resourcesVpcConfig;
///
/// Gets and sets the property ClientRequestToken.
///
/// Unique, case-sensitive identifier that you provide to ensure the idempotency of the
/// request.
///
///
public string ClientRequestToken
{
get { return this._clientRequestToken; }
set { this._clientRequestToken = value; }
}
// Check to see if ClientRequestToken property is set
internal bool IsSetClientRequestToken()
{
return this._clientRequestToken != null;
}
///
/// Gets and sets the property Logging.
///
/// Enable or disable exporting the Kubernetes control plane logs for your cluster to
/// CloudWatch Logs. By default, cluster control plane logs aren't exported to CloudWatch
/// Logs. For more information, see Amazon
/// EKS cluster control plane logs in the Amazon EKS User Guide .
///
///
///
/// CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported
/// control plane logs. For more information, see CloudWatch
/// Pricing.
///
///
///
public Logging Logging
{
get { return this._logging; }
set { this._logging = value; }
}
// Check to see if Logging property is set
internal bool IsSetLogging()
{
return this._logging != null;
}
///
/// Gets and sets the property Name.
///
/// The name of the Amazon EKS cluster to update.
///
///
[AWSProperty(Required=true)]
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property ResourcesVpcConfig.
///
public VpcConfigRequest ResourcesVpcConfig
{
get { return this._resourcesVpcConfig; }
set { this._resourcesVpcConfig = value; }
}
// Check to see if ResourcesVpcConfig property is set
internal bool IsSetResourcesVpcConfig()
{
return this._resourcesVpcConfig != null;
}
}
}