The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

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

DESCRIPTION

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

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

SYNOPSIS

    my $es = Paws->service('ES');
    my $UpdateElasticsearchDomainConfigResponse =
      $es->UpdateElasticsearchDomainConfig(
      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
        RollbackOnDisable =>
          'NO_ROLLBACK',    # values: NO_ROLLBACK, DEFAULT_ROLLBACK; 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
      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
      VPCOptions => {
        SecurityGroupIds => [ 'MyString', ... ],    # OPTIONAL
        SubnetIds        => [ 'MyString', ... ],    # OPTIONAL
      },    # OPTIONAL
      );

    # Results:
    my $DomainConfig = $UpdateElasticsearchDomainConfigResponse->DomainConfig;

    # Returns a L<Paws::ES::UpdateElasticsearchDomainConfigResponse> 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/UpdateElasticsearchDomainConfig

ATTRIBUTES

AccessPolicies => Str

IAM access policy as a JSON-formatted string.

AdvancedOptions => Paws::ES::AdvancedOptions

Modifies the advanced 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::AutoTuneOptions

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 updating.

EBSOptions => Paws::ES::EBSOptions

Specify the type and size of the EBS volume that you want to use.

ElasticsearchClusterConfig => Paws::ES::ElasticsearchClusterConfig

The type and number of instances to instantiate for the domain cluster.

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 the time, in UTC format, for the daily automated snapshot. Default value is 0 hours.

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 UpdateElasticsearchDomainConfig 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