Amazon Elasticsearch Service
开发人员指南 (API 版本 2015-01-01)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

Amazon Elasticsearch Service 配置 API 参考

本参考介绍了 Amazon Elasticsearch Service 配置 API 中的操作、数据类型和错误。配置 API 是您可用于通过 HTTP 创建和配置 Amazon ES 域的 REST API。您还可以使用 AWS CLI 和控制台配置 Amazon ES 域。有关更多信息,请参阅创建和配置 Amazon ES 域

操作

下表针对 Amazon Elasticsearch Service 配置 API 的 REST 接口,提供了每个操作所需的 HTTP 方法的快速参考。每个操作的描述还包括所需的 HTTP 方法。

注意

所有配置服务请求必须经过签名。有关更多信息,请参阅本指南中的签署 Amazon Elasticsearch 服务请求AWS General Reference 中的签名版本 4 签名流程

AddTags

将资源标签附加到 Amazon ES 域。有关更多信息,请参阅标记 Amazon ES 域

语法

POST /2015-01-01/tags { "ARN": "<DOMAIN_ARN>", "TagList": [ { "Key": "<TAG_KEY>", "Value": "<TAG_VALUE>" } ] }

请求参数

此操作不使用请求参数。

请求正文

参数 数据类型 必需? 描述
TagList TagList 资源标签列表
ARN ARN 要附加资源标签的 Amazon ES 域的 Amazon 资源名称 (ARN)。

响应元素

不适用。AddTags 操作不返回数据结构。

错误

AddTags 操作可能返回以下错误:

示例

以下示例将标签键为 project 的单个资源标签附加到 logs Amazon ES 域:

请求

POST es.<AWS_REGION>.amazonaws.com/2015-01-01/tags { "ARN": "<DOMAIN_ARN>", "TagList": [ { "Key": "project", "Value": "trident" } ] }

响应

HTTP/1.1 200 OK x-amzn-RequestId: 5a6a5790-536c-11e5-9cd2-b36dbf43d89e Content-Type: application/json Content-Length: 0 Date: Sat, 05 Sep 2015 01:20:55 GMT

CreateElasticsearchDomain

创建新的 Amazon ES 域。有关更多信息,请参阅 创建 Amazon ES 域

注意

如果您尝试创建 Amazon ES 域,并且已存在具有相同名称的域,则 API 不会报告错误。相反,它会返回现有域的详细信息。

语法

POST /2015-01-01/es/domain { "DomainName": "<DOMAIN_NAME>", "ElasticsearchVersion": "<VERSION>", "ElasticsearchClusterConfig": { "InstanceType": "<INSTANCE_TYPE>", "InstanceCount": <INSTANCE_COUNT>, "DedicatedMasterEnabled": "<TRUE|FALSE>", "DedicatedMasterCount": <INSTANCE_COUNT>, "DedicatedMasterType": "<INSTANCE_TYPE>", "ZoneAwarenessEnabled": "<TRUE|FALSE>", "ZoneAwarenessConfig": { "AvailabilityZoneCount": <2|3> } }, "EBSOptions": { "EBSEnabled": "<TRUE|FALSE>", "VolumeType": "<VOLUME_TYPE>", "VolumeSize": "<VOLUME_SIZE>", "Iops": "<VALUE>" }, "VPCOptions": { "SubnetIds": [ "<SUBNET_ID>" ], "SecurityGroupIds": [ "<SECURITY_GROUP_ID>" ] }, "CognitoOptions": { "IdentityPoolId": "us-west-1:12345678-1234-1234-1234-123456789012", "RoleArn": "arn:aws:iam::123456789012:role/my-kibana-role", "Enabled": true, "UserPoolId": "us-west-1_121234567" }, "AccessPolicies": "<ACCESS_POLICY_DOCUMENT>", "SnapshotOptions": { "AutomatedSnapshotStartHour": <START_HOUR> }, "LogPublishingOptions": { "SEARCH_SLOW_LOGS": { "CloudWatchLogsLogGroupArn":"<ARN>", "Enabled":true }, "INDEX_SLOW_LOGS": { "CloudWatchLogsLogGroupArn":"<ARN>", "Enabled":true } }, "EncryptionAtRestOptions": { "Enabled": true, "KmsKeyId": "<KEY_ID>" }, "AdvancedOptions": { "rest.action.multi.allow_explicit_index": "<TRUE|FALSE>", "indices.fielddata.cache.size": "<PERCENTAGE_OF_HEAP>" }, "NodeToNodeEncryptionOptions": { "Enabled": true|false } }

请求参数

此操作不使用 HTTP 请求参数。

请求正文

参数 数据类型 必需? 描述
DomainName DomainName 要创建的 Amazon ES 域的名称。
ElasticsearchVersion String Elasticsearch 的版本。如果未指定,则将 1.5 用作默认值。有关所支持版本的完整列表,请参阅支持的 Elasticsearch 版本
ElasticsearchClusterConfig ElasticsearchClusterConfig Amazon ES 域的群集配置的容器。
EBSOptions EBSOptions 为 Amazon ES 域启用基于 EBS 的存储所需的参数的容器。有关更多信息,请参阅配置基于 EBS 的存储
VPCOptions VPCOptions 配置 VPC 访问域所需的值的容器。如果您不指定这些值,Amazon ES 将使用公有终端节点创建域。要了解更多信息,请参阅“Amazon Elasticsearch Service 域的 VPC 支持”。
CognitoOptions CognitoOptions 键-值对,用来配置 Amazon ES 以使用用于 Kibana 的 Amazon Cognito 身份验证。
AccessPolicies String 为新的 Amazon ES 域指定访问策略的 IAM 策略文档。有关更多信息,请参阅 Amazon Elasticsearch Service 中的 Identity and Access Management
SnapshotOptions SnapshotOptions

已弃用。对于运行 Elasticsearch 5.3 及更高版本的域,Amazon ES 会每小时自动制作快照,因此该设置不相关。

对于运行较早版本的 Elasticsearch 的域,Amazon ES 会每日自动制作快照。此值充当您希望服务制作快照的一天中的小时的容器。

AdvancedOptions AdvancedOptions 用于指定高级配置选项的键值对。有关更多信息,请参阅配置高级选项
LogPublishingOptions LogPublishingOptions 用于配置慢速日志发布的键值对。
EncryptionAtRestOptions EncryptionAtRestOptions 用于至少启用加密的键值对。
NodeToNodeEncryptionOptions NodeToNodeEncryptionOptions 启用节点到节点加密。

响应元素

字段 数据类型 描述
DomainStatus ElasticsearchDomainStatus 指定新 Amazon ES 域的状态和配置。

错误

CreateElasticsearchDomain 可能返回以下错误:

示例

该示例演示以下内容:

  • 创建名为 streaming-logs 的 Amazon ES 域

  • 配置具有 6 个数据节点 (i3.large) 和 3 个专用主节点 (c4.large) 的集群

  • 启用多个可用区

  • 为域配置 VPC 访问

  • 启用静态加密和节点到节点加密

请求

POST https://es.us-west-1.amazonaws.com/2015-01-01/es/domain { "DomainName": "streaming-logs", "ElasticsearchVersion": "6.3", "ElasticsearchClusterConfig": { "InstanceType": "i3.large.elasticsearch", "InstanceCount": 6, "DedicatedMasterEnabled": "true", "DedicatedMasterCount": 3, "DedicatedMasterType": "c4.large.elasticsearch", "ZoneAwarenessEnabled": "true" }, "EncryptionAtRestOptions": { "Enabled": true, "KmsKeyId": "1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a" }, "NodeToNodeEncryptionOptions": { "Enabled": true }, "VPCOptions": { "SubnetIds": [ "subnet-87654321", "subnet-12345678" ] } }

响应

{ "DomainStatus": { "ARN": "arn:aws:es:us-west-1:123456789012:domain/streaming-logs", "AccessPolicies": "", "AdvancedOptions": { "rest.action.multi.allow_explicit_index": "true" }, "CognitoOptions": { "Enabled": false, "IdentityPoolId": null, "RoleArn": null, "UserPoolId": null }, "Created": true, "Deleted": false, "DomainId": "123456789012/streaming-logs", "DomainName": "streaming-logs", "ElasticsearchVersion": "5.5", "ElasticsearchClusterConfig": { "InstanceType": "m3.medium.elasticsearch", "InstanceCount": 6, "DedicatedMasterEnabled": "true", "DedicatedMasterCount": 3, "DedicatedMasterType": "m3.medium.elasticsearch", "ZoneAwarenessEnabled": "true", "ZoneAwarenessConfig": { "AvailabilityZoneCount": 2 } }, "ElasticsearchClusterConfig": { "DedicatedMasterCount": 3, "DedicatedMasterEnabled": true, "DedicatedMasterType": "c4.large.elasticsearch", "InstanceCount": 6, "InstanceType": "i3.large.elasticsearch", "ZoneAwarenessEnabled": true }, "ElasticsearchVersion": "6.3", "EncryptionAtRestOptions": { "Enabled": true, "KmsKeyId": "arn:aws:kms:us-west-1:123456789012:key/1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a" }, "Endpoint": null, "Endpoints": null, "LogPublishingOptions": null, "NodeToNodeEncryptionOptions": { "Enabled": true }, "Processing": true, "ServiceSoftwareOptions": { "AutomatedUpdateDate": 0, "Cancellable": false, "CurrentVersion": "LEGACY", "Description": "There is no software update available for this domain.", "NewVersion": "", "UpdateAvailable": false, "UpdateStatus": "COMPLETED" }, "SnapshotOptions": { "AutomatedSnapshotStartHour": 0 }, "UpgradeProcessing": false, "VPCOptions": { "AvailabilityZones": [ "us-west-1b", "us-west-1c" ], "SecurityGroupIds": [ "sg-12345678" ], "SubnetIds": [ "subnet-12345678", "subnet-87654321" ], "VPCId": "vpc-12345678" } } }

