/*
* 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 securityhub-2018-10-26.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.SecurityHub.Model
{
///
/// details about the configuration of an OpenSearch cluster.
///
public partial class AwsElasticsearchDomainElasticsearchClusterConfigDetails
{
private int? _dedicatedMasterCount;
private bool? _dedicatedMasterEnabled;
private string _dedicatedMasterType;
private int? _instanceCount;
private string _instanceType;
private AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails _zoneAwarenessConfig;
private bool? _zoneAwarenessEnabled;
///
/// Gets and sets the property DedicatedMasterCount.
///
/// The number of instances to use for the master node. If this attribute is specified,
/// then DedicatedMasterEnabled
must be true
.
///
///
public int DedicatedMasterCount
{
get { return this._dedicatedMasterCount.GetValueOrDefault(); }
set { this._dedicatedMasterCount = value; }
}
// Check to see if DedicatedMasterCount property is set
internal bool IsSetDedicatedMasterCount()
{
return this._dedicatedMasterCount.HasValue;
}
///
/// Gets and sets the property DedicatedMasterEnabled.
///
/// Whether to use a dedicated master node for the Elasticsearch domain. A dedicated master
/// node performs cluster management tasks, but doesn't hold data or respond to data upload
/// requests.
///
///
public bool DedicatedMasterEnabled
{
get { return this._dedicatedMasterEnabled.GetValueOrDefault(); }
set { this._dedicatedMasterEnabled = value; }
}
// Check to see if DedicatedMasterEnabled property is set
internal bool IsSetDedicatedMasterEnabled()
{
return this._dedicatedMasterEnabled.HasValue;
}
///
/// Gets and sets the property DedicatedMasterType.
///
/// The hardware configuration of the computer that hosts the dedicated master node. A
/// sample value is m3.medium.elasticsearch
. If this attribute is specified,
/// then DedicatedMasterEnabled
must be true
.
///
///
///
/// For a list of valid values, see Supported
/// instance types in Amazon OpenSearch Service in the Amazon OpenSearch Service
/// Developer Guide.
///
///
public string DedicatedMasterType
{
get { return this._dedicatedMasterType; }
set { this._dedicatedMasterType = value; }
}
// Check to see if DedicatedMasterType property is set
internal bool IsSetDedicatedMasterType()
{
return this._dedicatedMasterType != null;
}
///
/// Gets and sets the property InstanceCount.
///
/// The number of data nodes to use in the Elasticsearch domain.
///
///
public int InstanceCount
{
get { return this._instanceCount.GetValueOrDefault(); }
set { this._instanceCount = value; }
}
// Check to see if InstanceCount property is set
internal bool IsSetInstanceCount()
{
return this._instanceCount.HasValue;
}
///
/// Gets and sets the property InstanceType.
///
/// The instance type for your data nodes. For example, m3.medium.elasticsearch
.
///
///
///
/// For a list of valid values, see Supported
/// instance types in Amazon OpenSearch Service in the Amazon OpenSearch Service
/// Developer Guide.
///
///
public string InstanceType
{
get { return this._instanceType; }
set { this._instanceType = value; }
}
// Check to see if InstanceType property is set
internal bool IsSetInstanceType()
{
return this._instanceType != null;
}
///
/// Gets and sets the property ZoneAwarenessConfig.
///
/// Configuration options for zone awareness. Provided if ZoneAwarenessEnabled
/// is true
.
///
///
public AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails ZoneAwarenessConfig
{
get { return this._zoneAwarenessConfig; }
set { this._zoneAwarenessConfig = value; }
}
// Check to see if ZoneAwarenessConfig property is set
internal bool IsSetZoneAwarenessConfig()
{
return this._zoneAwarenessConfig != null;
}
///
/// Gets and sets the property ZoneAwarenessEnabled.
///
/// Whether to enable zone awareness for the Elasticsearch domain. When zone awareness
/// is enabled, OpenSearch allocates the cluster's nodes and replica index shards across
/// Availability Zones in the same Region. This prevents data loss and minimizes downtime
/// if a node or data center fails.
///
///
public bool ZoneAwarenessEnabled
{
get { return this._zoneAwarenessEnabled.GetValueOrDefault(); }
set { this._zoneAwarenessEnabled = value; }
}
// Check to see if ZoneAwarenessEnabled property is set
internal bool IsSetZoneAwarenessEnabled()
{
return this._zoneAwarenessEnabled.HasValue;
}
}
}