Server Prerequisites - Kubernetes Offline Installation via Helm Charts



Prerequisites as a concise list

The list below is written to be concise. For additional details about any of these topics, see the Details below.

  • A Kubernetes Cluster that consists of, at a minimum, one Master and one Worker Node
  • A new, dedicated Namespace
  • Storage capacity to dynamically provision 2 x 50gb Persistent Volumes if configuring 1-2 Apps for analysis with the vFunction Server. Increase the Storage based on the number of applications following the table below
Number of Apps Storage
1-2 100gb
3-7 200gb
8+ 500gb
  • The default StorageClass for Persistent Volume Claims
  • kubectl, the Kubernetes CLI tool, installed with access to the Kubernetes Cluster
  • A Linux VM with access to Kubernetes Cluster to run kubectl commands
  • Contact vFunction Support for the vFunction Server Installation Kubernetes Helm TGZ. The Installation TGZ includes both the Helm Tool and Charts as part of the TGZ, so need to install them in advance of the installation
  • Access to a Private Docker Registry for offline installation
  • An Image Pull Secret
  • vFunction Docker Containers mirrored to the Private Docker Registry

Prerequisites as a step-by-step guide

Because meeting the prerequisites listed above may involve an number of smaller steps, this sample is intended to present the prerequisites in a step-by-step fashion in case this perspective is helpful.

  1. Ensure Kubernetes Cluster exists and can be used for the vFunction Server
  2. Ensure a new Namespace can be created in the Kubernetes Cluster for the vFunction Server
  3. Ensure the Cluster can support 100gb of Persistent Volume storage
  4. Ensure the Cluster can support up to 23gb RAM and up to 9 CPU, with minimums of 2.25gb RAM and 1.125 CPU
  5. Understand whether Persistent Volumes can be dynamically provisioned or if they need to be manually provisioned. If they need to be manually provisioned, create the Persistent Volumes
  6. If Persistent Volumes can be dynamically created, understand if the “default” storageClass can be used for the Persistent Volume Claims. If an alternate storageClass should be used, change the storageClass in the vFunction installation.yaml after downloading the vFunction Server Installation Kubernetes Helm TGZ
  7. Ensure a Linux VM is available with access to the Kubernetes Cluster and kubectl is installed
  8. Contact vFunction Support for the vFunction Server Installation Kubernetes Helm TGZ. The Installation TGZ includes both the Helm Tool and Charts as part of the TGZ, so need to install them in advance of the installation
  9. Ensure a Private Docker Registry exists and can be used to host the Docker images of the vFunction Server
  10. Ensure a Image Pull Secret exists to add the Docker images to the Private Docker Registry and / or download the images during the installation process. You can either use an existing Image Pull Secret or create a new Image Pull Secret
  11. Mirror the vFunction Docker images into the Private Docker Registry

Details about Prerequisites

The Prerequisites list above is intended to be concise. The Details below provide more background on what is required for each of the Prerequisites.

Namespace

The vFunction Server Installation Kubernetes Helm installation requires a new, dedicated Namespace for the vFunction Server. The Namespace can be created during the installation process. The Namespace can be created in an existing Cluster.

Persistent Volumes

The Installation tries to dynamically provision 2 x 50gb Persistent Volumes in ReadWriteOnce mode. Instead of dynamic provisioning, the Persistent Volumes can alternatively be manually created before running the vFunction Server Installation Kubernetes Helm script.

Persistent Volume Claims

The default StorageClass is used for dynamically provisioning the Persistent Volumes via Persistent Volume Claims. An alternate StorageClass can also be defined in the Configurable Settings and will be used for creating the Persistent Volume Claims.