-
Notifications
You must be signed in to change notification settings - Fork 20
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
Resources templates #88
Comments
Hello @gwydionmv, If I understood you questions right - there 2 use case how you could use Keycloak operator:
For installing Keycloak, create several copy of this app with different names. Update namespace value for each component. This template support different types of Postgresql database, include external postgresql instance or pgo operator (by default). To update DB configuration - please take a look for Keycloak values for DB configuration.
2.1 One operator for all Keycloak's instance. In this example I'll use keycloakA and keycloakB instance names. 2.1.1 Configure operator access to Keycloak: KeycloakA: apiVersion: v1.edp.epam.com/v1alpha1
kind: ClusterKeycloak
metadata:
name: keycloakA
spec:
secret: keycloakA
url: https://keycloakA.com KeycloakB: apiVersion: v1.edp.epam.com/v1alpha1
kind: ClusterKeycloak
metadata:
name: keycloakB
spec:
secret: keycloakB
url: https://keycloakB.com This two resources make possible configure connections between operator and Keycloak instances. 2.1.2 Create keycloak realm: KeycloakA: apiVersion: v1.edp.epam.com/v1alpha1
kind: ClusterKeycloakRealm
metadata:
name: keycloakA-realm #CR name
spec:
clusterKeycloakRef: keycloakA
realmName: keycloakA-realm #Keycloak resource name KeycloakB: apiVersion: v1.edp.epam.com/v1alpha1
kind: ClusterKeycloakRealm
metadata:
name: keycloakB-realm #CR name
spec:
clusterKeycloakRef: keycloakB
realmName: keycloakA-realm #Keycloak resource name 2.1.3 Create another resources like clients, broker, groups, roles etc. When create it, setup in what realm resource will created: ...
realmRef:
kind: ClusterKeycloakRealm
name: keycloakA-realm
... 2.2 Operator for each Keycloak's instance. apiVersion: v1.edp.epam.com/v1alpha1
kind: Keycloak
metadata:
name: keycloakA
spec:
secret: keycloakA
url: https://keycloakA.com apiVersion: v1.edp.epam.com/v1alpha1
kind: KeycloakRealm
metadata:
name: keycloakA-realm #CR name
spec:
KeycloakRef: keycloakA
realmName: keycloakA-realm #Keycloak resource name Hope this information helpful. If you still have questions - don't hesitate ask it. |
Hello @Rolika4 ! Thanks for your answer 😄 We already have a keycloak instance in place, so use case 1 is covered! We have also used your operator for connecting to it and create realms, group, etc manually using the CRs. But we would like to have templates ready for them and automatize it in pipelines instead of having to manually create the CR yamls. Maybe I didn’t explain myself in the previous message. |
Is your feature request related to a problem? Please describe.
In our company, we want to have a central operator for every instance of keycloak and then several instances in different namespaces. Currently, there are no templates available for the CRs, so we can't centralise the configuration for roles, groups, etc. We have to replicate the templates for every instance, and if we include any reference to the edp operator, we can't avoid the deployment of the operator itself.
Describe the solution you'd like
Similar to other operators (e.g. https://github.com/adfinis/helm-charts/tree/main/charts/keycloak-operator), I'd like to be able to either deploy the operator itself or instantiate the CRs needed. Having the templates for the CRs ready, would be quite easy to just write some lines a values file and deploy.
The text was updated successfully, but these errors were encountered: