/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include details about the configuration of an OpenSearch cluster.See
* Also:
AWS
* API Reference
The number of instances to use for the master node. If this attribute is
* specified, then DedicatedMasterEnabled
must be
* true
.
The number of instances to use for the master node. If this attribute is
* specified, then DedicatedMasterEnabled
must be
* true
.
The number of instances to use for the master node. If this attribute is
* specified, then DedicatedMasterEnabled
must be
* true
.
The number of instances to use for the master node. If this attribute is
* specified, then DedicatedMasterEnabled
must be
* true
.
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.
*/ inline bool GetDedicatedMasterEnabled() const{ return m_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.
*/ inline bool DedicatedMasterEnabledHasBeenSet() const { return m_dedicatedMasterEnabledHasBeenSet; } /** *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.
*/ inline void SetDedicatedMasterEnabled(bool value) { m_dedicatedMasterEnabledHasBeenSet = true; m_dedicatedMasterEnabled = value; } /** *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.
*/ inline AwsElasticsearchDomainElasticsearchClusterConfigDetails& WithDedicatedMasterEnabled(bool value) { SetDedicatedMasterEnabled(value); return *this;} /** *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.
*/ inline const Aws::String& GetDedicatedMasterType() const{ return m_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.
*/ inline bool DedicatedMasterTypeHasBeenSet() const { return m_dedicatedMasterTypeHasBeenSet; } /** *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.
*/ inline void SetDedicatedMasterType(const Aws::String& value) { m_dedicatedMasterTypeHasBeenSet = true; m_dedicatedMasterType = value; } /** *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.
*/ inline void SetDedicatedMasterType(Aws::String&& value) { m_dedicatedMasterTypeHasBeenSet = true; m_dedicatedMasterType = std::move(value); } /** *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.
*/ inline void SetDedicatedMasterType(const char* value) { m_dedicatedMasterTypeHasBeenSet = true; m_dedicatedMasterType.assign(value); } /** *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.
*/ inline AwsElasticsearchDomainElasticsearchClusterConfigDetails& WithDedicatedMasterType(const Aws::String& value) { SetDedicatedMasterType(value); return *this;} /** *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.
*/ inline AwsElasticsearchDomainElasticsearchClusterConfigDetails& WithDedicatedMasterType(Aws::String&& value) { SetDedicatedMasterType(std::move(value)); return *this;} /** *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.
*/ inline AwsElasticsearchDomainElasticsearchClusterConfigDetails& WithDedicatedMasterType(const char* value) { SetDedicatedMasterType(value); return *this;} /** *The number of data nodes to use in the Elasticsearch domain.
*/ inline int GetInstanceCount() const{ return m_instanceCount; } /** *The number of data nodes to use in the Elasticsearch domain.
*/ inline bool InstanceCountHasBeenSet() const { return m_instanceCountHasBeenSet; } /** *The number of data nodes to use in the Elasticsearch domain.
*/ inline void SetInstanceCount(int value) { m_instanceCountHasBeenSet = true; m_instanceCount = value; } /** *The number of data nodes to use in the Elasticsearch domain.
*/ inline AwsElasticsearchDomainElasticsearchClusterConfigDetails& WithInstanceCount(int value) { SetInstanceCount(value); return *this;} /** *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.
*/ inline const Aws::String& GetInstanceType() const{ return m_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.
*/ inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; } /** *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.
*/ inline void SetInstanceType(const Aws::String& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; } /** *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.
*/ inline void SetInstanceType(Aws::String&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::move(value); } /** *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.
*/ inline void SetInstanceType(const char* value) { m_instanceTypeHasBeenSet = true; m_instanceType.assign(value); } /** *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.
*/ inline AwsElasticsearchDomainElasticsearchClusterConfigDetails& WithInstanceType(const Aws::String& value) { SetInstanceType(value); return *this;} /** *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.
*/ inline AwsElasticsearchDomainElasticsearchClusterConfigDetails& WithInstanceType(Aws::String&& value) { SetInstanceType(std::move(value)); return *this;} /** *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.
*/ inline AwsElasticsearchDomainElasticsearchClusterConfigDetails& WithInstanceType(const char* value) { SetInstanceType(value); return *this;} /** *Configuration options for zone awareness. Provided if
* ZoneAwarenessEnabled
is true
.
Configuration options for zone awareness. Provided if
* ZoneAwarenessEnabled
is true
.
Configuration options for zone awareness. Provided if
* ZoneAwarenessEnabled
is true
.
Configuration options for zone awareness. Provided if
* ZoneAwarenessEnabled
is true
.
Configuration options for zone awareness. Provided if
* ZoneAwarenessEnabled
is true
.
Configuration options for zone awareness. Provided if
* ZoneAwarenessEnabled
is true
.
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.
*/ inline bool GetZoneAwarenessEnabled() const{ return m_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.
*/ inline bool ZoneAwarenessEnabledHasBeenSet() const { return m_zoneAwarenessEnabledHasBeenSet; } /** *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.
*/ inline void SetZoneAwarenessEnabled(bool value) { m_zoneAwarenessEnabledHasBeenSet = true; m_zoneAwarenessEnabled = value; } /** *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.
*/ inline AwsElasticsearchDomainElasticsearchClusterConfigDetails& WithZoneAwarenessEnabled(bool value) { SetZoneAwarenessEnabled(value); return *this;} private: int m_dedicatedMasterCount; bool m_dedicatedMasterCountHasBeenSet = false; bool m_dedicatedMasterEnabled; bool m_dedicatedMasterEnabledHasBeenSet = false; Aws::String m_dedicatedMasterType; bool m_dedicatedMasterTypeHasBeenSet = false; int m_instanceCount; bool m_instanceCountHasBeenSet = false; Aws::String m_instanceType; bool m_instanceTypeHasBeenSet = false; AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetails m_zoneAwarenessConfig; bool m_zoneAwarenessConfigHasBeenSet = false; bool m_zoneAwarenessEnabled; bool m_zoneAwarenessEnabledHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws