mirror of
https://github.com/lldap/lldap.git
synced 2026-04-25 16:25:55 +03:00
[GH-ISSUE #881] [FEATURE REQUEST] Helm chart implementation details #318
Labels
No labels
backend
blocked
bug
cleanup
dependencies
docker
documentation
duplicate
enhancement
enhancement
frontend
github_actions
good first issue
help wanted
help wanted
integration
invalid
ldap
pull-request
question
rust
rust
tests
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/lldap-lldap#318
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @djjudas21 on GitHub (Mar 27, 2024).
Original GitHub issue: https://github.com/lldap/lldap/issues/881
Motivation
Hi there, I am a new lldap user and I want to run it on Kubernetes via a Helm chart. I have already written a Helm chart for lldap which is mostly functional (supports sqlite, mariadb and postgres plus virtually all of the other settings).
My aim is that when mariadb or postgresql is configured, Kubernetes should not need to create a volume for
/data, i.e. the deployment will be completely stateless. It's fine for lldap to write stuff into/dataif it wants, provided it's also happy for that temporarily volume to be destroyed when the container is restarted.Like all good Kubernetes deployments, my chart configures lldap exclusively via environment variables and I note that lldap creates a default
/data/lldap_config.tomlwhich I assume effectively does nothing, as all the settings are being overriden by env vars?When not using sqlite, my helm chart supports running multiple replicas, and the additional replicas seem to work fine, i.e. they connect to the external database. However I noticed that
/data/private_keydiffers between my two replicas. Is this a problem, and do I need to generate and distribute this key as part of the Helm chart to ensure that all replicas have the same?Thanks for your help... once I've cleared up these last few issues about statelessness, I can publish a final version of the chart.
@nitnelave commented on GitHub (Mar 27, 2024):
I could swear someone had already made an lldap helm chart...
Anyway, I can solve your
private_keyproblems! Just set theLLDAP_KEY_SEEDto a random value (shared between the instances) and you won't need to share anything.@djjudas21 commented on GitHub (Mar 27, 2024):
TrueCharts have a Helm chart for lldap designed for TrueNAS appliances, supposed to be compatible with generic Kubernetes, but I've had various problems with their charts and I don't rate them for general use 🙂
Thanks for the tip on
LLDAP_KEY_SEED. I'll fix that, and I'll implement support forbootstrap.shso this chart will be a complete solution.Do you have any interest in adopting this chart into the lldap namespace? I'm still happy to maintain it. Otherwise I'll leave it in my own
djjudas21namespace.@nitnelave commented on GitHub (Mar 27, 2024):
I don't know what it means to adopt a chart. Or do you just mean have the chart be in a repo under the lldap organization? Yeah, we could do that (and I'd give you full author permissions, naturally).
I know next to nothing about charts. It's essentially a config file / startup script to get a kubernetes or similar cluster set up for running an instance or more of a service, right?
@djjudas21 commented on GitHub (Mar 27, 2024):
Yes, I mean to store it in a repo in the lldap org and to publish it under the name
lldap/lldaprather thandjjudas21/lldap, which includes having it indexed on ArtifactHub which is sort of an app store for Helm charts.Helm charts are effectively a templating system that generate the yaml manifests that describe a Kubernetes deployment. I based my chart off the Kubernetes example you link to in your README, with a few extras included.
Let me continue developing my chart for the time being and I'll contribute it after it's tested 🙂
@djjudas21 commented on GitHub (Apr 2, 2024):
The chart is now fully working 👌 including support for bootstrapping users & groups. When you've got a moment, could you create a repo called
chartsin thelldaporganisation, and I'll push my chart.I'll need access to GitHub Actions and GitHub Pages so I can use chart-releaser to test, build & publish the charts in their own helm chart repo.
I'm aiming for the same setup as my own repo, where:
@nitnelave commented on GitHub (Apr 3, 2024):
Alright, I setup lldap/charts, you should have write access to the repo. Tell me if anything is missing in terms of permissions. I'm closing this issue since we can talk about the details either on discord or on the new repo.