Я хочу настроить домен ES через шаблон облачной информации.
У меня есть служба, которая будет использовать этот домен ES, поэтому всякий раз, когда эта служба развертывается в ECS, я хотел бы сначала создать домен ES и использовать конечную точку ES в своей службе.
Этот шаблон поможет?
Кроме того, как мне установить конечную точку ES, которая вновь создается в SSM через шаблон?
{
"AWSTemplateFormatVersion": "2010-09-09",
"Resources": {
"taskRole": {
"Type": "AWS::IAM::Role",
"Properties": {
"AssumeRolePolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "ecs-tasks.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
},
"Path": "/",
"Policies": [
{
"PolicyName": "taskRole",
"PolicyDocument": {
"Statement": [
{
"Effect": "Allow",
"Action": [
"ssm:GetParametersByPath",
"ssm:GetParameter"
],
"Resource": "arn:aws:ssm:*:*:parameter/*"
}
]
}
}
]
}
},
"ElasticsearchDomain": {
"Type": "AWS::Elasticsearch::Domain",
"Properties": {
"DomainName": "Test-ES-Domain",
"ElasticsearchClusterConfig": {
"DedicatedMasterEnabled": "true",
"InstanceCount": "2",
"ZoneAwarenessEnabled": "true",
"InstanceType": "m3.medium.elasticsearch",
"DedicatedMasterType": "m3.medium.elasticsearch",
"DedicatedMasterCount": "3"
},
"EBSOptions": {
"EBSEnabled": true,
"Iops": 0,
"VolumeSize": 20,
"VolumeType": "gp2"
},
"SnapshotOptions": {
"AutomatedSnapshotStartHour": "0"
},
"AccessPolicies": {
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::123456789012:user/es-user"
},
"Action": "es:*",
"Resource": "arn:aws:es:us-east-1:123456789012:domain/test/*"
}
]
},
"AdvancedOptions": {
"rest.action.multi.allow_explicit_index": "true"
}
}
}
},
"Outputs": {
"serviceRole": {
"Description": "Task role with permission to read configurations from AWS parameter store",
"Value": { "Fn::GetAtt": [ "taskRole", "Arn" ] }
}
}
}