frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Getting tired of Helm – any better way to handle deployments in Kubernetes?

25•DeborahEmeni_•9mo ago
I’ve been deep in Helm templates lately and it’s starting to feel like YAML hell. It was fine when we had a few services, but now it’s just hard to manage. Anyone found a workflow that avoids Helm altogether? Or made Helm manageable at scale?

Comments

LarsLarson•9mo ago
We are using kustomize to create the yaml and argocd for deployment. All via ci and git-ops.

works really well

GauntletWizard•9mo ago
I'm a huge fan of Kustomize. I'm ambivalent towards argocd, but Kustomize is as close to a DWIM tooling as it's possible to get for Kubernetes.
OhSoHumble•9mo ago
Also using Kustomiza and Argo. It's really good imo.
natbennett•9mo ago
I prefer ytt for templating and kapp for deployments.

https://github.com/carvel-dev/carvel

johnjungles•9mo ago
ArgoCD
dvektor•9mo ago
Yeah the whole 'git repo = helm chart' just does not feel great at all. As we all know, the only thing worse is not using helm and having to deal with writing all those service, pv, pvc, ingress yaml files individually :)
haiku2077•9mo ago
ArgoCD for relatively simple stuff.

For complex stuff I write Python or Go programs to build manifests, then shell out to kubectl apply. An old example - deploying a multi-instance modded Arma 3 server on k3s: https://github.com/dharmab/homelab-k3s/tree/main/lab

a-saleh•9mo ago
Why just simple?

T.b.h. if I were to write a manifest generator, I would still probably commit the thing into a repo and let argo do the rest. Maybe even fiddled around to make the generator into a config-management-plugin ... but that feels like over-doing it.

Nerudite•9mo ago
Helmsman works great:

https://github.com/mkubaczyk/helmsman

b11484•9mo ago
I've been working on improving a tool called kr8+, which uses jsonnet to combine cluster config and apply it to components: https://github.com/ice-bergtech/kr8
Vespasian•9mo ago
My recommendation is fluxcd for a great gitops based workflow (incorporates soap for secrets)
atmosx•9mo ago
Kustomize is easier to manage at scale, but some upfront effort is required. Many charts are distributed as Helm packages, so you’ll often need to export them as raw YAML manifests. In an ideal setup, ArgoCD combined with Kustomize should cover most deployment needs. However, depending on your workflow, you may eventually need a way to dynamically replace variables. If the built-in tools in recent Kustomize versions aren’t sufficient, consider using envsubst as a fallback.
GauntletWizard•9mo ago
I handle deploy time dynamic variables with `sed`. You shouldn't need more complexity than that.

(Not that I haven't had the need, I've use jsonnet with libk8s at scale. But if you're asking the question this simply, you probably don't need it)

atmosx•9mo ago
> I handle deploy time dynamic variables with `sed`

I brought up envsubst because it’s a simpler, cleaner, and often overlooked option for variable substitution.

> Not that I haven't had the need, I've use jsonnet with libk8s at scale. But if you're asking the question this simply, you probably don't need it

In my view, Jsonnet isn’t an improvement - it’s complicated to learn, cumbersome to use, and prone to mistakes.

That said, if an organization decides to adopt any specific tool, I believe consistency in tooling, design, and practices is more important than the tool itself.

arccy•9mo ago
if you only work with your own stuff, helm is easily (and best) avoided.

i like generating k8s yaml with cue, example: https://github.com/cue-labs/cue-by-example/tree/main/003_kub...

there's also https://timoni.sh/ if you want a helm-like experience, but with cue instead of templating.

If you're working with upstream projects, unfortunately many of them will only provide helm charts, so you got to decide between rewriting them to suit your env/tool, or just live with the crappiness of helm.

delduca•9mo ago
+1 for Kustomize
bithavoc•9mo ago
I use Pulumi native package for Kubernetes, no more YAML, only instances of Typescript classes.
Kerbonut•9mo ago
I built my own tooling around templated manifest files (jinja2) and management via ansible playbooks (templated).
1024kb•9mo ago
What exactly are you doing with Helm that's making it so painful to use, and what does your development workflow look like? I've certainly had my fair share of issues with Helm, especially when trying to get a bit too fancy with creating Helm libraries, and standardised charts. I've also found that trying to aggregate multiple charts into a single chart for deploying an environment can also become a nightmare to manage.