DeleteElasticsearchDomain

删除 Amazon ES 域及其所有数据。域在删除后无法恢复。

语法

DELETE /2015-01-01/es/domain/<DOMAIN_NAME>

请求参数

参数 数据类型 必需? 描述
DomainName DomainName 您要删除的 Amazon ES 域的名称。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
DomainStatus ElasticsearchDomainStatus 指定特定 Amazon ES 域的配置。

错误

DeleteElasticsearchDomain 操作可能返回以下错误:

示例

以下示例将删除 weblogs 域:

请求

DELETE es.<AWS_REGION>.amazonaws.com/2015-01-01/es/domain/weblogs

响应

HTTP/1.1 200 OK { "DomainStatus": { "ARN": "arn:aws:es:us-west-1:123456789012:domain/weblogs", "AccessPolicies": "", "AdvancedOptions": { "rest.action.multi.allow_explicit_index": "true" }, "Created": true, "Deleted": true, "DomainId": "123456789012/weblogs", "DomainName": "weblogs", "EBSOptions": { "EBSEnabled": false, "EncryptionEnabled": null, "Iops": null, "VolumeSize": null, "VolumeType": null }, "ElasticsearchClusterConfig": { "DedicatedMasterCount": 3, "DedicatedMasterEnabled": true, "DedicatedMasterType": "m3.medium.elasticsearch", "InstanceCount": 6, "InstanceType": "m3.medium.elasticsearch", "ZoneAwarenessEnabled": true }, "ElasticsearchVersion": "5.5", "EncryptionAtRestOptions": { "Enabled": true, "KmsKeyId": "arn:aws:kms:us-west-1:123456789012:key/1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a" }, "Endpoint": null, "Endpoints": null, "Processing": true, "SnapshotOptions": { "AutomatedSnapshotStartHour": 0 }, "VPCOptions": { "AvailabilityZones": [ "us-west-1b", "us-west-1c" ], "SecurityGroupIds": [ "sg-12345678" ], "SubnetIds": [ "subnet-87654321", "subnet-12345678" ], "VPCId": "vpc-12345678" } } }

DeleteElasticsearchServiceRole

删除 Amazon ES 和 Amazon EC2 之间的服务相关角色。这种角色赋予 Amazon ES 权限来将 VPC 终端节点放入 VPC 中。必须存在服务相关角色才能在域中创建 VPC 终端节点或者域才能正常工作。

注意

仅当没有任何域在使用服务相关角色时此操作才会成功。

语法

DELETE /2015-01-01/es/role

请求参数

此操作不使用请求参数。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

不适用。DeleteElasticsearchServiceRole 操作不返回数据结构。

错误

DeleteElasticsearchServiceRole 可能返回以下错误:

示例

以下示例演示删除服务相关角色:

请求

DELETE es.<AWS_REGION>.amazonaws.com/2015-01-01/es/role

响应

如果成功,此操作不提供响应。

DescribeElasticsearchDomain

描述指定 Amazon ES 域的域配置,其中包括域 ID、域服务终端节点和域 ARN。

语法

GET /2015-01-01/es/domain/<DOMAIN_NAME>

请求参数

参数 数据类型 必需? 描述
DomainName DomainName 您要描述的 Amazon ES 域的名称。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
DomainStatus ElasticsearchDomainStatus 指定 Amazon ES 域的配置。

错误

DescribeElasticsearchDomain 可能返回以下错误:

示例

以下示例返回对 streaming-logs 域的描述。

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/es/domain/streaming-logs

响应

{ "DomainStatus": { "ARN": "arn:aws:es:us-west-1:123456789012:domain/streaming-logs", "AccessPolicies": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"*\"},\"Action\":\"es:*\",\"Resource\":\"arn:aws:es:us-west-1:123456789012:domain/streaming-logs/*\",\"Condition\":{\"IpAddress\":{\"aws:SourceIp\":[\"11.222.333.11\",\"11.222.333.12\",\"11.222.333.13\",\"11.222.333.14\",\"11.222.333.15\"]}}}]}", "AdvancedOptions": { "rest.action.multi.allow_explicit_index": "true" }, "Created": true, "Deleted": false, "DomainId": "123456789012/streaming-logs", "DomainName": "streaming-logs", "EBSOptions": { "EBSEnabled": true, "EncryptionEnabled": false, "Iops": null, "VolumeSize": 11, "VolumeType": "gp2" }, "ElasticsearchClusterConfig": { "DedicatedMasterCount": 2, "DedicatedMasterEnabled": false, "DedicatedMasterType": "m4.large.elasticsearch", "InstanceCount": 2, "InstanceType": "t2.small.elasticsearch", "ZoneAwarenessEnabled": false }, "ElasticsearchVersion": "5.5", "EncryptionAtRestOptions": { "Enabled": true, "KmsKeyId": "arn:aws:kms:us-west-1:123456789012:key/1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a" }, "CognitoOptions": { "IdentityPoolId": "us-west-1:12345678-1234-1234-1234-123456789012", "RoleArn": "arn:aws:iam::123456789012:role/my-kibana-role", "Enabled": true, "UserPoolId": "us-west-1_121234567" }, "Endpoint": "search-streaming-logs-oojmrbhufr27n44zdri52wukdy.us-west-1.es.amazonaws.com", "Endpoints": null, "Processing": false, "SnapshotOptions": { "AutomatedSnapshotStartHour": 8 }, "ServiceSoftwareOptions": { "AutomatedUpdateDate": 1530185603, "Cancellable": false, "CurrentVersion": "LEGACY", "Description": "A new software release R1234567 is available. This release will be automatically deployed if no action is taken.", "NewVersion": "R1234567", "UpdateAvailable": true, "UpdateStatus": "ELIGIBLE" } "VPCOptions": null } }

DescribeElasticsearchDomainConfig

显示一个 Amazon ES 域的配置。

语法

GET /2015-01-01/es/domain/<DOMAIN_NAME>/config

请求参数

参数 数据类型 必需? 描述
DomainName DomainName Amazon ES 域的名称。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
DomainConfig ElasticsearchDomainConfig Amazon ES 域的配置。

错误

DescribeElasticsearchDomainConfig 操作可能返回以下错误:

示例

以下示例返回 logs 域的配置的描述:

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/es/domain/logs/config

响应

