ory / k8s

Kubernetes Helm Charts for the ORY ecosystem.
https://k8s.ory.sh/helm
Apache License 2.0
335 stars 261 forks source link

feat: add hydra option to create separate admin and public deploys #706

Open terev opened 4 days ago

terev commented 4 days ago

Add an option to the Hydra chart separateAdminAndPublicDeploys, when enabled creates separate deployment objects for the admin and public components. In addition, if auto-scaling is enabled, separate HPA objects will be created.

Related Issue or Design Document

I was unable to find any related issues, and don't have a design document.

Checklist

Further comments

The motivation for this change was to enable creating an Istio RequestAuthentication policy which applies to only the admin component (since it doesnt have its own auth). In addition, this change makes it possible to scale, configure, and route the admin and public components separately.

Demonsthere commented 4 days ago

Hi there! This is an interesting feature request, I can see the reasoning behind it, and it possibly would make sense to create such a distributed system for other applications as well 🤔. However, I think it might be a better idea to make it more verbose, and follow the same path as https://github.com/grafana/helm-charts/tree/main/charts and create a separate hydra-distributed chart, as opposed to keeping it bundled in a single package, wdyt?

terev commented 4 days ago

@Demonsthere Are there any concerns with the additional complexity required to update two charts for Hydra if we fork this one into a new chart? My concern is if there's multiple different charts it gets complicated to keep them all maintained. Maybe we could modularize this chart such that portions can be reused in the distributed version?