You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We are experimenting using vcluster to shard a cluster with 10K+ services between multiple vclusters.
It has been working perfectly for 2 weeks but we hit the first issue today: the etcd statefulset and the syncer deployment died and failed to start up due to there being too many environment variables. This is a known issue in clusters with too many services, and the workaround we usually employ is to disable pod's service links, as each service ends up as another environment variable to a pod.
Edit to add: we have disabled service links manually in the etcd statefulset and syncer deployment and everything seems to be working.
What did you expect to happen?
Either:
for enableServiceLinks to be set to false (if vcluster does not work without DNS service discovery in the host cluster, I don't think there is a reason to leave that to the default true value)
a chart value allowing service links to be disabled
How can we reproduce it (as minimally and precisely as possible)?
Create 10K+ services in a cluster.
k get svc -A | wc -l
15405
Anything else we need to know?
I could open a PR for this (or for the related #1622 which would also fix this issue for us). I just see the charts on the v0.19 branch, is that the branch a potential PR should target?
Host cluster Kubernetes version
$ kubectl versionClient Version: v1.28.0Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3Server Version: v1.25.16-eks-b9c9ed7WARNING: version difference between client (1.28) and server (1.25) exceeds the supported minor version skew of +/-1
What happened?
We are experimenting using vcluster to shard a cluster with 10K+ services between multiple vclusters.
It has been working perfectly for 2 weeks but we hit the first issue today: the etcd statefulset and the syncer deployment died and failed to start up due to there being too many environment variables. This is a known issue in clusters with too many services, and the workaround we usually employ is to disable pod's service links, as each service ends up as another environment variable to a pod.
Currently, however, there is no way to disable service links in the k8s chart
https://github.com/loft-sh/vcluster/blob/v0.19/charts/k8s/templates/etcd-statefulset.yaml
Edit to add: we have disabled service links manually in the etcd statefulset and syncer deployment and everything seems to be working.
What did you expect to happen?
Either:
How can we reproduce it (as minimally and precisely as possible)?
Create 10K+ services in a cluster.
Anything else we need to know?
I could open a PR for this (or for the related #1622 which would also fix this issue for us). I just see the charts on the v0.19 branch, is that the branch a potential PR should target?
Host cluster Kubernetes version
Host cluster Kubernetes distribution
vlcuster version
Vcluster Kubernetes distribution(k3s(default)), k8s, k0s)
OS and Arch
The text was updated successfully, but these errors were encountered: