Prerequisites
System, infrastructure, and access requirements to prepare for a CatalyX Blockchain Manager installation on Canton Network.
Setup Kubernetes or OpenShift cluster
Define your cluster size considering the following minimum requirements and your business needs:
Minimal requirements for the Catalyst Blockchain Manager Canton service for 1 instance with:
2 core CPU
4GB RAM
10GB disk space
Each node (Domain, participant, or application) that will be deployed consumes additional resources. Minimal requirements for one node:
Domain
1
1
1
Participant
1
1
1
Application
1
1
1
Install Helm to your workstation
Helm can be installed either from source, or from pre-built binary releases.
Follow the installation manual below:
Install Traefik ingress
The ingress-controller is needed for traffic routing to expose nodes (domains & applications). The Catalyst Blockchain Manager Canton service creates a CRD resource (IngressRoute in case of using Traefik), that is automatically started and deleted along with each application (and on demand for domains).
Follow the installation manual below:
Install cert-manager to create TLS certificate
TLS certificate is needed for secured communication between a User and the СatalyX Blockchain Manager Canton service components.
Follow the installation manual below:
We recommend using the last release of the official helm chart.
Create an A-record in a zone in your domain’s DNS management panel and assign it to the load balancer created upon Traefik or OpenShift installation
CatalyX Blockchain Manager Canton service needs a wildcard record *.<domain> to expose nodes. All created nodes (domains, participants, applications) will have a <NodeName>.<domainName> address.
For example, in case you are using AWS, follow these steps:
Go to the Route53 service.
Create a new domain or choose the existing domain.
Create an A record.
Switch “alias” to ON.
In the “Route traffic to” field select “Alias to application and classic load balancer.”
Select your region (where the cluster is installed).
Select an ELB balancer from the drop-down list.*
kubectl get svc -n ${ingress-namespace}Create a namespace for the CatalyX Blockchain Manager Canton service application
kubectl create ns ${ns_name}where ${ns_name} — name of namespace (can be any).
Get the credentials to the Helm repository in the JFrog artifactory provided by the IntellectEU admin team
Add the repo to Helm with the username and password provided:
helm repo add catbp <https://intellecteu.jfrog.io/artifactory/catbp-helm> --username ${ARTIFACTORY_USERNAME} --password ${ARTIFACTORY_PASSWORD}As a result: "catbp" has been added to your repositories
Create an ImagePullSecret to access the Catalyst Blockchain Manager Canton service deployable images
For example, create this Secret, naming it intellecteu-jfrog-access:
kubectl create secret intellecteu-jfrog-access regcred --docker-server=intellecteu-catbp-docker.jfrog.io --docker-username=${your-name} --docker-password=${your-password} --docker-email=${your-email} -n ${ns_name}where:
${your-name}+— your Docker username.${your-password}— your Docker password.${your-email}— your Docker email.${ns_name}— the namespace created for the Catalyst Blockchain Manager Canton service on the previous step.
Setup Keycloak realm or Auth0 tenant
For Keycloak
Download the realm.json file and import it to create necessary clients, scopes & users in your keycloak realm.
Role-Based Access Control (RBAC)
Two roles are supported:
canton_viewer— can view all resources (domains, participants, applications, validators), but cannot create, edit, or delete anything.canton_writer— can create, edit, and delete any resource, in addition to viewing.
Enforcement is gated by the AUTH_ROLES flag, which must be set consistently on both the API and the UI:
api:
extraEnv:
AUTH_ROLES: "true"
ui:
extraEnv:
AUTH_ROLES: "true"For Keycloak Auth0 tenant
If you want to enable Auth0 as an option for ledger authentication, set up a tenant.
(Optional) Setup Monitoring & Dashboard
The installation of the CatalyX Blockchain Manager Canton service includes templates to assist monitoring. If you use Graphana, to observe the metrics of all nodes, install the kube-prometheus-stack on your cluster.
Once installed, configure Keycloak OAuth2 authentication on Grafana following the detailed steps provided in the Grafana documentation
This file is a default dashboard that can be imported in Grafana.
Enter License Key
Request a license key and set it in helm values.
Last updated
Was this helpful?