I'm currently looking at Helmfile so that I don't need to aggregate charts into a 'parent chart', and i'd also like to move towards a single standardised chart that all microservices can use, rather than spin up a new chart for each service.

Open-Sourcery•9mo ago
Holos.run for my homelab cluster. Cuelang has a learning curve but works well with argo unlike Timoni and let's you import existing charts, bare manifests, and use kustomize. Let's me abstract config with custom types and unification/(inheritance if that is easier to think about but a bit wrong)
gtirloni•9mo ago
https://github.com/apple/pkl-k8s
uaas•9mo ago
IMHO at scale (both in terms of complexity and org level) having something consistent helps more than trying to fight the de-facto standard. Since most upstream projects are mainly distributed as Helm charts, going with anything else will require more effort eventually.
a-saleh•9mo ago
Recently I have been writing more stings in jsonnet. If I were with more haskell-friendly team, might even try dhall. In general, I feel like writing the yaml in something else than yaml is the way to go, and as long as you get imports and way to do templating that is not just string interpolation, you are good.

What web businesses will continue to make money post AI?

2•surume•1h ago•3 comments

Tell HN: Ralph Giles has died (Xiph.org| Rust@Mozilla | Ghostscript)

508•ffworld•2d ago•27 comments

Ask HN: Are there examples of 3D printing data onto physical surfaces?

15•catapart•1d ago•24 comments

Ask HN: Info on the 1982 Apple 2 text game Abuse?

5•jmount•19h ago•2 comments

Ask HN: Are you using an agent orchestrator to write code?

37•gusmally•2d ago•57 comments

Ask HN: What would you recommend a vibe coder learn about how all this works?

32•alexdobrenko•2d ago•36 comments

Ask HN: What explains the recent surge in LLM coding capabilities?

6•orange_puff•11h ago•1 comments

Ask HN: Want to move to use a "dumb" phone. How to make the switch?

5•absoluteunit1•12h ago•7 comments

Ask HN: Did YouTube change how it handles uBlock?

21•tefloon69•2d ago•11 comments

Ask HN: Stripe is asking for bank statements to check financial health

7•kinj28•1d ago•1 comments

It Isn't the Tool, but the Hands – A Response to "Something Big Is Happening"

3•markferraz•15h ago•1 comments

Ask HN: How do you audit LLM code in programming languages you don't know?

10•syx•2d ago•10 comments

ClawdReview – OpenReview for AI Agents

5•mingtianzhang•18h ago•0 comments

25 years after the Agile, did the industry help or hurt software development?

3•ghostinit•20h ago•1 comments

Tell HN: Moving My Blog to IPv6 Only Internet

5•quaintdev•21h ago•1 comments

Ask HN: What's You Opinon on XMTP

2•julienreszka•22h ago•3 comments

Ask HN: Why are electronics still so unrecyclable?

73•alexandrehtrb•3d ago•139 comments

Ask HN: We're building a saving app for European savers and need GTM advice

5•AlePra00•2d ago•11 comments

Ask HN: Do sociotechnical pressures select for beneficial or harmful AI systems?

6•jerlendds•2d ago•3 comments

Ask HN: My OpenClaw doesn't respond. Anybody met with the same problem?

4•Fendy1•1d ago•5 comments

Ask HN: Exceptionally well-written research papers in CS/ML/AI?

2•b3rkus•1d ago•0 comments

Ask HN: Better hardware means OpenAI, Anthropic, etc. are doomed in the future?

4•kart23•2d ago•7 comments

Ask HN: Anyone else finding the new Gemini Deep Think troublingly sycophantic?

4•neom•1d ago•0 comments

Ask HN: What happens when capability decouples from credentials?

9•falsework•2d ago•7 comments

Ask HN: Tools to code using voice?

7•emerongi•2d ago•7 comments

We just released Khaos SDK and khaos-examples (BSL 1.1)

3•exordex•1d ago•0 comments

Ask HN: Why is my Claude experience so bad? What am I doing wrong?

6•moomoo11•2d ago•6 comments

Ask HN: Has anyone achieved recursive self-improvement with agentic tools?

9•nycdatasci•3d ago•14 comments

Ask HN: Why is everyone here so AI-hyped?

30•fandorin•4d ago•20 comments

Ask HN: If your OpenClaw could do 1 thing it currently can't, what would it be?

5•stosssik•2d ago•3 comments