Common Kubernetes Prerequisites

The following prerequisites must be fulfilled for all Kubernetes cluster installation:

  • The Kubernetes cluster must be deployed with worker nodes of the sizes that PubSub+ Cloud requires. You can create either static worker nodes or autoscaling via node groups/pools that satisfy the compute and memory requirements for each service class as described in Resource Requirements for Kubernetes and Default Port Configuration.
  • When available, configure the nodes use to use autoscaling when available. This allows for the increase of the number nodes on demand. In many cloud providers, autoscaling is available such as in Azure Kubernetes Service, AWS Elastic Kubernetes Service, and Google Kubernetes Engine.
  • The cluster must be able to create volumes dynamically using PersistentVolumeClaim. Any annotations needed to create PersistentVolumeClaims must be known. The PersistentVolumeClaims needs a storage class that uses XFS filesystem. The disks that the volumes run on must 1000 IOPS performance (or better). For this reason, Solace recommends that solid state drives (SSD) are used when possible. For more information, see Dynamic Volume Provisioning.
  • Solace does not support event broker service integration with service meshes. Service meshes include Istio, Cilium, Linkerd, Consul, and others. If deploying to a cluster with a service mesh, you must:

    • exclude the target-namespace used by PubSub+ Cloud services from the service mesh.
    • set up connectivity to event broker service in the cluster using LoadBalancer, NodePort, or ClusterIP. See Exposing Event Broker Services to External Traffic for more information.