Skip to content

Commit

Permalink
Almost have the testing environment built to be able to finish the si…
Browse files Browse the repository at this point in the history
…m testing
  • Loading branch information
nathangeology committed Jun 26, 2024
1 parent dad0898 commit b39d1aa
Show file tree
Hide file tree
Showing 6 changed files with 47 additions and 35 deletions.
2 changes: 1 addition & 1 deletion kwok/apis/crds/karpenter.kwok.sh_kwoknodeclasses.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.15.0
name: kwoknodeclasses.karpenter.kwok.sh
spec:
group: karpenter.kwok.sh
Expand Down
2 changes: 1 addition & 1 deletion kwok/charts/crds/karpenter.sh_nodeclaims.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.15.0
name: nodeclaims.karpenter.sh
spec:
group: karpenter.sh
Expand Down
2 changes: 1 addition & 1 deletion kwok/charts/crds/karpenter.sh_nodepools.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.15.0
name: nodepools.karpenter.sh
spec:
group: karpenter.sh
Expand Down
2 changes: 1 addition & 1 deletion pkg/apis/crds/karpenter.sh_nodeclaims.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.15.0
name: nodeclaims.karpenter.sh
spec:
group: karpenter.sh
Expand Down
2 changes: 1 addition & 1 deletion pkg/apis/crds/karpenter.sh_nodepools.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.15.0
name: nodepools.karpenter.sh
spec:
group: karpenter.sh
Expand Down
72 changes: 42 additions & 30 deletions test/suites/perf/local_cluster_setup.sh
Original file line number Diff line number Diff line change
@@ -1,36 +1,11 @@
context_name="karpenter-test-kind-cluster"
context_name="chart-testing"
prom_ns="prometheus"


kind create cluster --name ${context_name}
cd ..
cd ..
cd ..
make apply-with-kind
cat <<EOF | envsubst | kubectl apply -f -
apiVersion: karpenter.sh/v1beta1
kind: NodePool
metadata:
name: default
spec:
template:
spec:
requirements:
- key: kubernetes.io/arch
operator: In
values: ["amd64"]
- key: kubernetes.io/os
operator: In
values: ["linux"]
- key: karpenter.sh/capacity-type
operator: In
values: ["spot"]
nodeClassRef:
name: nil
limits:
cpu: 1500
disruption:
consolidationPolicy: WhenUnderutilized
expireAfter: 720h # 30 * 24h = 720h
EOF
kubectl create namespace "$prom_ns"
helm upgrade --values valuesv3.yaml --install prometheus prometheus-community/kube-prometheus-stack -n "$prom_ns" \
--set "kubelet.serviceMonitor.cAdvisorRelabelings[0].targetLabel=metrics_path" \
Expand All @@ -45,12 +20,49 @@ helm upgrade --values valuesv3.yaml --install prometheus prometheus-community/ku
--set "kubelet.serviceMonitor.cAdvisorRelabelings[4].targetLabel=commitsAfterTag" \
--set "kubelet.serviceMonitor.cAdvisorRelabelings[4].replacement=\"$(git describe --tags | cut -d '-' -f 2)\"" \
--wait
#make toolchain
make install-kwok
KWOK_REPO=kind.local
KIND_CLUSTER_NAME=chart-testing
make apply-with-kind

# Testing out pyroscope for profiling
helm repo add grafana https://grafana.github.io/helm-charts
helm repo update
# This only creates one replica for testing, but not multiple backends
#kubectl create namespace pyroscope-test
helm -n karpenter install pyroscope grafana/pyroscope
make test
helm -n kube-system install pyroscope grafana/pyroscope
kubectl taint nodes chart-testing-control-plane CriticalAddonsOnly:NoSchedule
#cat <<EOF | envsubst | kubectl apply -f -
#apiVersion: karpenter.sh/v1beta1
#kind: NodePool
#metadata:
# name: default
#spec:
# template:
# spec:
# requirements:
# - key: kubernetes.io/arch
# operator: In
# values: ["amd64"]
# - key: kubernetes.io/os
# operator: In
# values: ["linux"]
# - key: karpenter.sh/capacity-type
# operator: In
# values: ["spot"]
# nodeClassRef:
# name: nil
# limits:
# cpu: 1500
# disruption:
# consolidationPolicy: WhenUnderutilized
# expireAfter: 720h # 30 * 24h = 720h
#EOF
kubectl get pods -n kube-system | grep karpenter
kubectl get nodepools
kubectl get pods -A
kubectl describe nodes
make e2etests
read -p "press enter to delete cluster" temp_var
kind delete cluster --name ${context_name}

0 comments on commit b39d1aa

Please sign in to comment.