From Code to Community: Sponsoring The Perl and Raku Conference 2025 Learn more

NAME

Paws::ES::CreateElasticsearchDomain - Arguments for method CreateElasticsearchDomain on Paws::ES

DESCRIPTION

This class represents the parameters used for calling the method CreateElasticsearchDomain on the Amazon Elasticsearch Service service. Use the attributes of this class as arguments to method CreateElasticsearchDomain.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateElasticsearchDomain.

SYNOPSIS

my $es = Paws->service('ES');
my $CreateElasticsearchDomainResponse = $es->CreateElasticsearchDomain(
DomainName => 'MyDomainName',
AccessPolicies => 'MyPolicyDocument', # OPTIONAL
AdvancedOptions => { 'MyString' => 'MyString', }, # OPTIONAL
AdvancedSecurityOptions => {
Enabled => 1, # OPTIONAL
InternalUserDatabaseEnabled => 1, # OPTIONAL
MasterUserOptions => {
MasterUserARN => 'MyARN', # OPTIONAL
MasterUserName => 'MyUsername', # min: 1; OPTIONAL
MasterUserPassword => 'MyPassword', # min: 8; OPTIONAL
}, # OPTIONAL
SAMLOptions => {
Enabled => 1, # OPTIONAL
Idp => {
EntityId => 'MySAMLEntityId', # min: 8, max: 512
MetadataContent => 'MySAMLMetadata', # min: 1, max: 1048576
}, # OPTIONAL
MasterBackendRole => 'MyBackendRole', # min: 1, max: 256; OPTIONAL
MasterUserName => 'MyUsername', # min: 1; OPTIONAL
RolesKey => 'MyString',
SessionTimeoutMinutes => 1, # OPTIONAL
SubjectKey => 'MyString',
}, # OPTIONAL
}, # OPTIONAL
AutoTuneOptions => {
DesiredState => 'ENABLED', # values: ENABLED, DISABLED; OPTIONAL
MaintenanceSchedules => [
{
CronExpressionForRecurrence => 'MyString',
Duration => {
Unit => 'HOURS', # values: HOURS; OPTIONAL
Value => 1, # min: 1, max: 24; OPTIONAL
}, # OPTIONAL
StartAt => '1970-01-01T01:00:00', # OPTIONAL
},
...
], # max: 100; OPTIONAL
}, # OPTIONAL
CognitoOptions => {
Enabled => 1, # OPTIONAL
IdentityPoolId => 'MyIdentityPoolId', # min: 1, max: 55; OPTIONAL
RoleArn => 'MyRoleArn', # min: 20, max: 2048; OPTIONAL
UserPoolId => 'MyUserPoolId', # min: 1, max: 55; OPTIONAL
}, # OPTIONAL
DomainEndpointOptions => {
CustomEndpoint => 'MyDomainNameFqdn', # min: 1, max: 255; OPTIONAL
CustomEndpointCertificateArn => 'MyARN', # OPTIONAL
CustomEndpointEnabled => 1, # OPTIONAL
EnforceHTTPS => 1, # OPTIONAL
TLSSecurityPolicy => 'Policy-Min-TLS-1-0-2019-07'
, # values: Policy-Min-TLS-1-0-2019-07, Policy-Min-TLS-1-2-2019-07; OPTIONAL
}, # OPTIONAL
EBSOptions => {
EBSEnabled => 1, # OPTIONAL
Iops => 1, # OPTIONAL
VolumeSize => 1, # OPTIONAL
VolumeType => 'standard', # values: standard, gp2, io1; OPTIONAL
}, # OPTIONAL
ElasticsearchClusterConfig => {
ColdStorageOptions => {
Enabled => 1, # OPTIONAL
}, # OPTIONAL
DedicatedMasterCount => 1, # OPTIONAL
DedicatedMasterEnabled => 1, # OPTIONAL
DedicatedMasterType => 'm3.medium.elasticsearch'
, # values: m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, m5.large.elasticsearch, m5.xlarge.elasticsearch, m5.2xlarge.elasticsearch, m5.4xlarge.elasticsearch, m5.12xlarge.elasticsearch, r5.large.elasticsearch, r5.xlarge.elasticsearch, r5.2xlarge.elasticsearch, r5.4xlarge.elasticsearch, r5.12xlarge.elasticsearch, c5.large.elasticsearch, c5.xlarge.elasticsearch, c5.2xlarge.elasticsearch, c5.4xlarge.elasticsearch, c5.9xlarge.elasticsearch, c5.18xlarge.elasticsearch, ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch; OPTIONAL
InstanceCount => 1, # OPTIONAL
InstanceType => 'm3.medium.elasticsearch'
, # values: m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, m5.large.elasticsearch, m5.xlarge.elasticsearch, m5.2xlarge.elasticsearch, m5.4xlarge.elasticsearch, m5.12xlarge.elasticsearch, r5.large.elasticsearch, r5.xlarge.elasticsearch, r5.2xlarge.elasticsearch, r5.4xlarge.elasticsearch, r5.12xlarge.elasticsearch, c5.large.elasticsearch, c5.xlarge.elasticsearch, c5.2xlarge.elasticsearch, c5.4xlarge.elasticsearch, c5.9xlarge.elasticsearch, c5.18xlarge.elasticsearch, ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch; OPTIONAL
WarmCount => 1, # OPTIONAL
WarmEnabled => 1, # OPTIONAL
WarmType => 'ultrawarm1.medium.elasticsearch'
, # values: ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch; OPTIONAL
ZoneAwarenessConfig => {
AvailabilityZoneCount => 1, # OPTIONAL
}, # OPTIONAL
ZoneAwarenessEnabled => 1, # OPTIONAL
}, # OPTIONAL
ElasticsearchVersion => 'MyElasticsearchVersionString', # OPTIONAL
EncryptionAtRestOptions => {
Enabled => 1, # OPTIONAL
KmsKeyId => 'MyKmsKeyId', # min: 1, max: 500; OPTIONAL
}, # OPTIONAL
LogPublishingOptions => {
'INDEX_SLOW_LOGS' => {
CloudWatchLogsLogGroupArn => 'MyCloudWatchLogsLogGroupArn', # OPTIONAL
Enabled => 1, # OPTIONAL
}, # key: values: INDEX_SLOW_LOGS, SEARCH_SLOW_LOGS, ES_APPLICATION_LOGS, AUDIT_LOGS
}, # OPTIONAL
NodeToNodeEncryptionOptions => {
Enabled => 1, # OPTIONAL
}, # OPTIONAL
SnapshotOptions => {
AutomatedSnapshotStartHour => 1, # OPTIONAL
}, # OPTIONAL
TagList => [
{
Key => 'MyTagKey', # min: 1, max: 128
Value => 'MyTagValue', # max: 256
},
...
], # OPTIONAL
VPCOptions => {
SecurityGroupIds => [ 'MyString', ... ], # OPTIONAL
SubnetIds => [ 'MyString', ... ], # OPTIONAL
}, # OPTIONAL
);
# Results:
my $DomainStatus = $CreateElasticsearchDomainResponse->DomainStatus;
# Returns a L<Paws::ES::CreateElasticsearchDomainResponse> object.

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/es/CreateElasticsearchDomain