HTTP/1.1 200 OK { "DomainConfig": { "AccessPolicies": { "Options": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::123456789012:root\"},\"Action\":\"es:*\",\"Resource\":\"arn:aws:es:us-west-1:123456789012:domain/logs/*\"}]}", "Status": { "CreationDate": 1499817484.04, "PendingDeletion": false, "State": "Active", "UpdateDate": 1500308955.652, "UpdateVersion": 17 } }, "AdvancedOptions": { "Options": { "indices.fielddata.cache.size": "", "rest.action.multi.allow_explicit_index": "true" }, "Status": { "CreationDate": 1499817484.04, "PendingDeletion": false, "State": "Active", "UpdateDate": 1499818054.108, "UpdateVersion": 5 } }, "EBSOptions": { "Options": { "EBSEnabled": true, "EncryptionEnabled": false, "Iops": 0, "VolumeSize": 10, "VolumeType": "gp2" }, "Status": { "CreationDate": 1499817484.04, "PendingDeletion": false, "State": "Active", "UpdateDate": 1499818054.108, "UpdateVersion": 5 } }, "ElasticsearchClusterConfig": { "Options": { "DedicatedMasterCount": 2, "DedicatedMasterEnabled": false, "DedicatedMasterType": "m4.large.elasticsearch", "InstanceCount": 2, "InstanceType": "m4.large.elasticsearch", "ZoneAwarenessEnabled": false }, "Status": { "CreationDate": 1499817484.04, "PendingDeletion": false, "State": "Active", "UpdateDate": 1499966854.612, "UpdateVersion": 13 } }, "ElasticsearchVersion": { "Options": "5.5", "Status": { "PendingDeletion": false, "State": "Active", "CreationDate": 1436913638.995, "UpdateVersion": 6, "UpdateDate": 1436914324.278 }, "Options": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"*\"},\"Action\":\"es:*\",\"Resource\":\"arn:aws:es:us-east-1:123456789012:domain/logs/*\"}]}" }, "EncryptionAtRestOptions": { "Options": { "Enabled": true, "KmsKeyId": "arn:aws:kms:us-west-1:123456789012:key/1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a" }, "Status": { "CreationDate": 1509490412.757, "PendingDeletion": false, "State": "Active", "UpdateDate": 1509490953.717, "UpdateVersion": 6 } }, "LogPublishingOptions":{ "Status":{ "CreationDate":1502774634.546, "PendingDeletion":false, "State":"Processing", "UpdateDate":1502779590.448, "UpdateVersion":60 }, "Options":{ "INDEX_SLOW_LOGS":{ "CloudWatchLogsLogGroupArn":"arn:aws:logs:us-east-1:123456789012:log-group:sample-domain", "Enabled":true }, "SEARCH_SLOW_LOGS":{ "CloudWatchLogsLogGroupArn":"arn:aws:logs:us-east-1:123456789012:log-group:sample-domain", "Enabled":true } } }, "SnapshotOptions": { "Options": { "AutomatedSnapshotStartHour": 6 }, "Status": { "CreationDate": 1499817484.04, "PendingDeletion": false, "State": "Active", "UpdateDate": 1499818054.108, "UpdateVersion": 5 } }, "VPCOptions": { "Options": { "AvailabilityZones": [ "us-west-1b" ], "SecurityGroupIds": [ "sg-12345678" ], "SubnetIds": [ "subnet-12345678" ], "VPCId": "vpc-12345678" }, "Status": { "CreationDate": 1499817484.04, "PendingDeletion": false, "State": "Active", "UpdateDate": 1499818054.108, "UpdateVersion": 5 } } } }

DescribeElasticsearchDomains

描述最多五个指定 Amazon ES 域的域配置。其中包括域 ID、域服务终端节点和域 ARN 等信息。

语法

POST /2015-01-01/es/domain-info { "DomainNames": [ "<DOMAIN_NAME>", "<DOMAIN_NAME>", ] }

请求参数

此操作不使用 HTTP 请求参数。

请求正文

字段 数据类型 必需? 描述
DomainNames DomainNameList Amazon ES 域的数组,采用以下格式:

