Skip to content

Commit a74e633

Browse files
Merge branch 'awslabs:main' into nodegroup
2 parents a1d6eae + 1298ef1 commit a74e633

File tree

5 files changed

+37
-33
lines changed

5 files changed

+37
-33
lines changed

tests/pipelines/eks/awscli-cl2-load-with-addons.yaml

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -95,32 +95,32 @@ spec:
9595
taskRef:
9696
kind: Task
9797
name: awscli-eks-nodegroup-create
98-
- name: create-mng-nodes
98+
- name: install-fluentbit-addon
9999
params:
100100
- name: cluster-name
101101
value: $(params.cluster-name)
102-
- name: desired-nodes
103-
value: $(params.desired-nodes)
104-
- name: host-cluster-node-role-name
105-
value: $(params.cluster-name)-node-role
106102
- name: endpoint
107103
value: $(params.endpoint)
108104
runAfter:
109105
- create-mng-monitoring-nodes
110106
taskRef:
111107
kind: Task
112-
name: awscli-eks-nodegroup-create
113-
- name: install-fluentbit-addon
108+
name: eks-addon-fluentbit
109+
- name: create-mng-nodes
114110
params:
115111
- name: cluster-name
116112
value: $(params.cluster-name)
113+
- name: desired-nodes
114+
value: $(params.desired-nodes)
115+
- name: host-cluster-node-role-name
116+
value: $(params.cluster-name)-node-role
117117
- name: endpoint
118118
value: $(params.endpoint)
119119
runAfter:
120-
- create-mng-nodes
120+
- install-fluentbit-addon
121121
taskRef:
122122
kind: Task
123-
name: eks-addon-fluentbit
123+
name: awscli-eks-nodegroup-create
124124
- name: create-cw-agent-addon
125125
params:
126126
- name: cluster-name
@@ -147,7 +147,6 @@ spec:
147147
- name: amp-workspace-id
148148
value: '$(params.amp-workspace-id)'
149149
runAfter:
150-
- install-fluentbit-addon
151150
- create-cw-agent-addon
152151
taskRef:
153152
kind: Task

tests/pipelines/eks/awscli-eks-cl2-load.yaml

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ spec:
8181
runAfter:
8282
- create-cluster-node-role
8383
- create-cluster-service-role
84+
- awscli-vpc-create
8485
taskRef:
8586
kind: Task
8687
name: awscli-eks-cluster-create-with-vpc-stack
@@ -107,32 +108,32 @@ spec:
107108
taskRef:
108109
kind: Task
109110
name: awscli-eks-nodegroup-create
110-
- name: create-mng-nodes
111+
- name: install-fluentbit-addon
111112
params:
112113
- name: cluster-name
113114
value: $(params.cluster-name)
114-
- name: desired-nodes
115-
value: $(params.desired-nodes)
116-
- name: host-cluster-node-role-name
117-
value: "$(params.cluster-name)-node-role"
118115
- name: endpoint
119116
value: $(params.endpoint)
120117
runAfter:
121118
- create-mng-monitoring-nodes
122119
taskRef:
123120
kind: Task
124-
name: awscli-eks-nodegroup-create
125-
- name: install-fluentbit-addon
121+
name: eks-addon-fluentbit
122+
- name: create-mng-nodes
126123
params:
127124
- name: cluster-name
128125
value: $(params.cluster-name)
126+
- name: desired-nodes
127+
value: $(params.desired-nodes)
128+
- name: host-cluster-node-role-name
129+
value: "$(params.cluster-name)-node-role"
129130
- name: endpoint
130131
value: $(params.endpoint)
131132
runAfter:
132-
- create-mng-nodes
133+
- install-fluentbit-addon
133134
taskRef:
134135
kind: Task
135-
name: eks-addon-fluentbit
136+
name: awscli-eks-nodegroup-create
136137
- name: generate
137138
params:
138139
- name: pods-per-node
@@ -152,7 +153,7 @@ spec:
152153
- name: amp-workspace-id
153154
value: '$(params.amp-workspace-id)'
154155
runAfter:
155-
- install-fluentbit-addon
156+
- create-mng-nodes
156157
taskRef:
157158
kind: Task
158159
name: load

tests/tasks/addons/fluentbit.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,4 +48,5 @@ spec:
4848
EOL
4949
kubectl apply -f ./fluentbit-configmap.yaml
5050
kubectl apply -f https://raw.githubusercontent.com/aws-samples/amazon-cloudwatch-container-insights/latest/k8s-deployment-manifest-templates/deployment-mode/daemonset/container-insights-monitoring/fluent-bit/fluent-bit.yaml
51+
kubectl patch daemonset fluent-bit -n amazon-cloudwatch -p='{"spec":{"template": {"spec": {"tolerations": [{"key": "monitoring", "operator": "Equal", "value": "true", "effect": "NoSchedule"}]}}}}'
5152
kubectl rollout status daemonset fluent-bit -n amazon-cloudwatch --timeout 5m

