Open ddelange opened 1 year ago
Re-reading the linked thread: I think this might me more of a request for documentation actually.
What is the kOps recommended way to opt in whenever a node from the (mixed) instance group happens to have local instance storage? E.g. for the IG "c6g.8xlarge", "c6gd.8xlarge", "c7g.8xlarge"
which contains 2 regular nodes and 1 with NVMe.
And the same question goes for the control-plane nodes, although it's probably analogous :)
This would potentially also allow swap (for which EBS is prohibitively slow): https://kubernetes.io/docs/concepts/architecture/nodes/#swap-memory
xref https://github.com/kubernetes/kops/issues/3251, https://github.com/kubernetes/kops/issues/14950
The Kubernetes project currently lacks enough contributors to adequately respond to all issues.
This bot triages un-triaged issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
/remove-lifecycle stale
The Kubernetes project currently lacks enough contributors to adequately respond to all issues.
This bot triages un-triaged issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
/remove-lifecycle stale
The Kubernetes project currently lacks enough contributors to adequately respond to all issues.
This bot triages un-triaged issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
/remove-lifecycle stale
/kind feature
1. Describe IN DETAIL the feature/behavior/change you would like to see.
Hi!π
kOps can safely mount the local instance storage as root volume, instead of EBS, for a substantial performance boost whilst saving money.
2. Feel free to provide a design supporting your feature request.
Pasting the motivation and afaik the current state:
I have some containers that need fast temporary storage (around 100GB) we were using gp2 type AWS EBS volumes however they would quickly run out of burst balance. Local instance storage seemed like the perfect replacement as it would reduce the spend on slow EBS volumes and provide fast temporary storage. However I quickly found that Kubernetes doesn't seem to have quite implemented a way to use the local instance storage yet.
I wanted to use
emptyDir
volumes on my containers that needed fast local temporary storage so I tried moving/var/lib/kubelet
to local instance storage by specifying it in the instance group configuration:However like previous posters have mentioned I started seeing issues with disk pressure and the pods being evicted even though the local instance storage had only used 35% capacity.
Instead we have now switched to using a
hostPath
volume with aninitContainer
to set the correct permissions in the host directory. Our kops instance group now looks like this:Relevant container configuration:
What would be nice is to be able to specify the root volume in kops to use the local instance storage rather than having to be backed by EBS. I think this makes sense as the EBS volume is only used for temporary storage and is deleted when the instance is deleted.
Originally posted by @elliotdobson in https://github.com/kubernetes/kops/issues/429#issuecomment-689803817