@aws-solutions-constructs/aws-lambda-opensearch 2.44.0 → 2.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +105 -14
- package/lib/index.js +5 -3
- package/package.json +5 -5
- package/test/{integ.cluster-config.expected.json → integ.lamopn-cluster-config.expected.json} +48 -48
- package/test/integ.lamopn-cluster-config.js +50 -0
- package/test/{integ.disabled-zone-awareness.expected.json → integ.lamopn-disabled-zone-awareness.expected.json} +38 -38
- package/test/integ.lamopn-disabled-zone-awareness.js +47 -0
- package/test/{integ.domain-arguments.expected.json → integ.lamopn-domain-arguments.expected.json} +19 -19
- package/test/integ.lamopn-domain-arguments.js +37 -0
- package/test/{integ.existing-vpc.expected.json → integ.lamopn-existing-vpc.expected.json} +125 -125
- package/test/integ.lamopn-existing-vpc.js +41 -0
- package/test/{integ.no-arguments.expected.json → integ.lamopn-no-arguments.expected.json} +24 -24
- package/test/integ.lamopn-no-arguments.js +35 -0
- package/test/{integ.vpc-props.expected.json → integ.lamopn-vpc-props.expected.json} +58 -58
- package/test/integ.lamopn-vpc-props.js +43 -0
- package/test/lambda-opensearch.test.js +63 -2
- package/test/integ.cluster-config.js +0 -50
- package/test/integ.disabled-zone-awareness.js +0 -47
- package/test/integ.domain-arguments.js +0 -37
- package/test/integ.existing-vpc.js +0 -41
- package/test/integ.no-arguments.js +0 -35
- package/test/integ.vpc-props.js +0 -43
- /package/test/{integ.cluster-config.d.ts → integ.lamopn-cluster-config.d.ts} +0 -0
- /package/test/{integ.disabled-zone-awareness.d.ts → integ.lamopn-disabled-zone-awareness.d.ts} +0 -0
- /package/test/{integ.domain-arguments.d.ts → integ.lamopn-domain-arguments.d.ts} +0 -0
- /package/test/{integ.existing-vpc.d.ts → integ.lamopn-existing-vpc.d.ts} +0 -0
- /package/test/{integ.no-arguments.d.ts → integ.lamopn-no-arguments.d.ts} +0 -0
- /package/test/{integ.vpc-props.d.ts → integ.lamopn-vpc-props.d.ts} +0 -0
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
|
|
6
|
+
* with the License. A copy of the License is located at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES
|
|
11
|
+
* OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions
|
|
12
|
+
* and limitations under the License.
|
|
13
|
+
*/
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
/// !cdk-integ *
|
|
16
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
17
|
+
const lib_1 = require("../lib");
|
|
18
|
+
const lambda = require("aws-cdk-lib/aws-lambda");
|
|
19
|
+
const defaults = require("@aws-solutions-constructs/core");
|
|
20
|
+
const app = new aws_cdk_lib_1.App();
|
|
21
|
+
const stack = new aws_cdk_lib_1.Stack(app, defaults.generateIntegStackName(__filename), {
|
|
22
|
+
env: {
|
|
23
|
+
region: process.env.CDK_DEFAULT_REGION,
|
|
24
|
+
account: process.env.CDK_DEFAULT_ACCOUNT,
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
// Create VPC
|
|
28
|
+
const vpc = defaults.getTestVpc(stack);
|
|
29
|
+
const lambdaProps = {
|
|
30
|
+
code: lambda.Code.fromAsset(`lambda`),
|
|
31
|
+
runtime: lambda.Runtime.NODEJS_16_X,
|
|
32
|
+
handler: 'index.handler',
|
|
33
|
+
};
|
|
34
|
+
new lib_1.LambdaToOpenSearch(stack, 'test-lambda-elasticsearch-kibana4', {
|
|
35
|
+
lambdaFunctionProps: lambdaProps,
|
|
36
|
+
openSearchDomainName: "deploytestwithexistingvpc",
|
|
37
|
+
existingVpc: vpc
|
|
38
|
+
});
|
|
39
|
+
// Synth
|
|
40
|
+
app.synth();
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcubGFtb3BuLWV4aXN0aW5nLXZwYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImludGVnLmxhbW9wbi1leGlzdGluZy12cGMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7OztHQVdHOztBQUVILGdCQUFnQjtBQUNoQiw2Q0FBeUM7QUFDekMsZ0NBQTRDO0FBQzVDLGlEQUFpRDtBQUNqRCwyREFBMkQ7QUFFM0QsTUFBTSxHQUFHLEdBQUcsSUFBSSxpQkFBRyxFQUFFLENBQUM7QUFDdEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxtQkFBSyxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsc0JBQXNCLENBQUMsVUFBVSxDQUFDLEVBQUU7SUFDeEUsR0FBRyxFQUFFO1FBQ0gsTUFBTSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCO1FBQ3RDLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtLQUN6QztDQUNGLENBQUMsQ0FBQztBQUVILGFBQWE7QUFDYixNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBRXZDLE1BQU0sV0FBVyxHQUF5QjtJQUN4QyxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO0lBQ3JDLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVc7SUFDbkMsT0FBTyxFQUFFLGVBQWU7Q0FDekIsQ0FBQztBQUVGLElBQUksd0JBQWtCLENBQUMsS0FBSyxFQUFFLG1DQUFtQyxFQUFFO0lBQ2pFLG1CQUFtQixFQUFFLFdBQVc7SUFDaEMsb0JBQW9CLEVBQUUsMkJBQTJCO0lBQ2pELFdBQVcsRUFBRSxHQUFHO0NBQ2pCLENBQUMsQ0FBQztBQUVILFFBQVE7QUFDUixHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKS4gWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuICogIHdpdGggdGhlIExpY2Vuc2UuIEEgY29weSBvZiB0aGUgTGljZW5zZSBpcyBsb2NhdGVkIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgb3IgaW4gdGhlICdsaWNlbnNlJyBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVNcbiAqICBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xuICogIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vLy8gIWNkay1pbnRlZyAqXG5pbXBvcnQgeyBBcHAsIFN0YWNrIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBMYW1iZGFUb09wZW5TZWFyY2ggfSBmcm9tIFwiLi4vbGliXCI7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgKiBhcyBkZWZhdWx0cyBmcm9tICdAYXdzLXNvbHV0aW9ucy1jb25zdHJ1Y3RzL2NvcmUnO1xuXG5jb25zdCBhcHAgPSBuZXcgQXBwKCk7XG5jb25zdCBzdGFjayA9IG5ldyBTdGFjayhhcHAsIGRlZmF1bHRzLmdlbmVyYXRlSW50ZWdTdGFja05hbWUoX19maWxlbmFtZSksIHtcbiAgZW52OiB7XG4gICAgcmVnaW9uOiBwcm9jZXNzLmVudi5DREtfREVGQVVMVF9SRUdJT04sXG4gICAgYWNjb3VudDogcHJvY2Vzcy5lbnYuQ0RLX0RFRkFVTFRfQUNDT1VOVCxcbiAgfVxufSk7XG5cbi8vIENyZWF0ZSBWUENcbmNvbnN0IHZwYyA9IGRlZmF1bHRzLmdldFRlc3RWcGMoc3RhY2spO1xuXG5jb25zdCBsYW1iZGFQcm9wczogbGFtYmRhLkZ1bmN0aW9uUHJvcHMgPSB7XG4gIGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChgbGFtYmRhYCksXG4gIHJ1bnRpbWU6IGxhbWJkYS5SdW50aW1lLk5PREVKU18xNl9YLFxuICBoYW5kbGVyOiAnaW5kZXguaGFuZGxlcicsXG59O1xuXG5uZXcgTGFtYmRhVG9PcGVuU2VhcmNoKHN0YWNrLCAndGVzdC1sYW1iZGEtZWxhc3RpY3NlYXJjaC1raWJhbmE0Jywge1xuICBsYW1iZGFGdW5jdGlvblByb3BzOiBsYW1iZGFQcm9wcyxcbiAgb3BlblNlYXJjaERvbWFpbk5hbWU6IFwiZGVwbG95dGVzdHdpdGhleGlzdGluZ3ZwY1wiLFxuICBleGlzdGluZ1ZwYzogdnBjXG59KTtcblxuLy8gU3ludGhcbmFwcC5zeW50aCgpOyJdfQ==
|
|
@@ -98,12 +98,6 @@
|
|
|
98
98
|
},
|
|
99
99
|
"S3Key": "abbc4eca9e7ddabc31da3ce83159e6eee8e72e2c358ab8af0711044514c41290.zip"
|
|
100
100
|
},
|
|
101
|
-
"Role": {
|
|
102
|
-
"Fn::GetAtt": [
|
|
103
|
-
"testlambdaopensearchLambdaFunctionServiceRole4722AB8A",
|
|
104
|
-
"Arn"
|
|
105
|
-
]
|
|
106
|
-
},
|
|
107
101
|
"Environment": {
|
|
108
102
|
"Variables": {
|
|
109
103
|
"AWS_NODEJS_CONNECTION_REUSE_ENABLED": "1",
|
|
@@ -116,6 +110,12 @@
|
|
|
116
110
|
}
|
|
117
111
|
},
|
|
118
112
|
"Handler": "index.handler",
|
|
113
|
+
"Role": {
|
|
114
|
+
"Fn::GetAtt": [
|
|
115
|
+
"testlambdaopensearchLambdaFunctionServiceRole4722AB8A",
|
|
116
|
+
"Arn"
|
|
117
|
+
]
|
|
118
|
+
},
|
|
119
119
|
"Runtime": "nodejs16.x",
|
|
120
120
|
"TracingConfig": {
|
|
121
121
|
"Mode": "Active"
|
|
@@ -181,9 +181,6 @@
|
|
|
181
181
|
"testlambdaopensearchCognitoUserPoolClient39C21D94": {
|
|
182
182
|
"Type": "AWS::Cognito::UserPoolClient",
|
|
183
183
|
"Properties": {
|
|
184
|
-
"UserPoolId": {
|
|
185
|
-
"Ref": "testlambdaopensearchCognitoUserPoolA09096F9"
|
|
186
|
-
},
|
|
187
184
|
"AllowedOAuthFlows": [
|
|
188
185
|
"implicit",
|
|
189
186
|
"code"
|
|
@@ -201,7 +198,10 @@
|
|
|
201
198
|
],
|
|
202
199
|
"SupportedIdentityProviders": [
|
|
203
200
|
"COGNITO"
|
|
204
|
-
]
|
|
201
|
+
],
|
|
202
|
+
"UserPoolId": {
|
|
203
|
+
"Ref": "testlambdaopensearchCognitoUserPoolA09096F9"
|
|
204
|
+
}
|
|
205
205
|
}
|
|
206
206
|
},
|
|
207
207
|
"testlambdaopensearchCognitoIdentityPool0B1FB311": {
|
|
@@ -227,7 +227,7 @@
|
|
|
227
227
|
"testlambdaopensearchUserPoolDomain98864920": {
|
|
228
228
|
"Type": "AWS::Cognito::UserPoolDomain",
|
|
229
229
|
"Properties": {
|
|
230
|
-
"Domain": "
|
|
230
|
+
"Domain": "lamopn-no-args",
|
|
231
231
|
"UserPoolId": {
|
|
232
232
|
"Ref": "testlambdaopensearchCognitoUserPoolA09096F9"
|
|
233
233
|
}
|
|
@@ -284,7 +284,7 @@
|
|
|
284
284
|
{
|
|
285
285
|
"Ref": "AWS::AccountId"
|
|
286
286
|
},
|
|
287
|
-
":domain/
|
|
287
|
+
":domain/lamopn-no-args/*"
|
|
288
288
|
]
|
|
289
289
|
]
|
|
290
290
|
}
|
|
@@ -397,7 +397,7 @@
|
|
|
397
397
|
{
|
|
398
398
|
"Ref": "AWS::AccountId"
|
|
399
399
|
},
|
|
400
|
-
":domain/
|
|
400
|
+
":domain/lamopn-no-args"
|
|
401
401
|
]
|
|
402
402
|
]
|
|
403
403
|
}
|
|
@@ -469,7 +469,7 @@
|
|
|
469
469
|
{
|
|
470
470
|
"Ref": "AWS::AccountId"
|
|
471
471
|
},
|
|
472
|
-
":domain/
|
|
472
|
+
":domain/lamopn-no-args/*"
|
|
473
473
|
]
|
|
474
474
|
]
|
|
475
475
|
}
|
|
@@ -505,7 +505,7 @@
|
|
|
505
505
|
"EnforceHTTPS": true,
|
|
506
506
|
"TLSSecurityPolicy": "Policy-Min-TLS-1-2-2019-07"
|
|
507
507
|
},
|
|
508
|
-
"DomainName": "
|
|
508
|
+
"DomainName": "lamopn-no-args",
|
|
509
509
|
"EBSOptions": {
|
|
510
510
|
"EBSEnabled": true,
|
|
511
511
|
"VolumeSize": 10
|
|
@@ -539,9 +539,9 @@
|
|
|
539
539
|
"testlambdaopensearchStatusRedAlarm1627144D": {
|
|
540
540
|
"Type": "AWS::CloudWatch::Alarm",
|
|
541
541
|
"Properties": {
|
|
542
|
+
"AlarmDescription": "At least one primary shard and its replicas are not allocated to a node. ",
|
|
542
543
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
543
544
|
"EvaluationPeriods": 1,
|
|
544
|
-
"AlarmDescription": "At least one primary shard and its replicas are not allocated to a node. ",
|
|
545
545
|
"MetricName": "ClusterStatus.red",
|
|
546
546
|
"Namespace": "AWS/ES",
|
|
547
547
|
"Period": 60,
|
|
@@ -552,9 +552,9 @@
|
|
|
552
552
|
"testlambdaopensearchStatusYellowAlarm57139CF0": {
|
|
553
553
|
"Type": "AWS::CloudWatch::Alarm",
|
|
554
554
|
"Properties": {
|
|
555
|
+
"AlarmDescription": "At least one replica shard is not allocated to a node.",
|
|
555
556
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
556
557
|
"EvaluationPeriods": 1,
|
|
557
|
-
"AlarmDescription": "At least one replica shard is not allocated to a node.",
|
|
558
558
|
"MetricName": "ClusterStatus.yellow",
|
|
559
559
|
"Namespace": "AWS/ES",
|
|
560
560
|
"Period": 60,
|
|
@@ -565,9 +565,9 @@
|
|
|
565
565
|
"testlambdaopensearchFreeStorageSpaceTooLowAlarm6A5E1E96": {
|
|
566
566
|
"Type": "AWS::CloudWatch::Alarm",
|
|
567
567
|
"Properties": {
|
|
568
|
+
"AlarmDescription": "A node in your cluster is down to 20 GiB of free storage space.",
|
|
568
569
|
"ComparisonOperator": "LessThanOrEqualToThreshold",
|
|
569
570
|
"EvaluationPeriods": 1,
|
|
570
|
-
"AlarmDescription": "A node in your cluster is down to 20 GiB of free storage space.",
|
|
571
571
|
"MetricName": "FreeStorageSpace",
|
|
572
572
|
"Namespace": "AWS/ES",
|
|
573
573
|
"Period": 60,
|
|
@@ -578,9 +578,9 @@
|
|
|
578
578
|
"testlambdaopensearchIndexWritesBlockedTooHighAlarmD2E041A3": {
|
|
579
579
|
"Type": "AWS::CloudWatch::Alarm",
|
|
580
580
|
"Properties": {
|
|
581
|
+
"AlarmDescription": "Your cluster is blocking write requests.",
|
|
581
582
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
582
583
|
"EvaluationPeriods": 1,
|
|
583
|
-
"AlarmDescription": "Your cluster is blocking write requests.",
|
|
584
584
|
"MetricName": "ClusterIndexWritesBlocked",
|
|
585
585
|
"Namespace": "AWS/ES",
|
|
586
586
|
"Period": 300,
|
|
@@ -591,9 +591,9 @@
|
|
|
591
591
|
"testlambdaopensearchAutomatedSnapshotFailureTooHighAlarm9A4D0B1F": {
|
|
592
592
|
"Type": "AWS::CloudWatch::Alarm",
|
|
593
593
|
"Properties": {
|
|
594
|
+
"AlarmDescription": "An automated snapshot failed. This failure is often the result of a red cluster health status.",
|
|
594
595
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
595
596
|
"EvaluationPeriods": 1,
|
|
596
|
-
"AlarmDescription": "An automated snapshot failed. This failure is often the result of a red cluster health status.",
|
|
597
597
|
"MetricName": "AutomatedSnapshotFailure",
|
|
598
598
|
"Namespace": "AWS/ES",
|
|
599
599
|
"Period": 60,
|
|
@@ -604,9 +604,9 @@
|
|
|
604
604
|
"testlambdaopensearchCPUUtilizationTooHighAlarmC4850758": {
|
|
605
605
|
"Type": "AWS::CloudWatch::Alarm",
|
|
606
606
|
"Properties": {
|
|
607
|
+
"AlarmDescription": "100% CPU utilization is not uncommon, but sustained high usage is problematic. Consider using larger instance types or adding instances.",
|
|
607
608
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
608
609
|
"EvaluationPeriods": 3,
|
|
609
|
-
"AlarmDescription": "100% CPU utilization is not uncommon, but sustained high usage is problematic. Consider using larger instance types or adding instances.",
|
|
610
610
|
"MetricName": "CPUUtilization",
|
|
611
611
|
"Namespace": "AWS/ES",
|
|
612
612
|
"Period": 900,
|
|
@@ -617,9 +617,9 @@
|
|
|
617
617
|
"testlambdaopensearchJVMMemoryPressureTooHighAlarmEFB09A7C": {
|
|
618
618
|
"Type": "AWS::CloudWatch::Alarm",
|
|
619
619
|
"Properties": {
|
|
620
|
+
"AlarmDescription": "Average JVM memory pressure over last 15 minutes too high. Consider scaling vertically.",
|
|
620
621
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
621
622
|
"EvaluationPeriods": 1,
|
|
622
|
-
"AlarmDescription": "Average JVM memory pressure over last 15 minutes too high. Consider scaling vertically.",
|
|
623
623
|
"MetricName": "JVMMemoryPressure",
|
|
624
624
|
"Namespace": "AWS/ES",
|
|
625
625
|
"Period": 900,
|
|
@@ -630,9 +630,9 @@
|
|
|
630
630
|
"testlambdaopensearchMasterCPUUtilizationTooHighAlarm124D5748": {
|
|
631
631
|
"Type": "AWS::CloudWatch::Alarm",
|
|
632
632
|
"Properties": {
|
|
633
|
+
"AlarmDescription": "Average CPU utilization over last 45 minutes too high. Consider using larger instance types for your dedicated master nodes.",
|
|
633
634
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
634
635
|
"EvaluationPeriods": 3,
|
|
635
|
-
"AlarmDescription": "Average CPU utilization over last 45 minutes too high. Consider using larger instance types for your dedicated master nodes.",
|
|
636
636
|
"MetricName": "MasterCPUUtilization",
|
|
637
637
|
"Namespace": "AWS/ES",
|
|
638
638
|
"Period": 900,
|
|
@@ -643,9 +643,9 @@
|
|
|
643
643
|
"testlambdaopensearchMasterJVMMemoryPressureTooHighAlarmBC9524D3": {
|
|
644
644
|
"Type": "AWS::CloudWatch::Alarm",
|
|
645
645
|
"Properties": {
|
|
646
|
+
"AlarmDescription": "Average JVM memory pressure over last 15 minutes too high. Consider scaling vertically.",
|
|
646
647
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
647
648
|
"EvaluationPeriods": 1,
|
|
648
|
-
"AlarmDescription": "Average JVM memory pressure over last 15 minutes too high. Consider scaling vertically.",
|
|
649
649
|
"MetricName": "MasterJVMMemoryPressure",
|
|
650
650
|
"Namespace": "AWS/ES",
|
|
651
651
|
"Period": 900,
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
|
|
6
|
+
* with the License. A copy of the License is located at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES
|
|
11
|
+
* OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions
|
|
12
|
+
* and limitations under the License.
|
|
13
|
+
*/
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
/// !cdk-integ *
|
|
16
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
17
|
+
const lib_1 = require("../lib");
|
|
18
|
+
const lambda = require("aws-cdk-lib/aws-lambda");
|
|
19
|
+
const core_1 = require("@aws-solutions-constructs/core");
|
|
20
|
+
// Setup
|
|
21
|
+
const app = new aws_cdk_lib_1.App();
|
|
22
|
+
const stack = new aws_cdk_lib_1.Stack(app, core_1.generateIntegStackName(__filename));
|
|
23
|
+
const lambdaProps = {
|
|
24
|
+
code: lambda.Code.fromAsset(`${__dirname}/lambda`),
|
|
25
|
+
runtime: lambda.Runtime.NODEJS_16_X,
|
|
26
|
+
handler: 'index.handler'
|
|
27
|
+
};
|
|
28
|
+
const openSearchDomain = 'lamopn-no-args';
|
|
29
|
+
new lib_1.LambdaToOpenSearch(stack, 'test-lambda-opensearch', {
|
|
30
|
+
lambdaFunctionProps: lambdaProps,
|
|
31
|
+
openSearchDomainName: openSearchDomain,
|
|
32
|
+
});
|
|
33
|
+
// Synth
|
|
34
|
+
app.synth();
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcubGFtb3BuLW5vLWFyZ3VtZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImludGVnLmxhbW9wbi1uby1hcmd1bWVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7OztHQVdHOztBQUVILGdCQUFnQjtBQUNoQiw2Q0FBeUM7QUFDekMsZ0NBQTRDO0FBQzVDLGlEQUFpRDtBQUNqRCx5REFBd0U7QUFFeEUsUUFBUTtBQUNSLE1BQU0sR0FBRyxHQUFHLElBQUksaUJBQUcsRUFBRSxDQUFDO0FBQ3RCLE1BQU0sS0FBSyxHQUFHLElBQUksbUJBQUssQ0FBQyxHQUFHLEVBQUUsNkJBQXNCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztBQUVqRSxNQUFNLFdBQVcsR0FBeUI7SUFDeEMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxTQUFTLENBQUM7SUFDbEQsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVztJQUNuQyxPQUFPLEVBQUUsZUFBZTtDQUN6QixDQUFDO0FBRUYsTUFBTSxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztBQUUxQyxJQUFJLHdCQUFrQixDQUFDLEtBQUssRUFBRSx3QkFBd0IsRUFBRTtJQUN0RCxtQkFBbUIsRUFBRSxXQUFXO0lBQ2hDLG9CQUFvQixFQUFFLGdCQUFnQjtDQUN2QyxDQUFDLENBQUM7QUFFSCxRQUFRO0FBQ1IsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiAgQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIikuIFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcbiAqICB3aXRoIHRoZSBMaWNlbnNlLiBBIGNvcHkgb2YgdGhlIExpY2Vuc2UgaXMgbG9jYXRlZCBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogIG9yIGluIHRoZSAnbGljZW5zZScgZmlsZSBhY2NvbXBhbnlpbmcgdGhpcyBmaWxlLiBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTXG4gKiAgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnNcbiAqICBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuLy8vICFjZGstaW50ZWcgKlxuaW1wb3J0IHsgQXBwLCBTdGFjayB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgTGFtYmRhVG9PcGVuU2VhcmNoIH0gZnJvbSBcIi4uL2xpYlwiO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgZ2VuZXJhdGVJbnRlZ1N0YWNrTmFtZSB9IGZyb20gJ0Bhd3Mtc29sdXRpb25zLWNvbnN0cnVjdHMvY29yZSc7XG5cbi8vIFNldHVwXG5jb25zdCBhcHAgPSBuZXcgQXBwKCk7XG5jb25zdCBzdGFjayA9IG5ldyBTdGFjayhhcHAsIGdlbmVyYXRlSW50ZWdTdGFja05hbWUoX19maWxlbmFtZSkpO1xuXG5jb25zdCBsYW1iZGFQcm9wczogbGFtYmRhLkZ1bmN0aW9uUHJvcHMgPSB7XG4gIGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChgJHtfX2Rpcm5hbWV9L2xhbWJkYWApLFxuICBydW50aW1lOiBsYW1iZGEuUnVudGltZS5OT0RFSlNfMTZfWCxcbiAgaGFuZGxlcjogJ2luZGV4LmhhbmRsZXInXG59O1xuXG5jb25zdCBvcGVuU2VhcmNoRG9tYWluID0gJ2xhbW9wbi1uby1hcmdzJztcblxubmV3IExhbWJkYVRvT3BlblNlYXJjaChzdGFjaywgJ3Rlc3QtbGFtYmRhLW9wZW5zZWFyY2gnLCB7XG4gIGxhbWJkYUZ1bmN0aW9uUHJvcHM6IGxhbWJkYVByb3BzLFxuICBvcGVuU2VhcmNoRG9tYWluTmFtZTogb3BlblNlYXJjaERvbWFpbixcbn0pO1xuXG4vLyBTeW50aFxuYXBwLnN5bnRoKCk7XG4iXX0=
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
"testlambdaopensearchReplaceDefaultSecurityGroupsecuritygroupB44718EC": {
|
|
104
104
|
"Type": "AWS::EC2::SecurityGroup",
|
|
105
105
|
"Properties": {
|
|
106
|
-
"GroupDescription": "vpc-props/test-lambda-opensearch/ReplaceDefaultSecurityGroup-security-group",
|
|
106
|
+
"GroupDescription": "lamopn-vpc-props/test-lambda-opensearch/ReplaceDefaultSecurityGroup-security-group",
|
|
107
107
|
"SecurityGroupEgress": [
|
|
108
108
|
{
|
|
109
109
|
"CidrIp": "0.0.0.0/0",
|
|
@@ -137,12 +137,6 @@
|
|
|
137
137
|
"S3Bucket": "cdk-hnb659fds-assets-12345678-test-region",
|
|
138
138
|
"S3Key": "abbc4eca9e7ddabc31da3ce83159e6eee8e72e2c358ab8af0711044514c41290.zip"
|
|
139
139
|
},
|
|
140
|
-
"Role": {
|
|
141
|
-
"Fn::GetAtt": [
|
|
142
|
-
"testlambdaopensearchLambdaFunctionServiceRole4722AB8A",
|
|
143
|
-
"Arn"
|
|
144
|
-
]
|
|
145
|
-
},
|
|
146
140
|
"Environment": {
|
|
147
141
|
"Variables": {
|
|
148
142
|
"AWS_NODEJS_CONNECTION_REUSE_ENABLED": "1",
|
|
@@ -155,6 +149,12 @@
|
|
|
155
149
|
}
|
|
156
150
|
},
|
|
157
151
|
"Handler": "index.handler",
|
|
152
|
+
"Role": {
|
|
153
|
+
"Fn::GetAtt": [
|
|
154
|
+
"testlambdaopensearchLambdaFunctionServiceRole4722AB8A",
|
|
155
|
+
"Arn"
|
|
156
|
+
]
|
|
157
|
+
},
|
|
158
158
|
"Runtime": "nodejs16.x",
|
|
159
159
|
"TracingConfig": {
|
|
160
160
|
"Mode": "Active"
|
|
@@ -244,9 +244,6 @@
|
|
|
244
244
|
"testlambdaopensearchCognitoUserPoolClient39C21D94": {
|
|
245
245
|
"Type": "AWS::Cognito::UserPoolClient",
|
|
246
246
|
"Properties": {
|
|
247
|
-
"UserPoolId": {
|
|
248
|
-
"Ref": "testlambdaopensearchCognitoUserPoolA09096F9"
|
|
249
|
-
},
|
|
250
247
|
"AllowedOAuthFlows": [
|
|
251
248
|
"implicit",
|
|
252
249
|
"code"
|
|
@@ -264,7 +261,10 @@
|
|
|
264
261
|
],
|
|
265
262
|
"SupportedIdentityProviders": [
|
|
266
263
|
"COGNITO"
|
|
267
|
-
]
|
|
264
|
+
],
|
|
265
|
+
"UserPoolId": {
|
|
266
|
+
"Ref": "testlambdaopensearchCognitoUserPoolA09096F9"
|
|
267
|
+
}
|
|
268
268
|
}
|
|
269
269
|
},
|
|
270
270
|
"testlambdaopensearchCognitoIdentityPool0B1FB311": {
|
|
@@ -623,9 +623,9 @@
|
|
|
623
623
|
"testlambdaopensearchStatusRedAlarm1627144D": {
|
|
624
624
|
"Type": "AWS::CloudWatch::Alarm",
|
|
625
625
|
"Properties": {
|
|
626
|
+
"AlarmDescription": "At least one primary shard and its replicas are not allocated to a node. ",
|
|
626
627
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
627
628
|
"EvaluationPeriods": 1,
|
|
628
|
-
"AlarmDescription": "At least one primary shard and its replicas are not allocated to a node. ",
|
|
629
629
|
"MetricName": "ClusterStatus.red",
|
|
630
630
|
"Namespace": "AWS/ES",
|
|
631
631
|
"Period": 60,
|
|
@@ -636,9 +636,9 @@
|
|
|
636
636
|
"testlambdaopensearchStatusYellowAlarm57139CF0": {
|
|
637
637
|
"Type": "AWS::CloudWatch::Alarm",
|
|
638
638
|
"Properties": {
|
|
639
|
+
"AlarmDescription": "At least one replica shard is not allocated to a node.",
|
|
639
640
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
640
641
|
"EvaluationPeriods": 1,
|
|
641
|
-
"AlarmDescription": "At least one replica shard is not allocated to a node.",
|
|
642
642
|
"MetricName": "ClusterStatus.yellow",
|
|
643
643
|
"Namespace": "AWS/ES",
|
|
644
644
|
"Period": 60,
|
|
@@ -649,9 +649,9 @@
|
|
|
649
649
|
"testlambdaopensearchFreeStorageSpaceTooLowAlarm6A5E1E96": {
|
|
650
650
|
"Type": "AWS::CloudWatch::Alarm",
|
|
651
651
|
"Properties": {
|
|
652
|
+
"AlarmDescription": "A node in your cluster is down to 20 GiB of free storage space.",
|
|
652
653
|
"ComparisonOperator": "LessThanOrEqualToThreshold",
|
|
653
654
|
"EvaluationPeriods": 1,
|
|
654
|
-
"AlarmDescription": "A node in your cluster is down to 20 GiB of free storage space.",
|
|
655
655
|
"MetricName": "FreeStorageSpace",
|
|
656
656
|
"Namespace": "AWS/ES",
|
|
657
657
|
"Period": 60,
|
|
@@ -662,9 +662,9 @@
|
|
|
662
662
|
"testlambdaopensearchIndexWritesBlockedTooHighAlarmD2E041A3": {
|
|
663
663
|
"Type": "AWS::CloudWatch::Alarm",
|
|
664
664
|
"Properties": {
|
|
665
|
+
"AlarmDescription": "Your cluster is blocking write requests.",
|
|
665
666
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
666
667
|
"EvaluationPeriods": 1,
|
|
667
|
-
"AlarmDescription": "Your cluster is blocking write requests.",
|
|
668
668
|
"MetricName": "ClusterIndexWritesBlocked",
|
|
669
669
|
"Namespace": "AWS/ES",
|
|
670
670
|
"Period": 300,
|
|
@@ -675,9 +675,9 @@
|
|
|
675
675
|
"testlambdaopensearchAutomatedSnapshotFailureTooHighAlarm9A4D0B1F": {
|
|
676
676
|
"Type": "AWS::CloudWatch::Alarm",
|
|
677
677
|
"Properties": {
|
|
678
|
+
"AlarmDescription": "An automated snapshot failed. This failure is often the result of a red cluster health status.",
|
|
678
679
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
679
680
|
"EvaluationPeriods": 1,
|
|
680
|
-
"AlarmDescription": "An automated snapshot failed. This failure is often the result of a red cluster health status.",
|
|
681
681
|
"MetricName": "AutomatedSnapshotFailure",
|
|
682
682
|
"Namespace": "AWS/ES",
|
|
683
683
|
"Period": 60,
|
|
@@ -688,9 +688,9 @@
|
|
|
688
688
|
"testlambdaopensearchCPUUtilizationTooHighAlarmC4850758": {
|
|
689
689
|
"Type": "AWS::CloudWatch::Alarm",
|
|
690
690
|
"Properties": {
|
|
691
|
+
"AlarmDescription": "100% CPU utilization is not uncommon, but sustained high usage is problematic. Consider using larger instance types or adding instances.",
|
|
691
692
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
692
693
|
"EvaluationPeriods": 3,
|
|
693
|
-
"AlarmDescription": "100% CPU utilization is not uncommon, but sustained high usage is problematic. Consider using larger instance types or adding instances.",
|
|
694
694
|
"MetricName": "CPUUtilization",
|
|
695
695
|
"Namespace": "AWS/ES",
|
|
696
696
|
"Period": 900,
|
|
@@ -701,9 +701,9 @@
|
|
|
701
701
|
"testlambdaopensearchJVMMemoryPressureTooHighAlarmEFB09A7C": {
|
|
702
702
|
"Type": "AWS::CloudWatch::Alarm",
|
|
703
703
|
"Properties": {
|
|
704
|
+
"AlarmDescription": "Average JVM memory pressure over last 15 minutes too high. Consider scaling vertically.",
|
|
704
705
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
705
706
|
"EvaluationPeriods": 1,
|
|
706
|
-
"AlarmDescription": "Average JVM memory pressure over last 15 minutes too high. Consider scaling vertically.",
|
|
707
707
|
"MetricName": "JVMMemoryPressure",
|
|
708
708
|
"Namespace": "AWS/ES",
|
|
709
709
|
"Period": 900,
|
|
@@ -714,9 +714,9 @@
|
|
|
714
714
|
"testlambdaopensearchMasterCPUUtilizationTooHighAlarm124D5748": {
|
|
715
715
|
"Type": "AWS::CloudWatch::Alarm",
|
|
716
716
|
"Properties": {
|
|
717
|
+
"AlarmDescription": "Average CPU utilization over last 45 minutes too high. Consider using larger instance types for your dedicated master nodes.",
|
|
717
718
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
718
719
|
"EvaluationPeriods": 3,
|
|
719
|
-
"AlarmDescription": "Average CPU utilization over last 45 minutes too high. Consider using larger instance types for your dedicated master nodes.",
|
|
720
720
|
"MetricName": "MasterCPUUtilization",
|
|
721
721
|
"Namespace": "AWS/ES",
|
|
722
722
|
"Period": 900,
|
|
@@ -727,9 +727,9 @@
|
|
|
727
727
|
"testlambdaopensearchMasterJVMMemoryPressureTooHighAlarmBC9524D3": {
|
|
728
728
|
"Type": "AWS::CloudWatch::Alarm",
|
|
729
729
|
"Properties": {
|
|
730
|
+
"AlarmDescription": "Average JVM memory pressure over last 15 minutes too high. Consider scaling vertically.",
|
|
730
731
|
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
|
|
731
732
|
"EvaluationPeriods": 1,
|
|
732
|
-
"AlarmDescription": "Average JVM memory pressure over last 15 minutes too high. Consider scaling vertically.",
|
|
733
733
|
"MetricName": "MasterJVMMemoryPressure",
|
|
734
734
|
"Namespace": "AWS/ES",
|
|
735
735
|
"Period": 900,
|
|
@@ -747,7 +747,7 @@
|
|
|
747
747
|
"Tags": [
|
|
748
748
|
{
|
|
749
749
|
"Key": "Name",
|
|
750
|
-
"Value": "vpc-props/Vpc"
|
|
750
|
+
"Value": "lamopn-vpc-props/Vpc"
|
|
751
751
|
}
|
|
752
752
|
]
|
|
753
753
|
}
|
|
@@ -755,9 +755,6 @@
|
|
|
755
755
|
"VpcisolatedSubnet1SubnetE62B1B9B": {
|
|
756
756
|
"Type": "AWS::EC2::Subnet",
|
|
757
757
|
"Properties": {
|
|
758
|
-
"VpcId": {
|
|
759
|
-
"Ref": "Vpc8378EB38"
|
|
760
|
-
},
|
|
761
758
|
"AvailabilityZone": "test-region-1a",
|
|
762
759
|
"CidrBlock": "172.168.0.0/18",
|
|
763
760
|
"MapPublicIpOnLaunch": false,
|
|
@@ -772,23 +769,26 @@
|
|
|
772
769
|
},
|
|
773
770
|
{
|
|
774
771
|
"Key": "Name",
|
|
775
|
-
"Value": "vpc-props/Vpc/isolatedSubnet1"
|
|
772
|
+
"Value": "lamopn-vpc-props/Vpc/isolatedSubnet1"
|
|
776
773
|
}
|
|
777
|
-
]
|
|
774
|
+
],
|
|
775
|
+
"VpcId": {
|
|
776
|
+
"Ref": "Vpc8378EB38"
|
|
777
|
+
}
|
|
778
778
|
}
|
|
779
779
|
},
|
|
780
780
|
"VpcisolatedSubnet1RouteTableE442650B": {
|
|
781
781
|
"Type": "AWS::EC2::RouteTable",
|
|
782
782
|
"Properties": {
|
|
783
|
-
"VpcId": {
|
|
784
|
-
"Ref": "Vpc8378EB38"
|
|
785
|
-
},
|
|
786
783
|
"Tags": [
|
|
787
784
|
{
|
|
788
785
|
"Key": "Name",
|
|
789
|
-
"Value": "vpc-props/Vpc/isolatedSubnet1"
|
|
786
|
+
"Value": "lamopn-vpc-props/Vpc/isolatedSubnet1"
|
|
790
787
|
}
|
|
791
|
-
]
|
|
788
|
+
],
|
|
789
|
+
"VpcId": {
|
|
790
|
+
"Ref": "Vpc8378EB38"
|
|
791
|
+
}
|
|
792
792
|
}
|
|
793
793
|
},
|
|
794
794
|
"VpcisolatedSubnet1RouteTableAssociationD259E31A": {
|
|
@@ -805,9 +805,6 @@
|
|
|
805
805
|
"VpcisolatedSubnet2Subnet39217055": {
|
|
806
806
|
"Type": "AWS::EC2::Subnet",
|
|
807
807
|
"Properties": {
|
|
808
|
-
"VpcId": {
|
|
809
|
-
"Ref": "Vpc8378EB38"
|
|
810
|
-
},
|
|
811
808
|
"AvailabilityZone": "test-region-1b",
|
|
812
809
|
"CidrBlock": "172.168.64.0/18",
|
|
813
810
|
"MapPublicIpOnLaunch": false,
|
|
@@ -822,23 +819,26 @@
|
|
|
822
819
|
},
|
|
823
820
|
{
|
|
824
821
|
"Key": "Name",
|
|
825
|
-
"Value": "vpc-props/Vpc/isolatedSubnet2"
|
|
822
|
+
"Value": "lamopn-vpc-props/Vpc/isolatedSubnet2"
|
|
826
823
|
}
|
|
827
|
-
]
|
|
824
|
+
],
|
|
825
|
+
"VpcId": {
|
|
826
|
+
"Ref": "Vpc8378EB38"
|
|
827
|
+
}
|
|
828
828
|
}
|
|
829
829
|
},
|
|
830
830
|
"VpcisolatedSubnet2RouteTable334F9764": {
|
|
831
831
|
"Type": "AWS::EC2::RouteTable",
|
|
832
832
|
"Properties": {
|
|
833
|
-
"VpcId": {
|
|
834
|
-
"Ref": "Vpc8378EB38"
|
|
835
|
-
},
|
|
836
833
|
"Tags": [
|
|
837
834
|
{
|
|
838
835
|
"Key": "Name",
|
|
839
|
-
"Value": "vpc-props/Vpc/isolatedSubnet2"
|
|
836
|
+
"Value": "lamopn-vpc-props/Vpc/isolatedSubnet2"
|
|
840
837
|
}
|
|
841
|
-
]
|
|
838
|
+
],
|
|
839
|
+
"VpcId": {
|
|
840
|
+
"Ref": "Vpc8378EB38"
|
|
841
|
+
}
|
|
842
842
|
}
|
|
843
843
|
},
|
|
844
844
|
"VpcisolatedSubnet2RouteTableAssociation25A4716F": {
|
|
@@ -855,9 +855,6 @@
|
|
|
855
855
|
"VpcisolatedSubnet3Subnet44F2537D": {
|
|
856
856
|
"Type": "AWS::EC2::Subnet",
|
|
857
857
|
"Properties": {
|
|
858
|
-
"VpcId": {
|
|
859
|
-
"Ref": "Vpc8378EB38"
|
|
860
|
-
},
|
|
861
858
|
"AvailabilityZone": "test-region-1c",
|
|
862
859
|
"CidrBlock": "172.168.128.0/18",
|
|
863
860
|
"MapPublicIpOnLaunch": false,
|
|
@@ -872,23 +869,26 @@
|
|
|
872
869
|
},
|
|
873
870
|
{
|
|
874
871
|
"Key": "Name",
|
|
875
|
-
"Value": "vpc-props/Vpc/isolatedSubnet3"
|
|
872
|
+
"Value": "lamopn-vpc-props/Vpc/isolatedSubnet3"
|
|
876
873
|
}
|
|
877
|
-
]
|
|
874
|
+
],
|
|
875
|
+
"VpcId": {
|
|
876
|
+
"Ref": "Vpc8378EB38"
|
|
877
|
+
}
|
|
878
878
|
}
|
|
879
879
|
},
|
|
880
880
|
"VpcisolatedSubnet3RouteTableA2F6BBC0": {
|
|
881
881
|
"Type": "AWS::EC2::RouteTable",
|
|
882
882
|
"Properties": {
|
|
883
|
-
"VpcId": {
|
|
884
|
-
"Ref": "Vpc8378EB38"
|
|
885
|
-
},
|
|
886
883
|
"Tags": [
|
|
887
884
|
{
|
|
888
885
|
"Key": "Name",
|
|
889
|
-
"Value": "vpc-props/Vpc/isolatedSubnet3"
|
|
886
|
+
"Value": "lamopn-vpc-props/Vpc/isolatedSubnet3"
|
|
890
887
|
}
|
|
891
|
-
]
|
|
888
|
+
],
|
|
889
|
+
"VpcId": {
|
|
890
|
+
"Ref": "Vpc8378EB38"
|
|
891
|
+
}
|
|
892
892
|
}
|
|
893
893
|
},
|
|
894
894
|
"VpcisolatedSubnet3RouteTableAssociationDC010BEB": {
|
|
@@ -920,7 +920,7 @@
|
|
|
920
920
|
"Tags": [
|
|
921
921
|
{
|
|
922
922
|
"Key": "Name",
|
|
923
|
-
"Value": "vpc-props/Vpc"
|
|
923
|
+
"Value": "lamopn-vpc-props/Vpc/FlowLog"
|
|
924
924
|
}
|
|
925
925
|
]
|
|
926
926
|
}
|
|
@@ -972,7 +972,7 @@
|
|
|
972
972
|
"Tags": [
|
|
973
973
|
{
|
|
974
974
|
"Key": "Name",
|
|
975
|
-
"Value": "vpc-props/Vpc"
|
|
975
|
+
"Value": "lamopn-vpc-props/Vpc/FlowLog"
|
|
976
976
|
}
|
|
977
977
|
]
|
|
978
978
|
},
|
|
@@ -992,10 +992,6 @@
|
|
|
992
992
|
"VpcFlowLog8FF33A73": {
|
|
993
993
|
"Type": "AWS::EC2::FlowLog",
|
|
994
994
|
"Properties": {
|
|
995
|
-
"ResourceId": {
|
|
996
|
-
"Ref": "Vpc8378EB38"
|
|
997
|
-
},
|
|
998
|
-
"ResourceType": "VPC",
|
|
999
995
|
"DeliverLogsPermissionArn": {
|
|
1000
996
|
"Fn::GetAtt": [
|
|
1001
997
|
"VpcFlowLogIAMRole6A475D41",
|
|
@@ -1006,10 +1002,14 @@
|
|
|
1006
1002
|
"LogGroupName": {
|
|
1007
1003
|
"Ref": "VpcFlowLogLogGroup7B5C56B9"
|
|
1008
1004
|
},
|
|
1005
|
+
"ResourceId": {
|
|
1006
|
+
"Ref": "Vpc8378EB38"
|
|
1007
|
+
},
|
|
1008
|
+
"ResourceType": "VPC",
|
|
1009
1009
|
"Tags": [
|
|
1010
1010
|
{
|
|
1011
1011
|
"Key": "Name",
|
|
1012
|
-
"Value": "vpc-props/Vpc"
|
|
1012
|
+
"Value": "lamopn-vpc-props/Vpc/FlowLog"
|
|
1013
1013
|
}
|
|
1014
1014
|
],
|
|
1015
1015
|
"TrafficType": "ALL"
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
|
|
6
|
+
* with the License. A copy of the License is located at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES
|
|
11
|
+
* OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions
|
|
12
|
+
* and limitations under the License.
|
|
13
|
+
*/
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
16
|
+
const lib_1 = require("../lib");
|
|
17
|
+
const lambda = require("aws-cdk-lib/aws-lambda");
|
|
18
|
+
const defaults = require("@aws-solutions-constructs/core");
|
|
19
|
+
const ec2 = require("aws-cdk-lib/aws-ec2");
|
|
20
|
+
// Setup
|
|
21
|
+
const app = new aws_cdk_lib_1.App();
|
|
22
|
+
const stack = new aws_cdk_lib_1.Stack(app, defaults.generateIntegStackName(__filename), {
|
|
23
|
+
env: {
|
|
24
|
+
region: process.env.CDK_DEFAULT_REGION,
|
|
25
|
+
account: process.env.CDK_DEFAULT_ACCOUNT,
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
const lambdaProps = {
|
|
29
|
+
code: lambda.Code.fromAsset(`${__dirname}/lambda`),
|
|
30
|
+
runtime: lambda.Runtime.NODEJS_16_X,
|
|
31
|
+
handler: 'index.handler',
|
|
32
|
+
};
|
|
33
|
+
new lib_1.LambdaToOpenSearch(stack, 'test-lambda-opensearch', {
|
|
34
|
+
lambdaFunctionProps: lambdaProps,
|
|
35
|
+
openSearchDomainName: "deploytestwithvpcprops",
|
|
36
|
+
deployVpc: true,
|
|
37
|
+
vpcProps: {
|
|
38
|
+
ipAddresses: ec2.IpAddresses.cidr('172.168.0.0/16'),
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
// Synth
|
|
42
|
+
app.synth();
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcubGFtb3BuLXZwYy1wcm9wcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImludGVnLmxhbW9wbi12cGMtcHJvcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7OztHQVdHOztBQUVILDZDQUF5QztBQUN6QyxnQ0FBNEM7QUFDNUMsaURBQWlEO0FBQ2pELDJEQUEyRDtBQUMzRCwyQ0FBMkM7QUFFM0MsUUFBUTtBQUNSLE1BQU0sR0FBRyxHQUFHLElBQUksaUJBQUcsRUFBRSxDQUFDO0FBQ3RCLE1BQU0sS0FBSyxHQUFHLElBQUksbUJBQUssQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxFQUFFO0lBQ3hFLEdBQUcsRUFBRTtRQUNILE1BQU0sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQjtRQUN0QyxPQUFPLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7S0FDekM7Q0FDRixDQUFDLENBQUM7QUFFSCxNQUFNLFdBQVcsR0FBeUI7SUFDeEMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxTQUFTLENBQUM7SUFDbEQsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVztJQUNuQyxPQUFPLEVBQUUsZUFBZTtDQUN6QixDQUFDO0FBRUYsSUFBSSx3QkFBa0IsQ0FBQyxLQUFLLEVBQUUsd0JBQXdCLEVBQUU7SUFDdEQsbUJBQW1CLEVBQUUsV0FBVztJQUNoQyxvQkFBb0IsRUFBRSx3QkFBd0I7SUFDOUMsU0FBUyxFQUFFLElBQUk7SUFDZixRQUFRLEVBQUU7UUFDUixXQUFXLEVBQUUsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7S0FDcEQ7Q0FDRixDQUFDLENBQUM7QUFFSCxRQUFRO0FBQ1IsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiAgQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIikuIFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcbiAqICB3aXRoIHRoZSBMaWNlbnNlLiBBIGNvcHkgb2YgdGhlIExpY2Vuc2UgaXMgbG9jYXRlZCBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogIG9yIGluIHRoZSAnbGljZW5zZScgZmlsZSBhY2NvbXBhbnlpbmcgdGhpcyBmaWxlLiBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTXG4gKiAgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnNcbiAqICBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQXBwLCBTdGFjayB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgTGFtYmRhVG9PcGVuU2VhcmNoIH0gZnJvbSBcIi4uL2xpYlwiO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0ICogYXMgZGVmYXVsdHMgZnJvbSAnQGF3cy1zb2x1dGlvbnMtY29uc3RydWN0cy9jb3JlJztcbmltcG9ydCAqIGFzIGVjMiBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWMyJztcblxuLy8gU2V0dXBcbmNvbnN0IGFwcCA9IG5ldyBBcHAoKTtcbmNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKGFwcCwgZGVmYXVsdHMuZ2VuZXJhdGVJbnRlZ1N0YWNrTmFtZShfX2ZpbGVuYW1lKSwge1xuICBlbnY6IHtcbiAgICByZWdpb246IHByb2Nlc3MuZW52LkNES19ERUZBVUxUX1JFR0lPTixcbiAgICBhY2NvdW50OiBwcm9jZXNzLmVudi5DREtfREVGQVVMVF9BQ0NPVU5ULFxuICB9XG59KTtcblxuY29uc3QgbGFtYmRhUHJvcHM6IGxhbWJkYS5GdW5jdGlvblByb3BzID0ge1xuICBjb2RlOiBsYW1iZGEuQ29kZS5mcm9tQXNzZXQoYCR7X19kaXJuYW1lfS9sYW1iZGFgKSxcbiAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzE2X1gsXG4gIGhhbmRsZXI6ICdpbmRleC5oYW5kbGVyJyxcbn07XG5cbm5ldyBMYW1iZGFUb09wZW5TZWFyY2goc3RhY2ssICd0ZXN0LWxhbWJkYS1vcGVuc2VhcmNoJywge1xuICBsYW1iZGFGdW5jdGlvblByb3BzOiBsYW1iZGFQcm9wcyxcbiAgb3BlblNlYXJjaERvbWFpbk5hbWU6IFwiZGVwbG95dGVzdHdpdGh2cGNwcm9wc1wiLFxuICBkZXBsb3lWcGM6IHRydWUsXG4gIHZwY1Byb3BzOiB7XG4gICAgaXBBZGRyZXNzZXM6IGVjMi5JcEFkZHJlc3Nlcy5jaWRyKCcxNzIuMTY4LjAuMC8xNicpLFxuICB9XG59KTtcblxuLy8gU3ludGhcbmFwcC5zeW50aCgpOyJdfQ==
|