From c059808b2c7c9829a97daf5f78f25a7b8b658ed3 Mon Sep 17 00:00:00 2001 From: shapirov103 Date: Thu, 23 Jan 2025 17:15:24 -0500 Subject: [PATCH 1/4] upgraded to 1.16.3 and latest CDK. Added an ASG with Spot and termination handler --- bin/asg.ts | 28 ++++++++++++++++++++++++++++ package.json | 14 +++++++------- 2 files changed, 35 insertions(+), 7 deletions(-) create mode 100644 bin/asg.ts diff --git a/bin/asg.ts b/bin/asg.ts new file mode 100644 index 00000000..3e6f81d2 --- /dev/null +++ b/bin/asg.ts @@ -0,0 +1,28 @@ +import 'source-map-support/register'; +import * as cdk from 'aws-cdk-lib'; +import * as blueprints from '@aws-quickstart/eks-blueprints'; + +import { configureApp } from "../lib/common/construct-utils"; + +const app = configureApp(); + +const spotInterruptHandlerAddOn = new blueprints.addons.AwsNodeTerminationHandlerAddOn({ + version: "0.25.1", + repository: 'oci://public.ecr.aws/aws-ec2/helm/aws-node-termination-handler' + }); + +const clusterProvider = new blueprints.AsgClusterProvider({ + version: cdk.aws_eks.KubernetesVersion.V1_30, + minSize: 1, maxSize: 1, spotPrice: "0.10", + machineImageType: cdk.aws_eks.MachineImageType.BOTTLEROCKET, + id: "asg-spot", + name: "asg-spot", + spotInterruptHandler: false +}); + +const blueprint = blueprints.EksBlueprint.builder() + .region("us-west-2") + .version("auto") + .clusterProvider(clusterProvider) + .addOns(spotInterruptHandlerAddOn) + .build(app, 'asg-test'); \ No newline at end of file diff --git a/package.json b/package.json index b9d173ea..ba348e1d 100644 --- a/package.json +++ b/package.json @@ -24,12 +24,12 @@ "typescript": "^5.3.3" }, "dependencies": { - "@aws-quickstart/eks-blueprints": "1.16.1", + "@aws-quickstart/eks-blueprints": "1.16.3", "@aws-sdk/client-config-service": "^3.576.0", "@aws-sdk/client-eks": "^3.478.0", "@claranet-ch/konveyor-eks-blueprint-addon": "^1.0.2", "@datadog/datadog-eks-blueprints-addon": "^0.1.2", - "@dynatrace/dynatrace-eks-blueprints-addon": "^1.3.1-1 ", + "@dynatrace/dynatrace-eks-blueprints-addon": "^1.4.0-1", "@granulate/gmaestro-eks-blueprints-addon": "^1.0.16", "@instana/aws-eks-blueprint-addon": "^1.0.4", "@kastenhq/kasten-eks-blueprints-addon": "^1.0.1", @@ -40,16 +40,16 @@ "@paralus/paralus-eks-blueprints-addon": "^0.1.5", "@rafaysystems/rafay-eks-blueprints-addon": "^0.0.2", "@snyk-partners/snyk-monitor-eks-blueprints-addon": "^1.1.1", - "aws-cdk": "2.162.1", - "aws-cdk-lib": "2.162.1", + "aws-cdk": "2.173.4", + "aws-cdk-lib": "2.173.4", "eks-blueprints-cdk-kubeflow-ext": "0.1.9", "kubeshark": "^0.0.9", "source-map-support": "^0.5.21" }, "overrides": { - "@aws-quickstart/eks-blueprints": "1.16.1", - "aws-cdk": "2.162.1", - "aws-cdk-lib": "2.162.1", + "@aws-quickstart/eks-blueprints": "1.16.3", + "aws-cdk": "2.173.4", + "aws-cdk-lib": "2.173.4", "xml2js": "0.5.0", "@aws-cdk/core": "../_EXCLUDED_", "axios": "^1.6.2" From 035534fc9ef010287a9a298d0735e7d8563702e5 Mon Sep 17 00:00:00 2001 From: shapirov103 Date: Thu, 23 Jan 2025 17:29:35 -0500 Subject: [PATCH 2/4] changed CI from mac to ubuntu --- .github/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index b25d7ecd..efc5fd84 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -8,7 +8,7 @@ on: jobs: build: - runs-on: macos-12 + runs-on: ubuntu-latest strategy: matrix: From 7c1cb3a156b91a9b45cded749a07218defb72f3e Mon Sep 17 00:00:00 2001 From: shapirov103 Date: Thu, 23 Jan 2025 17:35:58 -0500 Subject: [PATCH 3/4] reverted the change from ubuntu to macos due to dependency on brew --- .github/workflows/ci.yaml | 2 +- Makefile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index efc5fd84..ac13dfed 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -8,7 +8,7 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: macos-14 strategy: matrix: diff --git a/Makefile b/Makefile index 525b2420..457eaac0 100644 --- a/Makefile +++ b/Makefile @@ -56,7 +56,7 @@ bootstrap: check-lib: ifeq ($(shell brew ls --versions $(LIB)),) - @echo Installing $(LIB) via Hombrew + @echo Installing $(LIB) via Homebrew @brew install $(LIB) else @echo $(LIB) is already installed, skipping. From 5442d45309e653df7297069d7aed669b28921d5c Mon Sep 17 00:00:00 2001 From: shapirov103 Date: Thu, 23 Jan 2025 17:38:46 -0500 Subject: [PATCH 4/4] fixed indentation to comply with rules --- bin/asg.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/asg.ts b/bin/asg.ts index 3e6f81d2..7232edfe 100644 --- a/bin/asg.ts +++ b/bin/asg.ts @@ -7,9 +7,9 @@ import { configureApp } from "../lib/common/construct-utils"; const app = configureApp(); const spotInterruptHandlerAddOn = new blueprints.addons.AwsNodeTerminationHandlerAddOn({ - version: "0.25.1", - repository: 'oci://public.ecr.aws/aws-ec2/helm/aws-node-termination-handler' - }); + version: "0.25.1", + repository: 'oci://public.ecr.aws/aws-ec2/helm/aws-node-termination-handler' +}); const clusterProvider = new blueprints.AsgClusterProvider({ version: cdk.aws_eks.KubernetesVersion.V1_30,