Pyramid's Kubernetes "installation" relies on Docker containers deployed by Pyramid and hosted on Docker's public repository. The Kubernetes deployment can be deployed into any standard Kubernetes hosting environment - including those hosted by AWS, Azure, Google (GCP), Oracle, IBM and Alibaba.
Note: this feature is available with the Enterprise Edition license only.
Pyramid is designed as a set of services that are designed to be clustered across one or more machines to scale as needs increase. Since Pyramid has a multi-tiered service architecture, its services conveniently fit into containers that can be scaled horizontally and vertically to meet the growing (and shrinking) demands of an analytics deployment in a Kubernetes deployment. There are specific capabilities built into Pyramid to suit Kubernetes itself even though the product is 99.99% identical to the version that would be installed natively on bare metal or virtual host machines.
Pyramid offers some key guidelines for a Kubernetes deployment. This includes minimal cluster size and database repository deployment. Click here for more.
The process of configuring and launching a Kubernetes cluster have been simplified to make it easy to deploy Pyramid through point-and-click configurations and forms over 3 stages that should take no more than about 15-30 minutes to complete once your Kubernetes infrastructure is ready. While this is a recommended approach, the nature of Kubernetes is such that users are free to construct the cluster in their Kubernetes environment in a way they see fit or prefer (see recommendations for more).
- Click here to read a guide for how to deploy Pyramid on AWS Elastic Kubernetes Services (EKS)
Step 1 - Cluster Configurator
The first step is to login into the customer portal and use the Kubernetes configurator tool to setup the "instructions" for your launch of the Pyramid cluster. This tool produces a "YAML" file with the instructions for how to find the right containers and how to deploy the services in a cluster. The tool also incorporates some smart logic for choosing services, setting memory and deciding on the elastic scaling out options. While this form is optional (you can build your own configurations) it is highly recommended.
Step 2 - Launch the YAML
Once you have your YAML file, the file should be uploaded to the target hosting system and used to initiate and instantiate the necessary Kubernetes pods deployments. Once triggered, the Pyramid cluster will be brought up within a few minutes, awaiting the final steps needed to launch the application.
Step 3 - Application Initialization
Once the pods are created, you will be prompted with the last stage: initialization the application. This stage is NOT optional. In a typical deployment you will be presented with the System Initialization tool to supply the database repository, the storage medium details, the login for the initial user and optionally the license key file. The form can be completed and executed using a YAML file - effectively producing an unattended initialization sequence.
Once the initialization is complete, the application will use the details to launch the cluster and start the full application.