ATTRIBUTES

AccessPolicies => Str

IAM access policy as a JSON-formatted string.

AdvancedOptions => Paws::ES::AdvancedOptions

Option to allow references to indices in an HTTP request body. Must be false when configuring access to individual sub-resources. By default, the value is true. See Configuration Advanced Options (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options) for more information.

AdvancedSecurityOptions => Paws::ES::AdvancedSecurityOptionsInput

Specifies advanced security options.

AutoTuneOptions => Paws::ES::AutoTuneOptionsInput

Specifies Auto-Tune options.

CognitoOptions => Paws::ES::CognitoOptions

Options to specify the Cognito user and identity pools for Kibana authentication. For more information, see Amazon Cognito Authentication for Kibana (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html).

DomainEndpointOptions => Paws::ES::DomainEndpointOptions

Options to specify configuration that will be applied to the domain endpoint.

REQUIRED DomainName => Str

The name of the Elasticsearch domain that you are creating. Domain names are unique across the domains owned by an account within an AWS region. Domain names must start with a lowercase letter and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

EBSOptions => Paws::ES::EBSOptions

Options to enable, disable and specify the type and size of EBS storage volumes.

ElasticsearchClusterConfig => Paws::ES::ElasticsearchClusterConfig

Configuration options for an Elasticsearch domain. Specifies the instance type and number of instances in the domain cluster.

ElasticsearchVersion => Str

String of format X.Y to specify version for the Elasticsearch domain eg. "1.5" or "2.3". For more information, see Creating Elasticsearch Domains (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomains) in the Amazon Elasticsearch Service Developer Guide.

EncryptionAtRestOptions => Paws::ES::EncryptionAtRestOptions

Specifies the Encryption At Rest Options.

LogPublishingOptions => Paws::ES::LogPublishingOptions

Map of LogType and LogPublishingOption, each containing options to publish a given type of Elasticsearch log.

NodeToNodeEncryptionOptions => Paws::ES::NodeToNodeEncryptionOptions

Specifies the NodeToNodeEncryptionOptions.

SnapshotOptions => Paws::ES::SnapshotOptions

Option to set time, in UTC format, of the daily automated snapshot. Default value is 0 hours.

TagList => ArrayRef[Paws::ES::Tag]

A list of Tag added during domain creation.

VPCOptions => Paws::ES::VPCOptions

Options to specify the subnets and security groups for VPC endpoint. For more information, see Creating a VPC (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-vpc.html#es-creating-vpc) in VPC Endpoints for Amazon Elasticsearch Service Domains

SEE ALSO

This class forms part of Paws, documenting arguments for method CreateElasticsearchDomain in Paws::ES

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues