Deployment Prerequisites
  • 25 Sep 2024
  • 4 Minutes to read
  • Contributors
  • PDF

Deployment Prerequisites

  • PDF

Article summary

Terminal Server

Terminal server is a Windows server which the Sestek Application Support Engineer connects to in order to bootstrap the installation process.

In order to perform the required procedures, this server needs the following applications installed.

  • OpenSSH Client
  • Windows Terminal
  • Notepad++
  • Postman
  • SQL Server Management Studio (When MS SQL Server is used).
  • PgAdmin 4 (When PostgreSQL is used).

Kubernetes Distributions

Knovvu applications run on any compatible Kubernetes flavor from different providers like AWS, Azure, RedHat, Rancher, etc with the version restriction specified in the following section.

Knovvu applications also honour and embrace provider specific features to deliver better experience for their users.

Tested/verified distributions and providers are given below however please note that this is not an exhaustive list of all.

DistroProvider
OpenShift Container PlatformRedHat (versions 4.8 - 4.15)
RancherSUSE
EKSAWS
AKSAzure
GCPGoogle Cloud
AnthosGoogle Cloud
OKEOracle Cloud
VanillaCommunity

Kubernetes Versions

Minimum Kubernetes version supported by Sestek is v.1.22.X and maximum supported version is v1.30.X.

Ingress settings

SSL Redirection should be disabled on ingress.

nginx.ingress.kubernetes.io/ssl-redirect: "false"

Kubernetes Namespaces

Namespaces (OpenShift projects) for common components and each product should be created before the installation. Names of the namespaces will be shared by Sestek based on the product being deployed.

Important

Network access between namespaces must be enabled for Knovvu products. This allows necessary communication between different components of the Knovvu system that may be deployed in separate namespaces.

Persistent Volumes

Knovvu applications require persistent volumes to store their data. Therefore persistent volume support should be enabled in the cluster. Additionally, Knovvu applications should have the permission to request persistent volumes from the cluster. If this is not the case, customers can create the requested persistent volumes manually. However, this requires communication between Sestek and the customer and may slow down the deployment process.

Cluster Permissions

Customers should provide admin permissions in Sestek namespaces. Sestek applications don't require cluster admin permissions. Service accounts will be created by Sestek during deployment.

LimitRanges

Common Namespace

The pod limits for the common namespace should be as follows:

ResourceMinimumMaximum
CPU10m3
Memory6Mi6Gi

ResourceQuota

Knovvu products are deployed across different Kubernetes namespaces based on customer needs and operational scale. ResourceQuotas for each namespace are configured to optimize and control resource usage for applications and services.

sestek-common Namespace

The sestek-common namespace contains components that are shared across all our customers and have a fixed number of replicas. The ResourceQuota values for this namespace in a typical installation are as follows:

ResourceUsed ValueDescription
CPU Limit15 CPUTotal CPU limit usage
CPU Request3 CPUTotal CPU request usage
Memory Limit25 GBTotal memory limit usage
Memory Request20 GBTotal memory request usage
Pod Count11Number of active pods
Storage Request400 GBTotal persistent volume claim usage

These values are for a typical installation and may vary slightly based on specific customer needs.

Other Namespaces

ResourceQuota values for other namespaces such as sestek-core, sestek-stai, sestek-cai, and sestek-va will vary depending on the customer's operational scale and specific requirements. Exact values for these namespaces are determined and configured during installation in collaboration with the customer.

ResourceQuota values for each namespace may include:

  • CPU and memory limits
  • CPU and memory requests
  • Maximum number of pods
  • Storage requests

These values are customized based on the customer's workload, number of users, expected traffic, and other operational factors.

Important Notes

  1. ResourceQuota values should be periodically reviewed and adjusted as necessary to optimize system performance and stability.
  2. New features or product updates may necessitate changes in ResourceQuota requirements.
  3. Customers should contact the Sestek support team when approaching or exceeding current ResourceQuota limits.

For more detailed information and specific requirements, please contact the Sestek technical support team.

STAI, Core, CA and VA Namespace

The pod limits for those namespace should be as follows:

ResourceMinimumMaximum
CPU10m16
Memory6Mi32Gi

Network

Worker nodes in the cluster should be able to access the services using the protocols and ports that are provided below.

ServerPortProtocolConditions
License service30113TCPAlways
MS SQL Server1433TCPRequired only if MS SQL Server is used as database.
PostgreSQL5432TCPRequired only if PostgreSQL is used as database.
Sestek Call Recorder2050TCPRequired only if Sestek Recorder is used with Knovvu Analytics product.

Container Registry

Customers are required to proxy their container registries to the Central Knovvu Container Registry (docker.sestek.com). If this is not possible, then customers should pull all the images from Central Knovvu Container Registry and push them to their container registry. If this is the case, image list will be provided by Sestek.

The following container registries are supported:

  • Docker Hub (also any container registry supporting Docker Registry v2 API)
  • Quay.io
  • Nexus
  • Harbor
  • ghcr (GitHub Container Registry)
  • ECR (Elastic Container Registry by AWS)
  • ACR (Azure Container Registry)
  • gcr (Google Container Registry)

The user provided for the docker registry must have the permissions to list and push images.

Information expected from customer

  • Base domain name

Customers should choose a base domain name that Sestek applications will use (e.g. knovvu.mycompany.com). Changing the domain address later in the deployment process requires additional actions, that might delay the installation process.

  • Preferred database (Microsoft SQL Server or PostgreSQL). Version should be verified based on the product being deployed.
  • Database server's IP, port, DNS (if exist) and credentials with dbowner privileges.
  • Kubernetes platform and version (e.g. Openshift v4.12.0)
  • Kubernetes Engine version (e.g. 1.19.4)
  • Storage class name (e.g. my-storage-class)
  • Kubeconfig file for the cluster that Knovvu applications will be installed to
  • Address of the container registry

Was this article helpful?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.