Cross-site deployment with Aurora DB, Infinispan and Keycloak
Deploy a Keycloak between two ROSA cluster with Infinispan (cross-site enabled) and a shared Aurora DB.
This steps creates the Aurora DB, if it does not exist yet, and configures the AWS VPC and AWS Route Tables to allow the ROSA clusters to access the Aurora DB instance.
Both Infinispan and Keycloak are deployed in the same namespace.
Installation steps
-
Check out the Git repository from https://github.com/keycloak/keycloak-benchmark/.
-
Change to the folder
provision/rosa-cross-dc
. -
Run the
task
command to provision all containers on both OpenShift clusters (check below the required variables).
Available Tasks
Two tasks are available, one to deploy and the other to undeploy, as follows:
task: Available tasks for this project:
* default: Deploys Infinispan, Aurora DB and Keycloak in a Cross-Site deployment using ROSA clusters
* undeploy: Undeploy Infinispan and Keycloak in a Cross-Site deployment using ROSA clusters
The undeploy task does not remove the Aurora DB and it needs to be manually remove.
Check scripts in directory provision/aws/rds .
|
Required variables
Variable | Details |
---|---|
AURORA_CLUSTER |
The unique name for Aurora Database. |
AURORA_REGION |
The AWS region to deploy Aurora DB. |
ROSA_CLUSTER_NAME_1 |
The mame of one ROSA cluster. |
ROSA_CLUSTER_NAME_2 |
The mame of the other ROSA cluster. |
Customize Aurora DB, Keycloak or Infinispan deployments.
This installation scripts support most of the variables defined by the original deployment scripts.
For Aurora DB variables, check the Aurora installation page.
For Infinispan deployment, check Infinispan installation page.
For Keycloak deployment, check Keycloak Customization page.
Note that not all variable are respected.
As an example, KC_ISPN_NAMESPACE
is not possible to change since it is automatically computed by this installation script.