Portworx Best Practices

Kafka

Audience
Public
Technology Integrations
Kafka
Source Type
Documentation

Please follow the Production Readiness document for all the prerequisites, best practices to run Portworx.

Volume Management

Portworx volumes are thin-provisioned by default. Ensure the volume capacity is monitored and necessary actions are taken through PX-Autopilot to avoid any outage to the stateful applications like Kafka.

High Availability of stateful applications

Applications like Kafka that need to be highly available and resistant to any failures in the worker node like CPU, memory, drive, or power should use Portworx replicated volumes.

Portworx allows upto 3 replicated copies of the volumes and the replication setting of two is generally recommended. Portworx also offers the rack parameter that can be used to place replicated volumes across failure domains.

StorageClass

Portworx allows administrators to pick and choose or create “classes” of storage it offers. Following example creates a StorageClass for a PVC with replication factor of 2 with higher IO priority.


kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: px-storageclass-kafka
provisioner: kubernetes.io/portworx-volume
allowVolumeExpansion: true
parameters:
  repl: "2"
  priority_io: "high"

For all the parameters supported by Portworx, please check this table in the "Dynamic Provisioning of PVCs" topic.