Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add python-persistent helm chart. #2989

Merged
merged 5 commits into from
Feb 3, 2022

Conversation

steveworley
Copy link
Contributor

@steveworley steveworley commented Jan 7, 2022

Checklist

  • Affected Issues have been mentioned in the Closing issues section
  • Documentation has been written/updated
  • PR title is ready for changelog and subsystem label(s) applied

Explain the details for making this change. What existing problem does the pull request solve?

Some python applications are currently deployed with the node-persistent service type to allow binding a persistent volume to the deployment. This introduces a python-persistent service type for semantic separation of deployments.

The main driver behind this is CKAN deployments as they currently rely on a PV. The node-persistent service type uses a TCP liveness probe rather than HTTP. This means that we cannot include Layer7 validations for CKAN to get Kubernetes to restart the pods.

The python liveness probe is configured for HTTP, so we can add additional listeners and application lookups to determine if a scaling event has moved the PG pod and have kubernetes restart the CKAN pod.

Closing issues

Closes #2988

@tobybellwood
Copy link
Member

Thanks for this - it looks pretty good! Only pickup from me is that the cronjob isn't configured to have the volume mounts, so any cronjobs that run as separate containers won't have them. It should be easy enough to copy across from another service (e.g. node-persistent)

@steveworley
Copy link
Contributor Author

Ah! Yeah - forgot to add the PV to the cron pod, will update the PR thanks!

steveworley and others added 2 commits January 10, 2022 09:07
…templates/deployment.yaml

Co-authored-by: Toby Bellwood <toby.bellwood@amazee.io>
…templates/cronjob.yaml

Co-authored-by: Toby Bellwood <toby.bellwood@amazee.io>
@tobybellwood tobybellwood merged commit 2a75d56 into uselagoon:main Feb 3, 2022
@tobybellwood
Copy link
Member

Tested locally by lablelling existing python docker-compose

    labels:
      lagoon.type: python-persistent
      lagoon.persistent: /files

Works as expected 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Create new Lagoon service type python-persistent
2 participants