Introduction
Rierino core platform installation has various mandatory and optional elements, which can be installed using IaC and CaC automation
Last updated
Rierino core platform installation has various mandatory and optional elements, which can be installed using IaC and CaC automation
Last updated
Since Rierino is a highly distributed and modular platform, it is possible to customize its deployment based on business preferences and requirements. All building blocks (such as Docker images, Maven packages) are directly accessible and all IaC and CaC scripts are editable.
Following diagram highlights interactions between different systems during a typical initial deployment as well as later deployments:
Initial Deployment Host: A bastion host or any machine with . This host is only used during the initial deployment for triggering Kubectl, Helm, Terraform, Ansible and other tasks remotely. It is typically removed after the initial deployment.
GitHub Deployment Artifacts: Rierino deployment artifacts that are stored in repositories of "rierino-open" and "rierino" GitHub organizations. All configurations, scripts and assets required for deployment are stored in these repositories, which can be also forked for highly customized deployment scenarios.
Rierino Platform Cluster: Typically a Kubernetes cluster that includes all Rierino deployments, including:
Deployer: Jobs and services used for facilitating deployments from within the cluster, centralizing required credentials and assets. Used during step-by-step initial deployment as well as all later deployments.
Core Platform: Includes all modules within the Rierino core platform, which are initialized during initial deployment and can be updated during later deployments. Core platform also includes services that enable deployment of new runners directly through admin UI after the initial deployment. Typically "Admin UI", "Gateway", "Authentication", "Spring Runner" helm charts are used with the initial deployment and "Session", "Samza Runner", "Socket Runner", "H2O Wave", "Wave App" and "Storefront" charts are deployed based on the use case requirements.
Business Apps: All additional, business domain applications (such as commerce platform modules), which are deployed directly through the core platform.
Enabling Systems: Includes database (e.g. MongoDB), streaming (e.g. Kafka), authentication (e.g. Keycloak) systems, as well as optional ones such as Redis, Elasticsearch, Airflow, Presto, NiFi, HashiCorp Vault, etcd. Deployment of these systems are typically handled separately, as you can use existing systems or choose specific deployments from cloud service providers. Once they systems are available, population of them with required data imports are handled with Rierino Ansible playbooks.
Following sections include details for initial deployment activities, as well as the GitHub repository contents with applicable parameters for customized deployments.