--- type: reference title: Kubernetes description: Current best practices for Kubernetes - Helm charts, k3s, k0s, and Talos Linux. tags: - kubernetes - helm - k3s - k0s - talos - infrastructure - engineering timestamp: 2026-08-11 verified: 2026-08-28 --- # Kubernetes This page covers current (2025/2026) best practices for Kubernetes. ## Helm Use Helm to manage charts. Follow the canonical chart layout: ``` my-chart/ ├── Chart.yaml ├── values.yaml ├── values.schema.json ├── charts/ ├── templates/ │ ├── deployment.yaml │ ├── service.yaml │ └── _helpers.tpl ├── .helmignore └── NOTES.txt ``` Use `_helpers.tpl` for consistent labels, such as `app.kubernetes.io/*`. Separate `values.yaml` per environment. Pin chart versions in CI. Run `helm lint` before packaging. Set `securityContext` to non-root and read-only root filesystem. Set resource requests and limits. ## Distribution Choices | Tool | Best For | Notes | |------|----------|-------| | k3s | Fast bootstrap | Single binary, embedded addons, quick setup. | | k0s | Vanilla Kubernetes | No host dependencies, `k0sctl` lifecycle tool. | | Talos Linux | Secure immutable clusters | Small footprint, API-driven config. | ### k3s Install with: ```bash curl -sfL https://get.k3s.io | sh - ``` k3s is a single binary under 100 MB. It is ready in about 30 seconds. Use SQLite for single-node or embedded etcd for high availability. ### Talos Linux Talos is an immutable Kubernetes OS. It has no SSH, no shell, and no package manager. Configure it with declarative YAML through the `talosctl` gRPC API. Use automatic A/B upgrades with rollback. ## Related Tools * Cilium or Calico for networking. * ArgoCD or Flux for GitOps deployment. * k0sctl for cluster lifecycle. ## Citations * [Helm](https://helm.sh/) * [k3s](https://k3s.io/) * [k0s](https://k0sproject.io/) * [Talos Linux](https://www.talos.dev/) ## See Also * [Docker and Podman](containers.md) * [Cloud Providers](cloud.md)