Kubernetes

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.

Cluster Architecture

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.

Recommended Infrastructure

Pyramid offers some key guidelines for a Kubernetes deployment. This includes minimal cluster size and database repository deployment. Click here for more.

Installation & Deployment

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, including the use of HELM charts (see recommendations for more).

  • Click here to read a guide for how to deploy Pyramid on AWS Elastic Kubernetes Services (EKS)
  • Click here to read a guide for how to deploy Pyramid on Microsoft Azure Cloud Computing Services
  • Click here to read a guide for how to deploy Pyramid on Google Cloud (GCP) GKE

Generic Installation Steps

The following guide assumes that the Pyramid Kubernetes configurator will be used.

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, you should typically upload it to the target hosting system and use it to initiate and instantiate the necessary Kubernetes pods deployments. Your pods should have internet access during the installation process, but you can contact support for more assistance if you need to install without internet access.

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: "initialize 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.