Skip to content

Commit 67cc0e1

Browse files
committed
Existing Cluster OSS Pattern
1 parent acf7bc0 commit 67cc0e1

File tree

8 files changed

+40
-17
lines changed

8 files changed

+40
-17
lines changed

cdk.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,6 @@
2424
"nodes.dashboard.url": "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/main/artifacts/grafana-dashboards/eks/infrastructure/nodes.json",
2525
"workloads.dashboard.url": "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/main/artifacts/grafana-dashboards/eks/infrastructure/workloads.json",
2626
"existing.cluster.name": "single-new-eks-observability-accelerator",
27-
"existing.kubectl.rolename": "YOUR_KUBECTL_ROLENAME"
27+
"existing.kubectl.rolename": "single-new-eks-observabil-singleneweksobservabilit-1CDITBAY1CKM2"
2828
}
2929
}

lib/common/observability-builder.ts

Lines changed: 31 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,37 @@ import { Construct } from 'constructs';
55

66

77

8-
export class ObservabilityBuilder {
9-
10-
public static builder(): blueprints.BlueprintBuilder {
11-
return new blueprints.BlueprintBuilder()
12-
.addOns(
13-
new blueprints.NestedStackAddOn({
14-
id: "usage-tracking-addon",
15-
builder: UsageTrackingAddOn.builder(),
16-
}),
17-
new blueprints.addons.VpcCniAddOn(),
18-
new blueprints.addons.CoreDnsAddOn(),
19-
new blueprints.addons.MetricsServerAddOn(),
20-
new blueprints.addons.PrometheusNodeExporterAddOn(),
21-
new blueprints.addons.KubeStateMetricsAddOn());
8+
export class ObservabilityBuilder extends blueprints.BlueprintBuilder {
9+
10+
public addNewClusterObservabilityBuilderAddOns(): ObservabilityBuilder {
11+
return this.addOns(
12+
new blueprints.addons.VpcCniAddOn(),
13+
new blueprints.addons.CoreDnsAddOn(),
14+
new blueprints.addons.MetricsServerAddOn(),
15+
new blueprints.addons.PrometheusNodeExporterAddOn(),
16+
new blueprints.addons.KubeStateMetricsAddOn());
17+
}
18+
19+
public addExistingClusterObservabilityBuilderAddOns(): ObservabilityBuilder {
20+
return this.addOns(
21+
new blueprints.addons.AwsLoadBalancerControllerAddOn(),
22+
new blueprints.addons.CertManagerAddOn());
23+
}
24+
25+
public static builder(): ObservabilityBuilder {
26+
const builder = new ObservabilityBuilder();
27+
builder.addOns(
28+
new blueprints.NestedStackAddOn({
29+
id: "usage-tracking-addon",
30+
builder: UsageTrackingAddOn.builder(),
31+
}));
32+
return builder;
33+
34+
// new blueprints.addons.VpcCniAddOn(),
35+
// new blueprints.addons.CoreDnsAddOn(),
36+
// new blueprints.addons.MetricsServerAddOn(),
37+
// new blueprints.addons.PrometheusNodeExporterAddOn(),
38+
// new blueprints.addons.KubeStateMetricsAddOn());
2239
}
2340
}
2441

lib/existing-eks-opensource-observability-construct/index.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { ImportClusterProvider, utils } from '@aws-quickstart/eks-blueprints';
33
import * as blueprints from '@aws-quickstart/eks-blueprints';
44
import { GrafanaOperatorSecretAddon } from './grafanaoperatorsecretaddon';
55
import * as amp from 'aws-cdk-lib/aws-aps';
6-
import { ExistingClusterObservabilityBuilder } from '../common/existing-cluster-observability-builder';
6+
import { ObservabilityBuilder } from '../common/observability-builder';
77
import * as cdk from "aws-cdk-lib";
88
import * as eks from 'aws-cdk-lib/aws-eks';
99

@@ -84,9 +84,10 @@ export default class ExistingEksOpenSourceobservabilityConstruct {
8484
new GrafanaOperatorSecretAddon(),
8585
];
8686

87-
ExistingClusterObservabilityBuilder.builder()
87+
ObservabilityBuilder.builder()
8888
.account(account)
8989
.region(region)
90+
.addExistingClusterObservabilityBuilderAddOns()
9091
.clusterProvider(importClusterProvider)
9192
.resourceProvider(blueprints.GlobalResources.Vpc, new blueprints.VpcProvider(vpcId)) // this is required with import cluster provider
9293
.resourceProvider(ampWorkspaceName, new blueprints.CreateAmpProvider(ampWorkspaceName, ampWorkspaceName))

lib/single-new-eks-awsnative-observability-construct/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ export default class SingleNewEksClusterAWSNativeobservabilityConstruct {
2525
ObservabilityBuilder.builder()
2626
.account(account)
2727
.region(region)
28+
.addNewClusterObservabilityBuilderAddOns()
2829
.addOns(...addOns)
2930
.build(scope, stackId);
3031
}

lib/single-new-eks-cluster-construct/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ export default class SingleNewEksConstruct {
1717
ObservabilityBuilder.builder()
1818
.account(account)
1919
.region(region)
20+
.addNewClusterObservabilityBuilderAddOns()
2021
.addOns(...addOns)
2122
.build(scope, stackId);
2223
}

lib/single-new-eks-mixed-observability-construct/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ export default class SingleNewEksMixedobservabilityConstruct {
3434
ObservabilityBuilder.builder()
3535
.account(account)
3636
.region(region)
37+
.addNewClusterObservabilityBuilderAddOns()
3738
.addOns(...addOns)
3839
.build(scope, stackId);
3940
}

lib/single-new-eks-opensource-observability-construct/graviton-index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ export default class SingleNewEksGravitonOpenSourceObservabilityConstruct {
7777
ObservabilityBuilder.builder()
7878
.account(account)
7979
.region(region)
80+
.addNewClusterObservabilityBuilderAddOns()
8081
.resourceProvider(ampWorkspaceName, new blueprints.CreateAmpProvider(ampWorkspaceName, ampWorkspaceName))
8182
.clusterProvider(new blueprints.MngClusterProvider(mngProps))
8283
.addOns(...addOns)

lib/single-new-eks-opensource-observability-construct/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ export default class SingleNewEksOpenSourceobservabilityConstruct {
7373
ObservabilityBuilder.builder()
7474
.account(account)
7575
.region(region)
76+
.addNewClusterObservabilityBuilderAddOns()
7677
.resourceProvider(ampWorkspaceName, new blueprints.CreateAmpProvider(ampWorkspaceName, ampWorkspaceName))
7778
.addOns(...addOns)
7879
.build(scope, stackId);

0 commit comments

Comments
 (0)