{"DomainNames":["<Domain_Name>","<Domain_Name>"...]

响应元素

字段 数据类型 描述
DomainStatusList ElasticsearchDomainStatusList 包含每个请求的 Amazon ES 域状态的列表。

错误

DescribeElasticsearchDomains 操作可能返回以下错误:

示例

以下示例返回对 logsstreaming-logs 域的描述:

请求

POST es.<AWS_REGION>.amazonaws.com/2015-01-01/es/domain-info/ { "DomainNames": [ "logs", "streaming-logs" ] }

响应

HTTP/1.1 200 OK { "DomainStatusList": [ { "ElasticsearchClusterConfig": { "DedicatedMasterEnabled": true, "InstanceCount": 3, "ZoneAwarenessEnabled": false, "DedicatedMasterType": "m3.medium.elasticsearch", "InstanceType": "m3.medium.elasticsearch", "DedicatedMasterCount": 3 }, "ElasticsearchVersion": "5.5", "EncryptionAtRestOptions": { "Enabled": true, "KmsKeyId": "arn:aws:kms:us-west-1:123456789012:key/1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a" }, "Endpoint": "search-streaming-logs-okga24ftzsbz2a2hzhsqw73jpy.us-east-1.es.example.com", "Created": true, "Deleted": false, "DomainName": "streaming-logs", "EBSOptions": { "EBSEnabled": false }, "VPCOptions": { "SubnetIds": [ "subnet-d1234567" ], "VPCId": "vpc-12345678", "SecurityGroupIds": [ "sg-123456789" ], "AvailabilityZones": [ "us-east-1" ] }, "SnapshotOptions": { "AutomatedSnapshotStartHour": 0 }, "DomainId": "123456789012/streaming-logs", "AccessPolicies": "", "Processing": false, "AdvancedOptions": { "rest.action.multi.allow_explicit_index": "true", "indices.fielddata.cache.size": "" }, "ARN": "arn:aws:es:us-east-1:123456789012:domain/streaming-logs" }, { "ElasticsearchClusterConfig": { "DedicatedMasterEnabled": true, "InstanceCount": 1, "ZoneAwarenessEnabled": false, "DedicatedMasterType": "search.m3.medium", "InstanceType": "search.m3.xlarge", "DedicatedMasterCount": 3 }, "ElasticsearchVersion": "5.5", "EncryptionAtRestOptions": { "Enabled": true, "KmsKeyId": "arn:aws:kms:us-west-1:123456789012:key/1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a" }, "Endpoint": "search-logs-p5st2kbt77diuihoqi6omd7jiu.us-east-1.es.example.com", "Created": true, "Deleted": false, "DomainName": "logs", "EBSOptions": { "Iops": 4000, "VolumeSize": 512, "VolumeType": "io1", "EBSEnabled": true }, "VPCOptions": { "SubnetIds": [ "subnet-d1234567" ], "VPCId": "vpc-12345678", "SecurityGroupIds": [ "sg-123456789" ], "AvailabilityZones": [ "us-east-1" ] }, "SnapshotOptions": { "AutomatedSnapshotStartHour": 0 }, "DomainId": "123456789012/logs", "AccessPolicies": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"*\"},\"Action\":\"es:*\",\"Resource\":\"arn:aws:es:us-east-1:123456789012:domain/logs/*\"}]}", "Processing": false, "AdvancedOptions": { "rest.action.multi.allow_explicit_index": "true" }, "ARN": "arn:aws:es:us-east-1:123456789012:domain/logs" } ] }

DescribeElasticsearchInstanceTypeLimits

描述给定 Elasticsearch 版本和实例类型的实例计数、存储和主节点限制。

语法

GET 2015-01-01/es/instanceTypeLimits/{ElasticsearchVersion}/{InstanceType}?domainName={DomainName}

请求参数

参数 数据类型 必需? 描述
ElasticsearchVersion String Elasticsearch 版本。有关受支持的版本的列表,请参阅支持的 Elasticsearch 版本
InstanceType String 实例类型.要按区域查看实例类型,请参阅 Amazon Elasticsearch Service 定价
DomainName DomainName 现有域的名称。仅指定您是否需要针对现有域的限制。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
LimitsByRole Map Map 包含所有适用的实例类型限制。"data" 是指数据节点。"master" 是指专用主节点。

错误

DescribeElasticsearchInstanceTypeLimits 操作可能返回以下错误:

示例

以下示例返回对 logsstreaming-logs 域的描述:

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/es/instanceTypeLimits/6.0/m4.large.elasticsearch

响应

HTTP/1.1 200 OK { "LimitsByRole": { "data": { "AdditionalLimits": [ { "LimitName": "MaximumNumberOfDataNodesWithoutMasterNode", "LimitValues": [ "10" ] } ], "InstanceLimits": { "InstanceCountLimits": { "MaximumInstanceCount": 20, "MinimumInstanceCount": 1 } }, "StorageTypes": [ { "StorageSubTypeName": "standard", "StorageTypeLimits": [ { "LimitName": "MaximumVolumeSize", "LimitValues": [ "100" ] }, { "LimitName": "MinimumVolumeSize", "LimitValues": [ "10" ] } ], "StorageTypeName": "ebs" }, { "StorageSubTypeName": "io1", "StorageTypeLimits": [ { "LimitName": "MaximumVolumeSize", "LimitValues": [ "512" ] }, { "LimitName": "MinimumVolumeSize", "LimitValues": [ "35" ] }, { "LimitName": "MaximumIops", "LimitValues": [ "16000" ] }, { "LimitName": "MinimumIops", "LimitValues": [ "1000" ] } ], "StorageTypeName": "ebs" }, { "StorageSubTypeName": "gp2", "StorageTypeLimits": [ { "LimitName": "MaximumVolumeSize", "LimitValues": [ "512" ] }, { "LimitName": "MinimumVolumeSize", "LimitValues": [ "10" ] } ], "StorageTypeName": "ebs" } ] }, "master": { "AdditionalLimits": [ { "LimitName": "MaximumNumberOfDataNodesSupported", "LimitValues": [ "100" ] } ], "InstanceLimits": { "InstanceCountLimits": { "MaximumInstanceCount": 5, "MinimumInstanceCount": 2 } }, "StorageTypes": null } } }

DescribeReservedElasticsearchInstanceOfferings

描述指定区域的可用预留实例产品。

语法

GET /2015-01-01/es/reservedInstanceOfferings?offeringId={OfferingId}&maxResults={MaxResults}&nextToken={NextToken}

请求参数

参数 数据类型 必需? 描述
OfferingId String 产品 ID。
MaxResults Integer 限制结果数。必须介于 30 和 100 之间。
NextToken String 用于分页。仅当之前的 API 调用生成了包含 NextToken 的结果时需要。接受用于为下一个页面返回结果的 next-token 输入,并在响应中提供 next-token 输出,供客户端用于检索更多结果。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
ReservedElasticsearchInstanceOfferings ReservedElasticsearchInstanceOfferings 预留实例产品的所有信息的容器。要了解更多信息,请参阅“购买预留实例 (AWS CLI)”。

错误

DescribeReservedElasticsearchInstanceOfferings 操作可能返回以下错误:

示例

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/es/reservedInstanceOfferings

响应

{ "ReservedElasticsearchInstanceOfferings": [ { "FixedPrice": 100.0, "ReservedElasticsearchInstanceOfferingId": "1a2a3a4a5-1a2a-3a4a-5a6a-1a2a3a4a5a6a", "RecurringCharges": [ { "RecurringChargeAmount": 0.603, "RecurringChargeFrequency": "Hourly" } ], "UsagePrice": 0.0, "PaymentOption": "PARTIAL_UPFRONT", "Duration": 31536000, "ElasticsearchInstanceType": "m4.2xlarge.elasticsearch", "CurrencyCode": "USD" } ] }

DescribeReservedElasticsearchInstances

描述指定区域中的预留实例。

语法

GET 2015-01-01/es/reservedInstances?reservationId={ReservationId}&maxResults={PageSize}&nextToken={NextToken}

请求参数

参数 数据类型 必需? 描述
ReservationId String 购买预留后分配的预留 ID。
MaxResults Integer 限制结果数。必须介于 30 和 100 之间。
NextToken String 用于分页。仅当之前的 API 调用生成了包含 NextToken 的结果时需要。接受用于为下一个页面返回结果的 next-token 输入,并在响应中提供 next-token 输出,供客户端用于检索更多结果。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
ReservedElasticsearchInstances

ReservedElasticsearchInstances

预留实例的所有信息的容器。要了解更多信息,请参阅“购买预留实例 (AWS CLI)”。

错误

DescribeReservedElasticsearchInstances 操作可能返回以下错误:

示例

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/es/reservedInstances

响应

{ "ReservedElasticsearchInstances": [ { "FixedPrice": 100.0, "ReservedElasticsearchInstanceOfferingId": "1a2a3a4a5-1a2a-3a4a-5a6a-1a2a3a4a5a6a", "ReservationName": "my-reservation", "PaymentOption": "PARTIAL_UPFRONT", "UsagePrice": 0.0, "ReservedElasticsearchInstanceId": "9a8a7a6a-5a4a-3a2a-1a0a-9a8a7a6a5a4a", "RecurringCharges": [ { "RecurringChargeAmount": 0.603, "RecurringChargeFrequency": "Hourly" } ], "State": "payment-pending", "StartTime": 1522872571.229, "ElasticsearchInstanceCount": 3, "Duration": 31536000, "ElasticsearchInstanceType": "m4.2xlarge.elasticsearch", "CurrencyCode": "USD" } ] }

GetCompatibleElasticsearchVersions

返回 Elasticsearch 版本和您可以将其升级到的版本的映射图。

语法

GET /2015-01-01/es/compatibleVersions?domainName={DomainName}

请求参数

参数 数据类型 必需? 描述
DomainName DomainName 现有域的名称。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
ElasticsearchVersions Map Elasticsearch 版本和您可以将其升级到的版本的映射图。

错误

GetCompatibleElasticsearchVersions 操作可能返回以下错误:

示例

以下示例列出了当前用户拥有的所有三个域:

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/es/compatibleVersions

响应

{ "CompatibleElasticsearchVersions": [ { "SourceVersion": "6.0", "TargetVersions": [ "6.3" ] }, { "SourceVersion": "5.1", "TargetVersions": [ "5.6" ] }, { "SourceVersion": "6.2", "TargetVersions": [ "6.3" ] }, { "SourceVersion": "5.3", "TargetVersions": [ "5.6" ] }, { "SourceVersion": "5.5", "TargetVersions": [ "5.6" ] }, { "SourceVersion": "5.6", "TargetVersions": [ "6.3" ] } ] }

GetUpgradeHistory

返回域的 10 个最近的升级操作的列表。

语法

GET /2015-01-01/es/upgradeDomain/{DomainName}/history?maxResults={MaxResults}&amp;nextToken={NextToken}

请求参数

参数 数据类型 必需? 描述
MaxResults Integer 限制结果数。必须介于 30 和 100 之间。
NextToken String 用于分页。仅当之前的 API 调用生成了包含 NextToken 的结果时需要。接受用于为下一个页面返回结果的 next-token 输入,并在响应中提供 next-token 输出,供客户端用于检索更多结果。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
UpgradeHistoryList UpgradeHistoryList 过去的 10 个升级操作的结果日志的容器。

错误

GetCompatibleElasticsearchVersions 操作可能返回以下错误:

示例

以下示例列出了给定域的升级历史记录:

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/es/upgradeDomain/my-domain/history

响应

{ "NextToken": null, "UpgradeHistories": [ { "StartTimestamp": 1532466876, "StepsList": [ { "Issues": [ "Upgrade automated snapshot 00010e1cbc.2018-07-24t21-14-40 in state FAILED could not be completed successfully" ], "ProgressPercent": null, "UpgradeStep": "SNAPSHOT", "UpgradeStepStatus": "FAILED" }, { "Issues": null, "ProgressPercent": null, "UpgradeStep": "PRE_UPGRADE_CHECK", "UpgradeStepStatus": "SUCCEEDED" } ], "UpgradeName": "Upgrade from 5.6 to 6.3", "UpgradeStatus": "FAILED" }, { "StartTimestamp": 1532388708, "StepsList": [ { "Issues": null, "ProgressPercent": null, "UpgradeStep": "PRE_UPGRADE_CHECK", "UpgradeStepStatus": "SUCCEEDED" } ], "UpgradeName": "Pre-Upgrade Check from 5.6 to 6.3", "UpgradeStatus": "SUCCEEDED" }, { "StartTimestamp": 1532378327, "StepsList": [ { "Issues": null, "ProgressPercent": null, "UpgradeStep": "UPGRADE", "UpgradeStepStatus": "SUCCEEDED" }, { "Issues": null, "ProgressPercent": null, "UpgradeStep": "SNAPSHOT", "UpgradeStepStatus": "SUCCEEDED" }, { "Issues": null, "ProgressPercent": null, "UpgradeStep": "PRE_UPGRADE_CHECK", "UpgradeStepStatus": "SUCCEEDED" } ], "UpgradeName": "Upgrade from 5.3 to 5.6", "UpgradeStatus": "SUCCEEDED" } ] }

GetUpgradeStatus

返回域的 Elasticsearch 版本升级的最新状态。

语法

GET /2015-01-01/es/upgradeDomain/{DomainName}/status

请求参数

参数 数据类型 必需? 描述
DomainName DomainName 现有域的名称。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
UpgradeStepItem UpgradeStepItem 域的版本升级的最新状态的容器。

错误

GetCompatibleElasticsearchVersions 操作可能返回以下错误:

示例

以下示例列出了给定域的升级状态:

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/es/upgradeDomain/my-domain/status

响应

{ "StepStatus": "FAILED", "UpgradeName": "Upgrade from 5.6 to 6.3", "UpgradeStep": "SNAPSHOT" }

ListDomainNames

显示当前用户在活动区域中 拥有的所有 Amazon ES 域的名称。

语法

GET /2015-01-01/domain

请求参数

此操作不使用请求参数。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
DomainNameList DomainNameList 当前用户拥有的所有 Amazon ES 域的名称。

错误

ListDomainNames 操作可能返回以下错误:

示例

以下示例列出了当前用户拥有的所有三个域:

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/domain

响应

{ "DomainNames": [ { "DomainName": "logs" }, { "DomainName": "streaming-logs" } ] }

ListElasticsearchInstanceTypeDetails

列出给定 Elasticsearch 版本支持的所有 Elasticsearch 实例类型以及这些实例类型支持的功能。

语法

GET 2015-01-01/es/instanceTypeDetails/{ElasticsearchVersion}?domainName={DomainName}&maxResults={MaxResults}&nextToken={NextToken}

请求参数

参数 数据类型 必需? 描述
ElasticsearchVersion String Elasticsearch 版本。
DomainName String Amazon ES 域名称。
MaxResults Integer 限制结果数。必须介于 30 和 100 之间。
NextToken String 用于分页。仅当之前的 API 调用生成了包含 NextToken 的结果时需要。接受用于为下一个页面返回结果的 next-token 输入,并在响应中提供 next-token 输出,供客户端用于检索更多结果。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
ElasticsearchInstanceTypes List 列出给定 Elasticsearch 版本的受支持实例类型和这些实例类型支持的功能。
NextToken String

用于分页。仅当之前的 API 调用生成了包含 NextToken 的结果时需要。接受用于为下一个页面返回结果的 next-token 输入,并在响应中提供 next-token 输出,供客户端用于检索更多结果。

错误

ListElasticsearchInstanceTypeDetails 可能返回以下错误:

示例

请求

GET es.us-west-1.amazonaws.com/2015-01-01/es/instanceTypeDetails/6.2

响应

{ "ElasticsearchInstanceTypeDetails": [ { "AppLogsEnabled": true, "CognitoEnabled": true, "EncryptionEnabled": false, "InstanceType": "t2.small.elasticsearch" }, { "AppLogsEnabled": true, "CognitoEnabled": true, "EncryptionEnabled": false, "InstanceType": "t2.medium.elasticsearch" }, { "AppLogsEnabled": true, "CognitoEnabled": true, "EncryptionEnabled": true, "InstanceType": "c4.large.elasticsearch" }, { "AppLogsEnabled": true, "CognitoEnabled": true, "EncryptionEnabled": true, "InstanceType": "c4.xlarge.elasticsearch" }, ... ], "NextToken": null }

ListElasticsearchInstanceTypes(已弃用)

列出给定 Elasticsearch 版本支持的所有 Elasticsearch 实例类型。此操作已弃用。改用 ListElasticsearchInstanceTypeDetails

语法

GET 2015-01-01/es/instanceTypes/{ElasticsearchVersion}?domainName={DomainName}&maxResults={MaxResults}&nextToken={NextToken}

请求参数

参数 数据类型 必需? 描述
ElasticsearchVersion String Elasticsearch 版本。
DomainName String Amazon ES 域名称。
MaxResults Integer 限制结果数。必须介于 30 和 100 之间。
NextToken String 用于分页。仅当之前的 API 调用生成了包含 NextToken 的结果时需要。接受用于为下一个页面返回结果的 next-token 输入,并在响应中提供 next-token 输出,供客户端用于检索更多结果。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
ElasticsearchInstanceTypes List 给定 Elasticsearch 版本支持的实例类型的列表。
NextToken String

用于分页。仅当之前的 API 调用生成了包含 NextToken 的结果时需要。接受用于为下一个页面返回结果的 next-token 输入,并在响应中提供 next-token 输出,供客户端用于检索更多结果。

错误

ListElasticsearchInstanceTypes 可能返回以下错误:

示例

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/es/instanceTypes/6.0

响应

{ "ElasticsearchInstanceTypes": [ "t2.small.elasticsearch", "t2.medium.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch" ], "NextToken": null }

ListElasticsearchVersions

列出 Amazon ES 上所有受支持的 Elasticsearch 版本。

语法

GET 2015-01-01/es/versions?maxResults={MaxResults}&nextToken={NextToken}

请求参数

参数 数据类型 必需? 描述
MaxResults Integer 限制结果数。必须介于 30 和 100 之间。
NextToken String 用于分页。仅当之前的 API 调用生成了包含 NextToken 的结果时需要。接受用于为下一个页面返回结果的 next-token 输入,并在响应中提供 next-token 输出,供客户端用于检索更多结果。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
ElasticsearchVersions List 列出所有受支持的 Elasticsearch 版本。
NextToken String

用于分页。仅当之前的 API 调用生成了包含 NextToken 的结果时需要。接受用于为下一个页面返回结果的 next-token 输入,并在响应中提供 next-token 输出,供客户端用于检索更多结果。

错误

ListElasticsearchVersions 可能返回以下错误:

示例

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/es/versions

响应

{ "ElasticsearchVersions": [ "6.0", "5.5", "5.3", "5.1", "2.3", "1.5" ], "NextToken": null }

ListTags

显示一个 Amazon ES 域的所有资源标签。

语法

GET /2015-01-01/tags?arn=<DOMAIN_ARN>

请求参数

参数 数据类型 必需? 描述
ARN ARN Amazon ES 域的 Amazon 资源名称 (ARN)。

请求正文

此操作不使用 HTTP 请求正文。

响应元素

字段 数据类型 描述
TagList TagList 资源标签列表。有关更多信息,请参阅标记 Amazon Elasticsearch Service 域

错误

ListTags 操作可能返回以下错误:

示例

以下示例列出了附加到 logs 域的标签:

请求

GET es.<AWS_REGION>.amazonaws.com/2015-01-01/tags?arn=arn:aws:es:us-west-1:123456789012:domain/logs

响应

HTTP/1.1 200 OK { "TagList": [ { "Key": "Environment", "Value": "MacOS" }, { "Key": "project", "Value": "trident" } ] }

PurchaseReservedElasticsearchInstance

购买预留实例。

语法

POST /2015-01-01/es/purchaseReservedInstanceOffering

请求参数

此操作不使用 HTTP 请求参数。

请求正文

名称 数据类型 必需? 描述
ReservationName String 预留的描述性名称。
ReservedElasticsearchInstanceOfferingId String 产品 ID。
InstanceCount Integer 要预留的实例的数量。

响应元素

字段 数据类型 描述
ReservationName String 预留的名称。
ReservedElasticsearchInstanceId String 预留 ID。

错误

PurchaseReservedElasticsearchInstance 操作可能返回以下错误:

示例

请求

POST es.<AWS_REGION>.amazonaws.com/2015-01-01/es/purchaseReservedInstanceOffering { "ReservationName" : "my-reservation", "ReservedElasticsearchInstanceOfferingId" : "1a2a3a4a5-1a2a-3a4a-5a6a-1a2a3a4a5a6a", "InstanceCount" : 3 }

响应

{ "ReservationName": "my-reservation", "ReservedElasticsearchInstanceId": "9a8a7a6a-5a4a-3a2a-1a0a-9a8a7a6a5a4a" }

RemoveTags

从 Amazon ES 域中移除指定的资源标签。

语法

POST es.<AWS_REGION>.amazonaws.com/2015-01-01/tags-removal { "ARN": "<DOMAIN_ARN>", "TagKeys": [ "<TAG_KEY>", "<TAG_KEY>", ... ] }

请求参数

此操作不使用 HTTP 请求参数。

请求正文

参数 数据类型 必需? 描述
ARN ARN Amazon ES 域的 Amazon 资源名称 (ARN)。有关更多信息,请参阅使用 AWS Identity and Access Management 中的 IAM 实体的标识符
TagKeys TagKey 您想从 Amazon ES 域移除的资源标签的标签键列表。

响应元素

不适用。RemoveTags 操作不返回响应元素。

错误

RemoveTags 操作可能返回以下错误:

示例

以下示例从 Amazon ES 域中删除标签键为 project 的资源标签:

请求

POST /2015-01-01/tags-removal { "ARN": "<DOMAIN_ARN>", "TagKeys": [ "project" ] }

此操作不返回响应元素。

StartElasticsearchServiceSoftwareUpdate

为 Amazon ES 域计划服务软件更新。

语法

POST es.<AWS_REGION>.amazonaws.com/2015-01-01/es/serviceSoftwareUpdate/start { "DomainName": "<DOMAIN_NAME>" }

请求参数

此操作不使用 HTTP 请求参数。

请求正文

参数 数据类型 必需? 描述
DomainName DomainName 要更新到最新服务软件的 Amazon ES 域的名称。

响应元素

字段 数据类型 描述
ServiceSoftwareOptions ServiceSoftwareOptions 与最新服务软件相关的域的状态容器。

错误

RemoveTags 操作可能返回以下错误:

示例

以下示例为 my-domain 计划服务软件更新:

请求

POST es.us-west-1.amazonaws.com/2015-01-01/es/serviceSoftwareUpdate/start { "DomainName": "my-domain" }

响应

{ "ServiceSoftwareOptions": { "AutomatedUpdateDate": 1530185603, "Cancellable": true, "CurrentVersion": "LEGACY", "Description": "An update to release R1234567 has been requested and is pending. Before the update starts, you can cancel it any time", "NewVersion": "R1234567", "UpdateAvailable": false, "UpdateStatus": "PENDING_UPDATE" } }

StopElasticsearchServiceSoftwareUpdate

为 Amazon ES 域停止计划的服务软件更新。仅在域的 UpdateStatusPENDING_UPDATE 时起作用。

语法

POST es.<AWS_REGION>.amazonaws.com/2015-01-01/es/serviceSoftwareUpdate/stop { "DomainName": "<DOMAIN_NAME>" }

请求参数

此操作不使用 HTTP 请求参数。

请求正文

参数 数据类型 必需? 描述
DomainName DomainName 要更新到最新服务软件的 Amazon ES 域的名称。

响应元素

字段 数据类型 描述
ServiceSoftwareOptions ServiceSoftwareOptions 与最新服务软件相关的域的状态容器。

错误

RemoveTags 操作可能返回以下错误:

示例

以下示例为 my-domain 停止计划的服务软件更新:

请求

POST es.us-west-1.amazonaws.com/2015-01-01/es/serviceSoftwareUpdate/stop { "DomainName": "my-domain" }

响应

{ "ServiceSoftwareOptions": { "AutomatedUpdateDate": 1530185603, "Cancellable": false, "CurrentVersion": "LEGACY", "Description": "A new software release R1234567 is available. This release will be automatically deployed if no action is taken.", "NewVersion": "R1234567", "UpdateAvailable": true, "UpdateStatus": "ELIGIBLE" } }

UpdateElasticsearchDomainConfig

修改 Amazon ES 域的配置,例如实例类型和实例数量。您只需指定要更新的值。

语法

POST /2015-01-01/es/domain/<DOMAIN_NAME>/config { "ElasticsearchClusterConfig": { "InstanceType": "<INSTANCE_TYPE>", "Instance_Count": <INSTANCE_COUNT>, "DedicatedMasterEnabled": "<TRUE|FALSE>", "DedicatedMasterCount": <INSTANCE_COUNT>, "DedicatedMasterType": "<INSTANCE_COUNT>", "ZoneAwarenessEnabled": "<TRUE|FALSE>" }, "EBSOptions": { "EBSEnabled": "<TRUE|FALSE>", "VolumeType": "<VOLUME_TYPE>", "VolumeSize": "<VOLUME_SIZE>", "Iops": "<VALUE>" }, "VPCOptions": { "SubnetIds": [ "<SUBNET_ID>" ], "SecurityGroupIds": [ "<SECURITY_GROUP_ID>" ] }, "AccessPolicies": "<ACCESS_POLICY_DOCUMENT>", "SnapshotOptions": { "AutomatedSnapshotStartHour": <START_HOUR>, "AdvancedOptions": { "rest.action.multi.allow_explicit_index": "<TRUE|FALSE>", "indices.fielddata.cache.size": "<PERCENTAGE_OF_HEAP>" } }, "LogPublishingOptions": { "SEARCH_SLOW_LOGS": { "CloudWatchLogsLogGroupArn":"<ARN>", "Enabled":true }, "INDEX_SLOW_LOGS": { "CloudWatchLogsLogGroupArn":"<ARN>", "Enabled":true } } }

请求参数

此操作不使用 HTTP 请求参数。

请求正文

参数 数据类型 必需? 描述
DomainName DomainName 您要更新配置的 Amazon ES 域的名称。
ElasticsearchClusterConfig ElasticsearchClusterConfig 您想要对集群配置进行的更改,例如实例类型和 EC2 实例计数。
EBSOptions EBSOptions 附加到数据节点的 EBS 卷的类型和大小。
VPCOptions VPCOptions 配置 Amazon ES 以便与 VPC 配合使用所需的值的容器。要了解更多信息,请参阅“Amazon Elasticsearch Service 域的 VPC 支持”。
SnapshotOptions SnapshotOptions 已弃用。服务为 Amazon ES 域中的索引创建每日自动快照的时间。
AdvancedOptions AdvancedOptions 用于指定高级配置选项的键值对。有关更多信息,请参阅配置高级选项
AccessPolicies String 指定 Amazon ES 域的访问策略。有关更多信息,请参阅配置访问策略
LogPublishingOptions LogPublishingOptions 键/值字符串配对以配置慢速日志发布。
CognitoOptions CognitoOptions 键-值对,用来配置 Amazon ES 以使用用于 Kibana 的 Amazon Cognito 身份验证。

响应元素

字段 数据类型 描述
DomainConfig String 更新配置后 Amazon ES 域的状态。

错误

UpdateElasticsearchDomainConfig 可能返回以下错误:

示例

以下示例重新配置 streaming-logs 域以使用 c5.xlarge.elasticsearch 实例:

请求

POST es.us-west-1.amazonaws.com/2015-01-01/es/domain/streaming-logs/config { "ElasticsearchClusterConfig": { "InstanceType": "c5.xlarge.elasticsearch" } }

响应

{ "DomainConfig": { "AccessPolicies": { "Options": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"*\"},\"Action\":\"es:*\",\"Resource\":\"arn:aws:es:us-west-1:123456789012:domain/streaming-logs/*\",\"Condition\":{\"IpAddress\":{\"aws:SourceIp\":[\"11.222.333.11\",\"11.222.333.12\",\"11.222.333.13\",\"11.222.333.14\",\"11.222.333.15\"]}}}]}", "Status": { "CreationDate": 1537308535.899, "PendingDeletion": false, "State": "Active", "UpdateDate": 1554745087.482, "UpdateVersion": 121 } }, "AdvancedOptions": { "Options": { "rest.action.multi.allow_explicit_index": "true" }, "Status": { "CreationDate": 1537308535.899, "PendingDeletion": false, "State": "Active", "UpdateDate": 1537309172.772, "UpdateVersion": 6 } }, "EBSOptions": { "Options": { "EBSEnabled": true, "Iops": null, "VolumeSize": 10, "VolumeType": "gp2" }, "Status": { "CreationDate": 1537308535.899, "PendingDeletion": false, "State": "Active", "UpdateDate": 1537309172.772, "UpdateVersion": 6 } }, "ElasticsearchClusterConfig": { "Options": { "DedicatedMasterCount": 3, "DedicatedMasterEnabled": true, "DedicatedMasterType": "c5.large.elasticsearch", "InstanceCount": 3, "InstanceType": "c5.xlarge.elasticsearch", "ZoneAwarenessConfig": { "AvailabilityZoneCount": 3 }, "ZoneAwarenessEnabled": true }, "Status": { "CreationDate": 1537308535.899, "PendingDeletion": false, "State": "Processing", "UpdateDate": 1562008396.658, "UpdateVersion": 148 } }, "ElasticsearchVersion": { "Options": "6.7", "Status": { "CreationDate": 1537308535.899, "PendingDeletion": false, "State": "Active", "UpdateDate": 1559159251.094, "UpdateVersion": 141 } }, "EncryptionAtRestOptions": { "Options": { "Enabled": true, "KmsKeyId": "arn:aws:kms:us-west-1:123456789012:key/1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a" }, "Status": { "CreationDate": 1537308535.899, "PendingDeletion": false, "State": "Active", "UpdateDate": 1537309172.772, "UpdateVersion": 6 } }, "NodeToNodeEncryptionOptions": { "Options": { "Enabled": true }, "Status": { "CreationDate": 1537308535.899, "PendingDeletion": false, "State": "Active", "UpdateDate": 1537309172.772, "UpdateVersion": 6 } }, "VPCOptions": { "Options": { "AvailabilityZones": null, "SecurityGroupIds": null, "SubnetIds": null, "VPCId": null }, "Status": { "CreationDate": 1562008396.78, "PendingDeletion": false, "State": "Active", "UpdateDate": 1562008396.78, "UpdateVersion": 148 } } } }

UpgradeElasticsearchDomain

将 Amazon ES 域升级到新版本的 Elasticsearch。或者,也可以检查升级资格。

语法

POST /2015-01-01/es/upgradeDomain { "DomainName": "String", "TargetVersion": "String", "PerformCheckOnly": true|false }

请求参数

此操作不使用 HTTP 请求参数。

请求正文

参数 数据类型 必需? 描述
DomainName String 您要升级的 Amazon ES 域的名称。
TargetVersion String 要升级到的 Elasticsearch 版本。请参阅 GetCompatibleElasticsearchVersions
PerformCheckOnly Boolean 默认值为 false。如果为 true,则 Amazon ES 会检查域的资格,但不执行升级。

响应元素

字段 数据类型 描述
UpgradeElasticsearchDomainResponse Map 确认操作详细信息的基本响应。

错误

UpdateElasticsearchDomainConfig 可能返回以下错误:

示例

以下示例将一个 Amazon ES 5.x 域升级到 Elasticsearch 5.6:

请求

POST es.<AWS_REGION>.amazonaws.com/2015-01-01/es/upgradeDomain/ { "DomainName": "my-domain", "TargetVersion": "5.6", "PerformCheckOnly": false }

响应

{ "DomainName": null, "PerformCheckOnly": null, "TargetVersion": null, "UpgradeId": null }

数据类型

本部分描述了 REST 配置 API 使用的数据类型。

AdvancedOptions

指定高级 Elasticsearch 配置选项的键-值字符串对。

字段 数据类型 描述
rest.action.multi.allow_explicit_index 键值对:

rest.action.multi.allow_explicit_index=<true|false>

指定是否允许在 HTTP 请求正文中显式引用索引。如果您要为域子资源 (例如特定的索引和域 API) 配置访问策略,则必须禁用此属性。有关更多信息,请参阅基于 URL 的访问控制。有关子资源访问策略的更多信息,请参阅配置访问策略
indices.fielddata.cache.size 键值对:

indices.fielddata.cache.size=<percentage_of_heap>

指定分配到字段数据的 Java 堆空间的百分比。默认情况下,此设置是无界的。
indices.query.bool.max_clause_count 键值对:

indices.query.bool.max_clause_count=<int>

指定 Lucene 布尔查询中允许的子句的最大数量。默认值为 1024。如果查询具有的子句数超过了允许的子句数,则会导致 TooManyClauses 错误。要了解更多信息,请参阅 Lucene 文档

AdvancedOptionsStatus

Amazon ES 域高级配置选项的更新状态。

字段 数据类型 描述
选项 AdvancedOptions 用于指定高级 Elasticsearch 配置选项的键值对。
Status OptionStatus Amazon ES 域高级配置选项的更新状态。

ARN

字段 数据类型 描述
ARN String Amazon ES 域的 Amazon 资源名称 (ARN)。有关更多信息,请参阅 AWS Identity and Access Management 文档中的 IAM ARN

CognitoOptions

字段 数据类型 描述
Enabled Boolean 对 Kibana 启用还是禁用 Amazon Cognito 身份验证。请参阅 用于 Kibana 的 Amazon Cognito 身份验证
UserPoolId String 您希望 Amazon ES 用于 Kibana 身份验证的 Amazon Cognito 用户池 ID。
IdentityPoolId String 您希望 Amazon ES 用于 Kibana 身份验证的 Amazon Cognito 身份池 ID。
RoleArn String 允许 Amazon ES 配置您的用户池和身份池的 AmazonESCognitoAccess 角色。

CognitoOptionsStatus

字段 数据类型 描述
Options CognitoOptions 键-值对,用来配置 Amazon ES 以使用用于 Kibana 的 Amazon Cognito 身份验证。
Status OptionStatus Amazon ES 域的 Amazon Cognito 配置选项的更新状态。

CreateElasticsearchDomainRequest

CreateElasticsearchDomain 服务操作所需的参数的容器。

字段 数据类型 描述
DomainName DomainName 要创建的 Amazon ES 域的名称。
ElasticsearchClusterConfig ElasticsearchClusterConfig Amazon ES 域的群集配置的容器。
EBSOptions EBSOptions 为 Amazon ES 域启用基于 EBS 的存储所需的参数的容器。有关更多信息,请参阅配置基于 EBS 的存储
AccessPolicies String 为新的 Amazon ES 域指定访问策略的 IAM 策略文档。有关更多信息,请参阅配置访问策略
SnapshotOptions SnapshotOptions 已弃用。配置域索引自动快照所需的参数的容器。
VPCOptions VPCOptions 配置 Amazon ES 以便与 VPC 配合使用所需的值的容器。
LogPublishingOptions LogPublishingOptions 键/值字符串配对以配置慢速日志发布。
AdvancedOptions AdvancedOptionsStatus 用于指定高级配置选项的键值对。
CognitoOptions CognitoOptions 键-值对,用来配置 Amazon ES 以使用用于 Kibana 的 Amazon Cognito 身份验证。
NodeToNodeEncryptionOptions NodeToNodeEncryptionOptions 指定 true 以启用节点到节点加密。

DomainID

数据类型 描述
String Amazon ES 域的唯一标识符

DomainName

Amazon ES 域的名称。

数据类型 描述
String Amazon ES 域的名称。域名在一个 AWS 区域内相同账户拥有的所有域中是唯一的。域名必须以小写字母开头,且必须包含 3 到 28 个字符。有效的字符包括 a-z (仅小写字母)、0-9 和 – (连字符)。

DomainNameList

Amazon ES 域名的字符串。

数据类型 描述
字符串数组 Amazon ES 域的数组,采用以下格式:

["<Domain_Name>","<Domain_Name>"...]

EBSOptions

为 Amazon ES 域启用基于 EBS 的存储所需的参数的容器。有关更多信息,请参阅配置基于 EBS 的存储

字段 数据类型 描述
EBSEnabled Boolean 指定 EBS 卷是否附加到 Amazon ES 域中的数据节点。
VolumeType String 指定附加到数据节点的 EBS 卷的类型。
VolumeSize String 指定附加到数据节点的 EBS 卷的大小(以 GiB 为单位)。
Iops String 指定附加到数据节点的 EBS 卷的基准输入/输出 (I/O) 性能。仅适用于预配置 IOPS EBS 卷类型。

ElasticsearchClusterConfig

Amazon ES 域的群集配置的容器。

字段 数据类型 描述
InstanceType String 群集中的数据节点的实例类型。
InstanceCount Integer 群集中的实例数量。
DedicatedMasterEnabled Boolean 指示是否已为集群启用专用主节点。如果集群将使用专用主节点,则为 True,否则为 False。有关更多信息,请参阅关于专用主节点
DedicatedMasterType String 群集中的专用主节点的 Amazon ES 实例类型。
DedicatedMasterCount Integer 群集中专用主节点的数量。
ZoneAwarenessEnabled Boolean 指示是否已启用多个可用区。有关更多信息,请参阅 配置多 AZ 域
ZoneAwarenessConfig ZoneAwarenessConfig 区域感知配置选项的容器。仅当 ZoneAwarenessEnabledtrue 时必需。

ElasticsearchDomainConfig

Amazon ES 域配置的容器。

字段 数据类型 描述
ElasticsearchVersion String Elasticsearch 版本。
ElasticsearchClusterConfig ElasticsearchClusterConfig Amazon ES 域的群集配置的容器。
EBSOptions EBSOptions 为 Amazon ES 域配置的 EBS 选项的容器。
AccessPolicies String 指定 Amazon ES 域的访问策略。有关更多信息,请参阅配置访问策略
SnapshotOptions SnapshotOptions 已弃用。服务为 Amazon ES 域中的索引创建每日自动快照的时间。
VPCOptions VPCDerivedInfo 域的当前 VPCOptions 以及其配置的任何更新状态。
LogPublishingOptions LogPublishingOptions 用于配置慢速日志发布的键值对。
AdvancedOptions AdvancedOptions 用于指定高级配置选项的键值对。
EncryptionAtRestOptions EncryptionAtRestOptions 用于至少启用加密的键值对。
NodeToNodeEncryptionOptions NodeToNodeEncryptionOptions 启用还是禁用节点到节点加密。

ElasticsearchDomainStatus

DomainStatus 数据结构中的内容的容器。

字段 数据类型 描述
DomainID DomainID Amazon ES 域的唯一标识符。
DomainName DomainName Amazon ES 域的名称。域名在一个 AWS 区域内相同账户拥有的所有域中是唯一的。域名必须以小写字母开头,且必须包含 3 到 28 个字符。有效的字符包括 a-z (仅小写字母)、0-9 和 – (连字符)。
ARN ARN Amazon ES 域的 Amazon 资源名称 (ARN)。有关更多信息,请参阅使用 AWS Identity and Access Management 中的 IAM 实体的标识符
Created Boolean Amazon ES 域创建的状态。如果域创建已完成,则为 True。如果域创建仍在进行中,则为 False
Deleted Boolean Amazon ES 域删除的状态。如果域删除已完成,则为 True。如果域删除仍在进行中,则为 False
Endpoint ServiceUrl 用于向 Amazon ES 域提交索引、搜索和数据上传请求的特定于域的终端节点。
Endpoints EndpointsMap 当 Amazon ES 域使用 VPC 终端节点时存在的键值对。
Processing Boolean Amazon ES 域配置更改的状态。如果服务仍在处理配置更改,则为 True。如果配置更改处于活动状态,则为 False。您必须等待域达到活动状态才能提交索引、搜索和数据上传请求。
ElasticsearchVersion String Elasticsearch 版本。
ElasticsearchClusterConfig ElasticsearchClusterConfig Amazon ES 域的群集配置的容器。
EBSOptions EBSOptions 为 Amazon ES 域启用基于 EBS 的存储所需的参数的容器。有关更多信息,请参阅配置基于 EBS 的存储
AccessPolicies String 为新的 Amazon ES 域指定访问策略的 IAM 策略文档。有关更多信息,请参阅配置访问策略
SnapshotOptions SnapshotOptions 已弃用。配置创建 Amazon ES 域索引的每日自动快照时间所需的参数的容器。
VPCOptions VPCDerivedInfo Amazon ES 基于域的 VPCOptions 派生的信息。
LogPublishingOptions LogPublishingOptions 用于配置慢速日志发布的键值对。
AdvancedOptions AdvancedOptions 用于指定高级配置选项的键值对。
EncryptionAtRestOptions EncryptionAtRestOptions 用于至少启用加密的键值对。
CognitoOptions CognitoOptions 键-值对,用来配置 Amazon ES 以使用用于 Kibana 的 Amazon Cognito 身份验证。
NodeToNodeEncryptionOptions NodeToNodeEncryptionOptions 启用还是禁用节点到节点加密。

ElasticsearchDomainStatusList

包含每个指定的 Amazon ES 域状态的列表。

字段 数据类型 描述
DomainStatusList ElasticsearchDomainStatus 包含每个指定的 Amazon ES 域状态的列表。

EncryptionAtRestOptions

指定域是否应加密静态数据,如果应加密,则使用 AWS Key Management Service (KMS) 密钥。只能用于创建新域,而不能用于更新现有域。

字段 数据类型 描述
Enabled Boolean 指定 true 以启用静态加密。
KmsKeyId String KMS 密钥 ID。采用形式 1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a

EncryptionAtRestOptionsStatus

域的静态加密选项的状态。

字段 数据类型 描述
Options EncryptionAtRestOptions 域的静态加密选项。
Status OptionStatus 域的静态加密选项的状态。

EndpointsMap

包含 VPC 终端节点的键–值对。仅当 Amazon ES 域位于 VPC 中时才存在。

字段 数据类型 描述
Endpoints 键-值字符串对:"vpc": "<VPC_ENDPOINT>" 域的 VPC 终端节点。

LogPublishingOptions

指定 Amazon ES 域是否将 Elasticsearch 应用程序和慢速日志发布到 Amazon CloudWatch。您仍然必须使用 Elasticsearch REST API 来启用慢速日志收集。要了解更多信息,请参阅“为慢速日志设置 Elasticsearch 日志记录阈值”。

字段 数据类型 描述
INDEX_SLOW_LOGS 键/值

两个键-值对,用于定义 CloudWatch 日志组,以及 Elasticsearch 索引慢速日志是否应该发布到该处:

"CloudWatchLogsLogGroupArn":"arn:aws:logs:us-east-1:264071961897:log-group:sample-domain", "Enabled":true
SEARCH_SLOW_LOGS 键/值

两个键-值对,用于定义 CloudWatch 日志组,以及 Elasticsearch 搜索慢速日志是否应该发布到该处:

"CloudWatchLogsLogGroupArn":"arn:aws:logs:us-east-1:264071961897:log-group:sample-domain", "Enabled":true
ES_APPLICATION_LOGS 键/值 两个键-值对,用于定义 CloudWatch 日志组,以及 Elasticsearch 错误日志是否应该发布到该处:
"CloudWatchLogsLogGroupArn":"arn:aws:logs:us-east-1:264071961897:log-group:sample-domain", "Enabled":true

LogPublishingOptionsStatus

Amazon ES 域的慢速日志发布选项配置的更新状态。

字段 数据类型 描述
Options LogPublishingOptions 域的日志发布选项
Status OptionStatus Amazon ES 域的日志发布选项更新的状态

NodeToNodeEncryptionOptions

启用或禁用节点到节点加密。

字段 数据类型 描述
Enabled Boolean 启用,结果为 true

NodeToNodeEncryptionOptionsStatus

域的节点到节点加密选项的状态。

字段 数据类型 描述
Options NodeToNodeEncryptionOptions 启用还是禁用节点到节点加密。
Status OptionStatus 设置的状态。

OptionState

Amazon ES 域高级选项的更新状态。

字段 数据类型 描述
OptionStatus String 三个有效值之一:
  • RequiresIndexDocuments

  • 处理

  • 处于活动状态

OptionStatus

Amazon ES 域配置选项的更新状态。

字段 数据类型 描述
CreationDate Timestamp 创建 Amazon ES 域的日期和时间
UpdateDate Timestamp 更新 Amazon ES 域的日期和时间
UpdateVersion Integer 用于指定实体的最新版本的整数
State OptionState Amazon ES 域配置选项的更新状态
PendingDeletion Boolean 指示服务是否正在处理永久删除 Amazon ES 域及其所有资源的请求

ServiceSoftwareOptions

与最新服务软件相关的域的状态容器。

字段 数据类型 描述
UpdateAvailable Boolean 服务软件更新是否可用于您的域。
Cancellable Boolean 如果您请求了域更新,您是否可以取消该更新。
AutomatedUpdateDate Timestamp 部署窗口关闭的纪元时间。在此时间之后,Amazon ES 将自动计划软件升级。
UpdateStatus String 更新的状态。值为 ELIGIBLEPENDING_UPDATEIN_PROGRESSCOMPLETEDNOT_ELIGIBLE
Description String 状态的更详细描述。
CurrentVersion String 您的当前服务软件版本。
NewVersion String 最新服务软件版本。

ServiceURL

用于向 Amazon ES 域提交索引、搜索和数据上传请求的特定于域的终端节点。

字段 数据类型 描述
ServiceURL String 用于向 Amazon ES 域提交索引、搜索和数据上传请求的特定于域的终端节点

SnapshotOptions

已弃用。请参阅 使用 Amazon Elasticsearch Service 索引快照。配置在 Amazon ES 域中创建索引每日自动快照的时间所需的参数的容器。

字段 数据类型 描述
AutomatedSnapshotStartHour 整数 已弃用。服务为 Amazon ES 域中的索引创建每日自动快照的时间

SnapshotOptionsStatus

Amazon ES 域的每日自动快照配置更新的状态。

字段 数据类型 描述
Options SnapshotOptions 配置在 Amazon ES 域中创建索引每日自动快照的时间所需的参数的容器
Status OptionStatus Amazon ES 域快照选项的更新状态

标签

字段 数据类型 描述
Key TagKey 标签的必填名称。标签键在其附加的 Amazon ES 域中必须是唯一的。有关更多信息,请参阅标记 Amazon Elasticsearch Service 域
Value TagValue 标签的可选字符串值。标签值可为空值,且在标签集中不必具有唯一性。例如,在“项目/Trinity”和“成本 - 中心/Trinity”的一个标签集中,可以存在键值对。

TagKey

字段 数据类型 描述
Key String 标签的名称。字符串最多可包含 128 个字符。

TagList

字段 数据类型 描述
Tag Tag 附加到 Amazon ES 域的资源标签。

TagValue

字段 数据类型 描述
Value String 保存 TagKey 的值。字符串最多可包含 256 个字符。

VPCDerivedInfo

字段 数据类型 描述
VPCId String 您的 VPC 的 ID。当您创建 VPC 时,Amazon VPC 将生成此值。
SubnetIds StringList 与域的 VPC 终端节点关联的子网 ID 列表。要了解更多信息,请参阅 Amazon VPC 用户指南 中的 VPC 和子网
AvailabilityZones StringList 与 VPC 子网关联的可用区列表。要了解更多信息,请参阅 Amazon VPC 用户指南 中的 VPC 和子网基础知识
SecurityGroupIds StringList 与域的 VPC 终端节点关联的安全组 ID 列表。要了解更多信息,请参阅 Amazon VPC 用户指南 中的您的 VPC 的安全组

VPCDerivedInfoStatus

字段 数据类型 描述
Options VPCDerivedInfo Amazon ES 基于域的 VPCOptions 派生的信息。
Status OptionStatus Amazon ES 域的 VPC 配置选项的更新状态。

VPCOptions

字段 数据类型 描述
SubnetIds StringList 与域的 VPC 终端节点关联的子网 ID 列表。如果您的域使用多个可用区,则您需要提供两个子网 ID,每个区域一个。否则,只需提供一个。要了解更多信息,请参阅 Amazon VPC 用户指南 中的 VPC 和子网
SecurityGroupIds StringList 与域的 VPC 终端节点关联的安全组 ID 列表。如果不提供安全组 ID, Amazon ES 将使用 VPC 的默认安全组。要了解更多信息,请参阅 Amazon VPC 用户指南 中的您的 VPC 的安全组

VPCOptionsStatus

字段 数据类型 描述
Options VPCOptions 配置 Amazon ES 以便与 VPC 配合使用所需的值的容器。
Status OptionStatus Amazon ES 域的 VPC 配置选项的更新状态。

ZoneAwarenessConfig

字段 数据类型 描述
AvailabilityZoneCount Integer 如果您启用了多个可用区 (AZ),此字段是您希望域使用的 AZ 数。有效值为 23

错误

Amazon ES 会引发以下错误:

例外 Description
BaseException 由所有服务错误引发。包含错误的 HTTP 状态代码。
ValidationException 在 HTTP 请求包含无效输入或缺少必需的输入时引发。返回 HTTP 状态代码 400。
DisabledOperationException 在客户端尝试执行不支持的操作时引发。返回 HTTP 状态代码 409。
InternalException 处理请求期间服务内部出现错误时引发。返回 HTTP 状态代码 500。
InvalidTypeException 尝试创建或访问无效或不支持的 Amazon ES 域子资源时引发。返回 HTTP 状态代码 409。
LimitExceededException 尝试创建的 Amazon ES 域资源和子资源超过允许的数量时引发。返回 HTTP 状态代码 409。
ResourceNotFoundException 访问或删除不存在的资源时引发。返回 HTTP 状态代码 400。
ResourceAlreadyExistsException 客户端尝试创建 Amazon ES 域中已存在的资源时引发。返回 HTTP 状态代码 400。

本页内容: