Kvdb, system metadata and journal device

I am a devops engineer at Anaplan and have been recently working to get portworx on kubernetes running with pure storage in Datacenters with VMware hypervisors(I am not sure if mentioning VMware is relevant). I got an initial breakthrough were I was able to run all the portworx components successfully but I need clarification to effectively use it for our storage requirements and also in general about KVdb for better understading on how portworx utilizes them. For kvdb:

From the perspective of the storagecluster spec, I had a couple of questions:

  1. If I only define kvdbDeviceSpec and not others, does this take care of systemMetadata and JournalDevice as well?

  2. If I use these three specs separately:
    kvdbDeviceSpec, journalDeviceSpec, systemMetadataDeviceSpec, what should be the recommended allocation for each of them? I see that you have recommended metadata size needs to be about 64GB. Then what should be the recommended size for kvdbDeviceSpec with systemMetadataDeviceSpec set to 64GB?

  3. Considering I defined all three specs in the above question. If I have a cluster of 20 worker nodes, and I have only 3 kvdb instances. Does 3 kvdb instances mean 3 journal devices and 3 system metadata devices or they correspond to the number of storage nodes?

were you able to set up your cluster ? in general I would recommend to go through this docs page Disk Provisioning on VMware vSphere . it covers most of your questions.

in addition to that, you don’t have to create the separate spec yaml file for kvdb, journal devices . all you need to generate the single spec file using px central PX-Central . PX will take care of it automatically creating the required 3 px drives for kvdb and px storage drives for all the nodes. You can also restrict nodes with / without storage as well by “-max_storage_nodes_per_zone”, “1” and also Cluster Topology awareness

Please let me know for further clarifications or assistance.