What Is New in Helm 2.4?
| Category | Highlights |
|---|---|
| New Features | Native support for Kubernetes 1.6, pluggable downloaders, service‑account flag for helm init, --net-host flag. |
| Improvements | zsh completion, new template function merge, release object locking, Prometheus hooks for Tiller, version‑constraint checks. |
| Breaking Changes | Template include failures now abort, missing chart dependencies cause install errors, TLS client auth policy tightened. |
| Bug Fixes | Fixed TOML panic, corrected default NOTES.txt URL, resolved nil pointer in requirements handling, increased gRPC message size. |
| Security | Upgraded to gRPC 1.2, refined TLS auth, added Prometheus metrics for Tiller monitoring. |
What new capabilities does Helm 2.4 bring to Kubernetes 1.6 users?
Helm 2.4 is compiled against Kubernetes 1.6, unlocking all native APIs and RBAC defaults introduced in that release.
- Service‑account aware Tiller installation via
helm init --service-account=SOME_NAME. - Optional
--net-hostflag for clusters that require host networking. - Prometheus‑compatible hooks let you monitor Tiller health without extra tooling.
In practice this means you can adopt Helm in a 1.6‑first environment without custom patches.
How does Helm 2.4 improve the developer experience?
Several quality‑of‑life tweaks make day‑to‑day chart work smoother.
- zsh completion is now built‑in; run
helm completion zshto enable. - The new
mergetemplate function (from Sprig 2.11.0) simplifies combining maps. - Release objects are locked during updates, preventing race conditions.
- Canary images and
--net-hostsupport reduce friction when testing Tiller upgrades.
What breaking changes should I watch for when upgrading?
Helm 2.4 tightens error handling to avoid silent failures.
- If an
includetemplate cannot be resolved, the whole render aborts. - Missing dependencies listed in
requirements.yamlnow causehelm installto fail. - The TLS client‑auth policy introduced in 2.3 has been hardened; ensure your certs match the new expectations.
These changes protect you from deploying incomplete releases.
Which bugs were fixed in Helm 2.4?
Stability got a noticeable boost.
- Resolved a panic when parsing empty TOML files.
- Fixed a nil‑pointer crash in
requirements.go. - Increased the maximum gRPC payload size to accommodate larger releases.
- Corrected the default URL in the generated
NOTES.txtfile.
What security enhancements are included?
Helm 2.4 upgrades its communication layer and observability.
- gRPC upgraded to version 1.2, bringing modern cipher suites.
- TLS client authentication policy refined for tighter mutual TLS checks.
- Prometheus hooks expose Tiller metrics, making it easier to spot anomalies.
FAQ
How do I upgrade an existing Helm installation to 2.4?
Run helm init --upgrade after installing the 2.4 client binary. If you use RBAC, add --service-account or configure the account manually.
Do I need to rebuild Tiller when moving to Kubernetes 1.6?
No rebuild is required; just upgrade Tiller with helm init --upgrade. Ensure the service account has the proper role bindings.
Can I still use charts that rely on older Helm versions?
Yes, but any chart with missing dependencies will now be rejected during install. Run helm dependency update to fetch missing sub‑charts.
What is the purpose of the new downloaders plugin hook?
It lets a plugin claim a custom URL scheme (e.g., s3://) so Helm will invoke the plugin to fetch chart assets, extending Helm’s source flexibility.
Is the merge function safe for deep map merges?
It performs a shallow merge of top‑level keys; for nested structures you’ll need to chain calls or write a custom helper.
For a complete walkthrough, see the Helm Quickstart Guide.