tests/tasks/generators/clusterloader/load.yaml

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ spec:
1212
default: https://github.com/kubernetes/perf-tests.git
1313
- name: cl2-branch
1414
description: "The branch of clusterloader2 you want to use"
15-
default: "release-1.23"
15+
default: "master"
1616
- name: nodes-per-namespace
1717
description: "nodes per namespace to get created for load test "
1818
default: "100"
@@ -75,22 +75,19 @@ spec:
7575
MEDIUM_STATEFUL_SETS_PER_NAMESPACE: 0
7676
# we are not testing PVS at this point
7777
CL2_ENABLE_PVS: false
78-
PROMETHEUS_SCRAPE_KUBE_PROXY: true
78+
PROMETHEUS_SCRAPE_KUBE_PROXY: false
7979
PROMETHEUS_SCRAPE_APISERVER_ONLY: true
8080
ENABLE_SYSTEM_POD_METRICS: false
8181
NODE_MODE: master
82+
CL2_DISABLE_DAEMONSETS: true
83+
CL2_ALLOWED_SLOW_API_CALLS: 1000000
84+
CL2_PROMETHEUS_NODE_SELECTOR: "eks.amazonaws.com/nodegroup: monitoring-$(params.cluster-name)-nodes-1"
8285
EOL
8386
cat $(workspaces.source.path)/overrides.yaml
8487
cp $(workspaces.source.path)/overrides.yaml $(workspaces.results.path)/overrides.yaml
8588
8689
# Enable Prometheus if the remote workspace id is provided
8790
if [ -n "$(params.amp-workspace-id)" ]; then
88-
# TODO: Currently pathing the prometheus manifests for remote write. Move this to upsteam going forward.
89-
echo "volumeBindingMode: WaitForFirstConsumer" >> $(workspaces.source.path)/perf-tests/clusterloader2/pkg/prometheus/manifests/0ssd-storage-class.yaml
90-
cat $(workspaces.source.path)/perf-tests/clusterloader2/pkg/prometheus/manifests/0ssd-storage-class.yaml
91-
# TODO: Currently for v1.23 tests the node selector is hardcoded and can't be changed https://github.com/kubernetes/perf-tests/blob/release-1.23/clusterloader2/pkg/prometheus/manifests/prometheus-prometheus.yaml#L15 via params. So for patching i am deleting the existing node selector and re-adding the updated node-selector later. Since this has been fixed in the current master https://github.com/kubernetes/perf-tests/blob/master/clusterloader2/pkg/prometheus/manifests/prometheus-prometheus.yaml#L24 we can get rid of this going forward.
92-
sed -i '/nodeSelector/d' $(workspaces.source.path)/perf-tests/clusterloader2/pkg/prometheus/manifests/prometheus-prometheus.yaml
93-
sed -i '/kubernetes.io\/os: linux/d' $(workspaces.source.path)/perf-tests/clusterloader2/pkg/prometheus/manifests/prometheus-prometheus.yaml
9491
cat << EOF >> $(workspaces.source.path)/perf-tests/clusterloader2/pkg/prometheus/manifests/prometheus-prometheus.yaml
9592
containers:
9693
- name: aws-sigv4-proxy-sidecar
@@ -116,14 +113,18 @@ spec:
116113
externalLabels:
117114
cluster_name: $(params.cluster-name)
118115
s3_path: $S3_RESULT_PATH
119-
nodeSelector:
120-
kubernetes.io/os: linux
121-
eks.amazonaws.com/nodegroup: monitoring-$(params.cluster-name)-nodes-1
122116
EOF
123117
cat $(workspaces.source.path)/perf-tests/clusterloader2/pkg/prometheus/manifests/prometheus-prometheus.yaml
118+
cat << EOF >> $(workspaces.source.path)/perf-tests/clusterloader2/pkg/prometheus/manifests/0prometheus-operator-deployment.yaml
119+
tolerations:
120+
- key: monitoring
121+
operator: Exists
122+
effect: NoSchedule
123+
EOF
124+
cat $(workspaces.source.path)/perf-tests/clusterloader2/pkg/prometheus/manifests/0prometheus-operator-deployment.yaml
124125
fi
125126
- name: run-loadtest
126-
image: 197575167141.dkr.ecr.us-west-2.amazonaws.com/clusterloader2:latest
127+
image: '197575167141.dkr.ecr.us-west-2.amazonaws.com/clusterloader2:a15645'
127128
onError: continue
128129
script: |
129130
#!/bin/bash
@@ -132,7 +133,7 @@ spec:
132133
ENDPOINT_FLAG="--endpoint $(params.endpoint)"
133134
fi
134135
if [ -n "$(params.amp-workspace-id)" ]; then
135-
CL2_PROMETHEUS_FLAGS="--enable-prometheus-server=true --prometheus-storage-class-provisioner kubernetes.io/aws-ebs --prometheus-storage-class-volume-type gp2 --prometheus-manifest-path=$(workspaces.source.path)/perf-tests/clusterloader2/pkg/prometheus/manifests/"
136+
CL2_PROMETHEUS_FLAGS="--enable-prometheus-server=true --prometheus-pvc-storage-class gp2 --prometheus-manifest-path=$(workspaces.source.path)/perf-tests/clusterloader2/pkg/prometheus/manifests/"
136137
fi
137138
aws eks $ENDPOINT_FLAG update-kubeconfig --name $(params.cluster-name) --region $(params.region)
138139
cat $(workspaces.source.path)/perf-tests/clusterloader2/testing/load/config.yaml

tests/tasks/setup/eks/awscli-cp-with-vpc.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,3 +62,5 @@ spec:
6262
kubectl set env daemonset/aws-node -n kube-system ENABLE_PREFIX_DELEGATION=true
6363
# install csi drivers.
6464
kubectl apply -k "github.com/kubernetes-sigs/aws-ebs-csi-driver/deploy/kubernetes/overlays/stable/?ref=$(params.aws-ebs-csi-driver-version)"
65+
# TODO: Calculate replicas based on the cluster size going forward.
66+
kubectl scale --replicas 20 deploy coredns -n kube-system

0 commit comments

Comments
 (0)