/
upp-concepts.yml
68 lines (65 loc) · 1.95 KB
/
upp-concepts.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
AWSTemplateFormatVersion: 2010-09-09
Description: >
Template to spin-up an Elasticsearch cluster for upp-concepts
Parameters:
EnvironmentType:
Description: Environment type (Dev,Test or Production).
Type: String
AllowedValues:
- 'd'
- 't'
- 'p'
Default: t
ClusterName:
Description: The name of the ES cluster
Type: String
Region:
Description: AWS region - only used to generate the domain access policy
Type: String
AllowedValues:
- 'eu-west-1'
- 'us-east-1'
Default: eu-west-1
Resources:
ElasticsearchDomain:
Type: "AWS::Elasticsearch::Domain"
Properties:
DomainName: !Ref ClusterName
ElasticsearchVersion: "7.10"
ElasticsearchClusterConfig:
InstanceCount: "3"
InstanceType: "m5.xlarge.elasticsearch"
DedicatedMasterEnabled: "true"
DedicatedMasterType: "m5.large.elasticsearch"
DedicatedMasterCount: "3"
EBSOptions:
EBSEnabled: true
Iops: 0
VolumeSize: 50
VolumeType: "gp2"
SnapshotOptions:
AutomatedSnapshotStartHour: "0"
AccessPolicies:
Version: "2012-10-17"
Statement:
-
Effect: "Allow"
Principal:
AWS: !Join ["", ["arn:aws:iam::", !Ref 'AWS::AccountId', ":user/content-containers-apps"]]
Action: "es:*"
Resource: !Join [ "", [ "arn:aws:es:", !Ref Region, ":", !Ref 'AWS::AccountId', ":domain/", !Ref ClusterName, "/*" ] ]
AdvancedOptions:
rest.action.multi.allow_explicit_index: "true"
Tags:
- Key: environment
Value: !Ref EnvironmentType
- Key: teamDL
Value: "universal.publishing.platform@ft.com"
- Key: systemCode
Value: "upp"
- Key: description
Value: !Ref ClusterName
Outputs:
ESClusterEndpoint:
Description: The ElasticSearch cluster endpoint
Value: !GetAtt ElasticsearchDomain.DomainEndpoint