0
votes

I have a chart that is installing a pod to kubernetes. since that Helm allows us to set values in a single chart, i decided to create a reusable chart that allows me to create multiple pod with the same chart configuration.

I'm trying to create about 10,000 pods, and using helm install is easiest way since that im reusing the chart config. I was wondering how can i improve the performance of helm install?

I tried to scale tiller-deploy to about 4, but only one of the pods that are processing the helm requests.

Example script to create 10,000 pods

created = has_created(`helm status #{$name} 2>&1`)
if !created
    `helm install --name=#{$name} --set start=#{$start} --set end=#{$until} --set key=#{$key} ./chart`
    p "deployed #{$name} release"
end

Thanks

2

2 Answers

0
votes

Your bottleneck is not tiller, it’s the way that you’re starting the process. What about to run this process in background or use a modern language to create this in a thread?

0
votes

You could try to have a single chart that you install that has a long requirements list of your 10,000 pods with different variables passed, that way helm can send a single install command and tiller can take care of the rest. This might be a bit faster as you limit the communication between helm and tiller.