Skip to content

Instantly share code, notes, and snippets.

@shalini-b
Last active February 2, 2022 00:51
Show Gist options
  • Save shalini-b/a9135720256a6dccae263210703eeb63 to your computer and use it in GitHub Desktop.
Save shalini-b/a9135720256a6dccae263210703eeb63 to your computer and use it in GitHub Desktop.
CreateVolume REQ/REP with topology and WFFC

Environment details:

DC -> region-1
Host1 (10.186.10.56) -> zone-a. VMs: k8s-node-018, k8s-node-0888
Host2 (10.186.7.239) -> zone-b
Host3 (10.186.9.77) -> zone-c. VMs: k8s-master-964, k8s-node-0316

Datastore info:

vSAN DS:
ds:///vmfs/volumes/vsan:523aa97b16f3f102-4b52e46770c1d990/

Local VMFS DS:
10.186.10.56:
ds:///vmfs/volumes/60da3096-535e431d-f452-0200990825a9/
ds:///vmfs/volumes/60da3097-d38efce1-054f-0200990825a9/
10.186.9.77:
ds:///vmfs/volumes/60da309a-8c65c3e7-716b-02009999d220/
ds:///vmfs/volumes/60da309c-2ef62605-8d75-02009999d220/
10.186.7.239:
ds:///vmfs/volumes/60da3097-05196e9b-5457-020099fa6513/
ds:///vmfs/volumes/60da3098-95d9fddb-9005-020099fa6513/

Placement of pods in k8s cluster:

root@k8s-master-964:~# kc get pods -o wide
NAME                                      READY   STATUS    RESTARTS   AGE    IP           NODE             NOMINATED NODE   READINESS GATES
vsphere-csi-controller-86dcc99d98-9qc69   6/6     Running   0          151m   10.244.0.6   k8s-master-964   <none>           <none>
vsphere-csi-node-brnv9                    3/3     Running   0          142m   10.244.2.5   k8s-node-018     <none>           <none>
vsphere-csi-node-gjvtz                    3/3     Running   0          143m   10.244.3.4   k8s-node-0888    <none>           <none>
vsphere-csi-node-hmsjv                    3/3     Running   0          142m   10.244.0.7   k8s-master-964   <none>           <none>
vsphere-csi-node-skkz9                    3/3     Running   0          143m   10.244.1.5   k8s-node-0316    <none>           <none>

Topology labels applied on nodes:

root@k8s-master-964:~# kubectl get nodes -o wide -L topology.kubernetes.io/zone -L topology.kubernetes.io/region
NAME             STATUS   ROLES                  AGE     VERSION   INTERNAL-IP    EXTERNAL-IP    OS-IMAGE             KERNEL-VERSION     CONTAINER-RUNTIME   ZONE     REGION
k8s-master-964   Ready    control-plane,master   7d23h   v1.21.1   10.186.4.100   10.186.4.100   Ubuntu 20.04.2 LTS   5.4.0-66-generic   docker://20.10.5    zone-c   region-1
k8s-node-018     Ready    <none>                 7d23h   v1.21.1   10.186.9.247   10.186.9.247   Ubuntu 20.04.2 LTS   5.4.0-66-generic   docker://20.10.5    zone-a   region-1
k8s-node-0316    Ready    <none>                 7d23h   v1.21.1   10.186.0.244   10.186.0.244   Ubuntu 20.04.2 LTS   5.4.0-66-generic   docker://20.10.5    zone-c   region-1
k8s-node-0888    Ready    <none>                 7d23h   v1.21.1   10.186.2.189   10.186.2.189   Ubuntu 20.04.2 LTS   5.4.0-66-generic   docker://20.10.5    zone-a   region-1

With strict-topology:

  1. No accessibility requirements and no WFFC:

Storage class definition:

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: block-sc
provisioner: csi.vsphere.vmware.com

Logs:

AccessibilityRequirements:
requisite:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-c" > > 
requisite:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-a" > > 
preferred:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-a" > > 
preferred:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-c" > >  

2021-07-06T20:01:29.447Z	INFO	volume/util.go:324	Volume created successfully. VolumeName: "pvc-e66888b2-fbde-4eee-924c-e68628bb1667", volumeID: "cf6ce202-97e9-44f4-a3dc-e5cc2f520b52"	{"TraceId": "9bb667b2-1a05-4620-918c-cb328aa811e6"}
2021-07-06T20:01:29.460Z	DEBUG	vanilla/controller.go:556	Volume: cf6ce202-97e9-44f4-a3dc-e5cc2f520b52 is provisioned on the datastore: ds:///vmfs/volumes/60da309c-2ef62605-8d75-02009999d220/ 	{"TraceId": "9bb667b2-1a05-4620-918c-cb328aa811e6"}
2021-07-06T20:01:29.483Z	DEBUG	vanilla/controller.go:561	volumeAccessibleTopology: [map[topology.kubernetes.io/region:region-1 topology.kubernetes.io/zone:zone-c]] is selected for datastore: ds:///vmfs/volumes/60da309c-2ef62605-8d75-02009999d220/ 	{"TraceId": "9bb667b2-1a05-4620-918c-cb328aa811e6"}

PV describe output:

Name:              pvc-e66888b2-fbde-4eee-924c-e68628bb1667
Labels:            <none>
Annotations:       pv.kubernetes.io/provisioned-by: csi.vsphere.vmware.com
Finalizers:        [kubernetes.io/pv-protection external-attacher/csi-vsphere-vmware-com]
StorageClass:      block-sc
Status:            Bound
Claim:             default/block-pvc
Reclaim Policy:    Delete
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          100Mi
Node Affinity:     
  Required Terms:  
    Term 0:        topology.kubernetes.io/region in [region-1]
                   topology.kubernetes.io/zone in [zone-c]
Message:           
Source:
    Type:              CSI (a Container Storage Interface (CSI) volume source)
    Driver:            csi.vsphere.vmware.com
    FSType:            ext4
    VolumeHandle:      cf6ce202-97e9-44f4-a3dc-e5cc2f520b52
    ReadOnly:          false
    VolumeAttributes:      storage.kubernetes.io/csiProvisionerIdentity=1625594952775-8081-csi.vsphere.vmware.com
                           type=vSphere CNS Block Volume
Events:                <none>
  1. Single zone accessibility requirements for region-1, zone-c and no WFFC:

Storage class definition:

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: single-zone-sc
provisioner: csi.vsphere.vmware.com
allowedTopologies:
  - matchLabelExpressions:
      - key: topology.kubernetes.io/zone
        values:
          - zone-c
      - key: topology.kubernetes.io/region
        values:
          - region-1

Logs:

AccessibilityRequirements:
requisite:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-c" > > 
preferred:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-c" > >  

2021-07-06T20:05:39.172Z	INFO	volume/util.go:324	Volume created successfully. VolumeName: "pvc-65af4ea2-1644-4181-a2ca-5f0fca4c1013", volumeID: "25701a74-458f-434c-b7fe-42682c8c0afd"	{"TraceId": "730d4cc0-f013-4520-b4e7-539bee8d2986"}
2021-07-06T20:05:39.188Z	DEBUG	vanilla/controller.go:556	Volume: 25701a74-458f-434c-b7fe-42682c8c0afd is provisioned on the datastore: ds:///vmfs/volumes/vsan:523aa97b16f3f102-4b52e46770c1d990/ 	{"TraceId": "730d4cc0-f013-4520-b4e7-539bee8d2986"}
2021-07-06T20:05:39.189Z	DEBUG	vanilla/controller.go:561	volumeAccessibleTopology: [map[topology.kubernetes.io/region:region-1 topology.kubernetes.io/zone:zone-c]] is selected for datastore: ds:///vmfs/volumes/vsan:523aa97b16f3f102-4b52e46770c1d990/ 	{"TraceId": "730d4cc0-f013-4520-b4e7-539bee8d2986"}

PV describe output:

Name:              pvc-65af4ea2-1644-4181-a2ca-5f0fca4c1013
Labels:            <none>
Annotations:       pv.kubernetes.io/provisioned-by: csi.vsphere.vmware.com
Finalizers:        [kubernetes.io/pv-protection]
StorageClass:      single-zone-sc
Status:            Bound
Claim:             default/single-zone-pvc
Reclaim Policy:    Delete
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          100Mi
Node Affinity:     
  Required Terms:  
    Term 0:        topology.kubernetes.io/zone in [zone-c]
                   topology.kubernetes.io/region in [region-1]
Message:           
Source:
    Type:              CSI (a Container Storage Interface (CSI) volume source)
    Driver:            csi.vsphere.vmware.com
    FSType:            ext4
    VolumeHandle:      25701a74-458f-434c-b7fe-42682c8c0afd
    ReadOnly:          false
    VolumeAttributes:      storage.kubernetes.io/csiProvisionerIdentity=1625594952775-8081-csi.vsphere.vmware.com
                           type=vSphere CNS Block Volume
Events:                <none>
  1. Multi-zone accessibility requirements for region-1, zone-a, zone-b and no WFFC:

Storage class definition:

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: multi-zone-sc
provisioner: csi.vsphere.vmware.com
allowedTopologies:
  - matchLabelExpressions:
      - key: topology.kubernetes.io/zone
        values:
          - zone-a
          - zone-b
      - key: topology.kubernetes.io/region
        values:
          - region-1

Logs:

AccessibilityRequirements:
requisite:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-a" > > 
requisite:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-b" > > 
preferred:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-b" > > 
preferred:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-a" > >  

2021-07-06T20:06:52.895Z	INFO	volume/util.go:324	Volume created successfully. VolumeName: "pvc-118334fc-6cf3-4b01-904f-297f6cc4ecc8", volumeID: "fdefa1a2-3065-4df1-a5c0-54f3cd4a4bb8"	{"TraceId": "49d2743c-9d9f-4b8d-bebd-87149e2f092e"}
2021-07-06T20:06:52.895Z	DEBUG	vanilla/controller.go:556	Volume: fdefa1a2-3065-4df1-a5c0-54f3cd4a4bb8 is provisioned on the datastore: ds:///vmfs/volumes/60da3097-d38efce1-054f-0200990825a9/ 	{"TraceId": "49d2743c-9d9f-4b8d-bebd-87149e2f092e"}
2021-07-06T20:06:52.895Z	DEBUG	vanilla/controller.go:561	volumeAccessibleTopology: [map[topology.kubernetes.io/region:region-1 topology.kubernetes.io/zone:zone-a]] is selected for datastore: ds:///vmfs/volumes/60da3097-d38efce1-054f-0200990825a9/ 	{"TraceId": "49d2743c-9d9f-4b8d-bebd-87149e2f092e"}

PV describe output:

Name:              pvc-118334fc-6cf3-4b01-904f-297f6cc4ecc8
Labels:            <none>
Annotations:       pv.kubernetes.io/provisioned-by: csi.vsphere.vmware.com
Finalizers:        [kubernetes.io/pv-protection]
StorageClass:      multi-zone-sc
Status:            Bound
Claim:             default/multi-zone-pvc
Reclaim Policy:    Delete
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          100Mi
Node Affinity:     
  Required Terms:  
    Term 0:        topology.kubernetes.io/zone in [zone-a]
                   topology.kubernetes.io/region in [region-1]
Message:           
Source:
    Type:              CSI (a Container Storage Interface (CSI) volume source)
    Driver:            csi.vsphere.vmware.com
    FSType:            ext4
    VolumeHandle:      fdefa1a2-3065-4df1-a5c0-54f3cd4a4bb8
    ReadOnly:          false
    VolumeAttributes:      storage.kubernetes.io/csiProvisionerIdentity=1625594952775-8081-csi.vsphere.vmware.com
                           type=vSphere CNS Block Volume
Events:                <none>
  1. No accessibility requirements with WFFC:

Storage class definition:

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: wffc-sc
provisioner: csi.vsphere.vmware.com
volumeBindingMode: WaitForFirstConsumer

Logs:

AccessibilityRequirements:
requisite:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-c" > > 
preferred:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-c" > > 

2021-07-06T20:15:12.996Z	INFO	volume/util.go:324	Volume created successfully. VolumeName: "pvc-c0d05f02-5f1f-42c4-9a03-42b4ba3cf894", volumeID: "ddb18ff1-1ba0-4144-a028-303f01fa6ada"	{"TraceId": "2cb3f4dc-e659-44ce-9d4d-8b769e6d92d2"}
2021-07-06T20:15:12.997Z	DEBUG	vanilla/controller.go:556	Volume: ddb18ff1-1ba0-4144-a028-303f01fa6ada is provisioned on the datastore: ds:///vmfs/volumes/vsan:523aa97b16f3f102-4b52e46770c1d990/ 	{"TraceId": "2cb3f4dc-e659-44ce-9d4d-8b769e6d92d2"}
2021-07-06T20:15:12.998Z	DEBUG	vanilla/controller.go:561	volumeAccessibleTopology: [map[topology.kubernetes.io/region:region-1 topology.kubernetes.io/zone:zone-c]] is selected for datastore: ds:///vmfs/volumes/vsan:523aa97b16f3f102-4b52e46770c1d990/ 	{"TraceId": "2cb3f4dc-e659-44ce-9d4d-8b769e6d92d2"}
2021-07-06T20:15:13.928Z	INFO	vanilla/controller.go:771	ControllerPublishVolume: called with args {VolumeId:ddb18ff1-1ba0-4144-a028-303f01fa6ada NodeId:k8s-node-0316 VolumeCapability:mount:<fs_type:"ext4" > access_mode:<mode:SINGLE_NODE_WRITER >  Readonly:false Secrets:map[] VolumeContext:map[storage.kubernetes.io/csiProvisionerIdentity:1625594952775-8081-csi.vsphere.vmware.com type:vSphere CNS Block Volume] XXX_NoUnkeyedLiteral:{} XXX_unrecognized:[] XXX_sizecache:0}	{"TraceId": "56a28e5b-a52b-4243-9d66-a45c32832076"}
2021-07-06T20:15:16.980Z	DEBUG	common/vsphereutil.go:440	Successfully attached disk ddb18ff1-1ba0-4144-a028-303f01fa6ada to VM VirtualMachine:vm-49 [VirtualCenterHost: 10.186.2.101, UUID: 423fe073-afc4-fb51-3dee-4423550e2211, Datacenter: Datacenter [Datacenter: Datacenter:datacenter-3, VirtualCenterHost: 10.186.2.101]]. Disk UUID is 6000C290-7975-5def-b867-befa08e39915	{"TraceId": "56a28e5b-a52b-4243-9d66-a45c32832076"}
2021-07-06T20:15:16.981Z	INFO	vanilla/controller.go:858	ControllerPublishVolume successful with publish context: map[diskUUID:6000c29079755defb867befa08e39915 type:vSphere CNS Block Volume]	{"TraceId": "56a28e5b-a52b-4243-9d66-a45c32832076"}

PV describe output:

Name:              pvc-c0d05f02-5f1f-42c4-9a03-42b4ba3cf894
Labels:            <none>
Annotations:       pv.kubernetes.io/provisioned-by: csi.vsphere.vmware.com
Finalizers:        [kubernetes.io/pv-protection external-attacher/csi-vsphere-vmware-com]
StorageClass:      wffc-sc
Status:            Bound
Claim:             default/wffc-pvc
Reclaim Policy:    Delete
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          100Mi
Node Affinity:     
  Required Terms:  
    Term 0:        topology.kubernetes.io/region in [region-1]
                   topology.kubernetes.io/zone in [zone-c]
Message:           
Source:
    Type:              CSI (a Container Storage Interface (CSI) volume source)
    Driver:            csi.vsphere.vmware.com
    FSType:            ext4
    VolumeHandle:      ddb18ff1-1ba0-4144-a028-303f01fa6ada
    ReadOnly:          false
    VolumeAttributes:      storage.kubernetes.io/csiProvisionerIdentity=1625594952775-8081-csi.vsphere.vmware.com
                           type=vSphere CNS Block Volume
Events:                <none>
  1. Single zone accessibility requirements for region-1, zone-a with WFFC:

Storage class definition:

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: single-zone-wffc-sc
provisioner: csi.vsphere.vmware.com
volumeBindingMode: WaitForFirstConsumer
allowedTopologies:
  - matchLabelExpressions:
      - key: topology.kubernetes.io/zone
        values:
          - zone-a
      - key: topology.kubernetes.io/region
        values:
          - region-1

Logs:

AccessibilityRequirements:
requisite:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-a" > > 
preferred:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-a" > >  

2021-07-06T20:13:20.280Z	INFO	volume/util.go:324	Volume created successfully. VolumeName: "pvc-d502e7fa-c0ea-400e-bb90-a31e5920d160", volumeID: "677da779-87d7-4f6e-9ffe-2df509ca4ba6"	{"TraceId": "f1749b1c-94d4-4400-9fde-2566ce5216f9"}
2021-07-06T20:13:20.283Z	DEBUG	vanilla/controller.go:556	Volume: 677da779-87d7-4f6e-9ffe-2df509ca4ba6 is provisioned on the datastore: ds:///vmfs/volumes/vsan:523aa97b16f3f102-4b52e46770c1d990/ 	{"TraceId": "f1749b1c-94d4-4400-9fde-2566ce5216f9"}
2021-07-06T20:13:20.287Z	DEBUG	vanilla/controller.go:561	volumeAccessibleTopology: [map[topology.kubernetes.io/region:region-1 topology.kubernetes.io/zone:zone-a]] is selected for datastore: ds:///vmfs/volumes/vsan:523aa97b16f3f102-4b52e46770c1d990/ 	{"TraceId": "f1749b1c-94d4-4400-9fde-2566ce5216f9"}
2021-07-06T20:13:20.854Z	INFO	vanilla/controller.go:771	ControllerPublishVolume: called with args {VolumeId:677da779-87d7-4f6e-9ffe-2df509ca4ba6 NodeId:k8s-node-018 VolumeCapability:mount:<fs_type:"ext4" > access_mode:<mode:SINGLE_NODE_WRITER >  Readonly:false Secrets:map[] VolumeContext:map[storage.kubernetes.io/csiProvisionerIdentity:1625594952775-8081-csi.vsphere.vmware.com type:vSphere CNS Block Volume] XXX_NoUnkeyedLiteral:{} XXX_unrecognized:[] XXX_sizecache:0}	{"TraceId": "378bab5e-54d2-48ff-bd2c-cd9db2185f8d"}
2021-07-06T20:13:23.325Z	DEBUG	common/vsphereutil.go:440	Successfully attached disk 677da779-87d7-4f6e-9ffe-2df509ca4ba6 to VM VirtualMachine:vm-50 [VirtualCenterHost: 10.186.2.101, UUID: 423fe8b9-c453-ef3b-df25-79218df9ca24, Datacenter: Datacenter [Datacenter: Datacenter:datacenter-3, VirtualCenterHost: 10.186.2.101]]. Disk UUID is 6000C296-deee-f983-2fc8-6864b5fca1e2	{"TraceId": "378bab5e-54d2-48ff-bd2c-cd9db2185f8d"}
2021-07-06T20:13:23.325Z	INFO	vanilla/controller.go:858	ControllerPublishVolume successful with publish context: map[diskUUID:6000c296deeef9832fc86864b5fca1e2 type:vSphere CNS Block Volume]	{"TraceId": "378bab5e-54d2-48ff-bd2c-cd9db2185f8d"}

PV describe output:

Name:              pvc-d502e7fa-c0ea-400e-bb90-a31e5920d160
Labels:            <none>
Annotations:       pv.kubernetes.io/provisioned-by: csi.vsphere.vmware.com
Finalizers:        [kubernetes.io/pv-protection external-attacher/csi-vsphere-vmware-com]
StorageClass:      single-zone-wffc-sc
Status:            Bound
Claim:             default/single-zone-wffc-pvc
Reclaim Policy:    Delete
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          100Mi
Node Affinity:     
  Required Terms:  
    Term 0:        topology.kubernetes.io/zone in [zone-a]
                   topology.kubernetes.io/region in [region-1]
Message:           
Source:
    Type:              CSI (a Container Storage Interface (CSI) volume source)
    Driver:            csi.vsphere.vmware.com
    FSType:            ext4
    VolumeHandle:      677da779-87d7-4f6e-9ffe-2df509ca4ba6
    ReadOnly:          false
    VolumeAttributes:      storage.kubernetes.io/csiProvisionerIdentity=1625594952775-8081-csi.vsphere.vmware.com
                           type=vSphere CNS Block Volume
Events:                <none>
  1. Multi-zone accessibility requirements for region-1, zone-a, zone-b with WFFC:

Storage class definition:

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: multi-zone-wffc-sc
provisioner: csi.vsphere.vmware.com
volumeBindingMode: WaitForFirstConsumer
allowedTopologies:
  - matchLabelExpressions:
      - key: topology.kubernetes.io/zone
        values:
          - zone-a
          - zone-b
      - key: topology.kubernetes.io/region
        values:
          - region-1

Logs:

AccessibilityRequirements:
requisite:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-a" > > 
preferred:<segments:<key:"topology.kubernetes.io/region" value:"region-1" > segments:<key:"topology.kubernetes.io/zone" value:"zone-a" > > 

2021-07-06T20:10:35.056Z	INFO	volume/util.go:324	Volume created successfully. VolumeName: "pvc-ecb6311c-166a-46d5-9e2c-d6c198d8c3e0", volumeID: "384427e6-c457-4bda-b897-fcc32a6c3d00"	{"TraceId": "17183d82-74da-4363-87bb-5500469e0b79"}
2021-07-06T20:10:35.057Z	DEBUG	vanilla/controller.go:556	Volume: 384427e6-c457-4bda-b897-fcc32a6c3d00 is provisioned on the datastore: ds:///vmfs/volumes/vsan:523aa97b16f3f102-4b52e46770c1d990/ 	{"TraceId": "17183d82-74da-4363-87bb-5500469e0b79"}
2021-07-06T20:10:35.058Z	DEBUG	vanilla/controller.go:561	volumeAccessibleTopology: [map[topology.kubernetes.io/region:region-1 topology.kubernetes.io/zone:zone-a]] is selected for datastore: ds:///vmfs/volumes/vsan:523aa97b16f3f102-4b52e46770c1d990/ 	{"TraceId": "17183d82-74da-4363-87bb-5500469e0b79"}
2021-07-06T20:10:36.451Z	INFO	vanilla/controller.go:771	ControllerPublishVolume: called with args {VolumeId:384427e6-c457-4bda-b897-fcc32a6c3d00 NodeId:k8s-node-0888 VolumeCapability:mount:<fs_type:"ext4" > access_mode:<mode:SINGLE_NODE_WRITER >  Readonly:false Secrets:map[] VolumeContext:map[storage.kubernetes.io/csiProvisionerIdentity:1625594952775-8081-csi.vsphere.vmware.com type:vSphere CNS Block Volume] XXX_NoUnkeyedLiteral:{} XXX_unrecognized:[] XXX_sizecache:0}	{"TraceId": "51ee7c92-f746-403b-850e-8040c46ba21d"}
2021-07-06T20:10:38.931Z	DEBUG	common/vsphereutil.go:440	Successfully attached disk 384427e6-c457-4bda-b897-fcc32a6c3d00 to VM VirtualMachine:vm-51 [VirtualCenterHost: 10.186.2.101, UUID: 423f474d-bf84-6d1a-a6b1-f3b45e505592, Datacenter: Datacenter [Datacenter: Datacenter:datacenter-3, VirtualCenterHost: 10.186.2.101]]. Disk UUID is 6000C296-f1dd-8dab-efb1-a17674116ab5	{"TraceId": "51ee7c92-f746-403b-850e-8040c46ba21d"}
2021-07-06T20:10:38.932Z	INFO	vanilla/controller.go:858	ControllerPublishVolume successful with publish context: map[diskUUID:6000c296f1dd8dabefb1a17674116ab5 type:vSphere CNS Block Volume]	{"TraceId": "51ee7c92-f746-403b-850e-8040c46ba21d"}

PV describe output:

Name:              pvc-ecb6311c-166a-46d5-9e2c-d6c198d8c3e0
Labels:            <none>
Annotations:       pv.kubernetes.io/provisioned-by: csi.vsphere.vmware.com
Finalizers:        [kubernetes.io/pv-protection external-attacher/csi-vsphere-vmware-com]
StorageClass:      multi-zone-wffc-sc
Status:            Bound
Claim:             default/multi-zone-wffc-pvc
Reclaim Policy:    Delete
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          100Mi
Node Affinity:     
  Required Terms:  
    Term 0:        topology.kubernetes.io/zone in [zone-a]
                   topology.kubernetes.io/region in [region-1]
Message:           
Source:
    Type:              CSI (a Container Storage Interface (CSI) volume source)
    Driver:            csi.vsphere.vmware.com
    FSType:            ext4
    VolumeHandle:      384427e6-c457-4bda-b897-fcc32a6c3d00
    ReadOnly:          false
    VolumeAttributes:      storage.kubernetes.io/csiProvisionerIdentity=1625594952775-8081-csi.vsphere.vmware.com
                           type=vSphere CNS Block Volume
Events:                <none>

Final state:

root@k8s-master-964:~# k get sc,pvc,pv,pod
NAME                                              PROVISIONER              RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
storageclass.storage.k8s.io/block-sc              csi.vsphere.vmware.com   Delete          Immediate              true                   5h21m
storageclass.storage.k8s.io/multi-zone-sc         csi.vsphere.vmware.com   Delete          Immediate              false                  5h21m
storageclass.storage.k8s.io/multi-zone-wffc-sc    csi.vsphere.vmware.com   Delete          WaitForFirstConsumer   false                  5h21m
storageclass.storage.k8s.io/single-zone-sc        csi.vsphere.vmware.com   Delete          Immediate              false                  5h21m
storageclass.storage.k8s.io/single-zone-wffc-sc   csi.vsphere.vmware.com   Delete          WaitForFirstConsumer   false                  5h21m
storageclass.storage.k8s.io/wffc-sc               csi.vsphere.vmware.com   Delete          WaitForFirstConsumer   false                  5h21m

NAME                                         STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS          AGE
persistentvolumeclaim/block-pvc              Bound    pvc-e66888b2-fbde-4eee-924c-e68628bb1667   100Mi      RWO            block-sc              5h9m
persistentvolumeclaim/multi-zone-pvc         Bound    pvc-118334fc-6cf3-4b01-904f-297f6cc4ecc8   100Mi      RWO            multi-zone-sc         5h4m
persistentvolumeclaim/multi-zone-wffc-pvc    Bound    pvc-ecb6311c-166a-46d5-9e2c-d6c198d8c3e0   100Mi      RWO            multi-zone-wffc-sc    5h1m
persistentvolumeclaim/single-zone-pvc        Bound    pvc-65af4ea2-1644-4181-a2ca-5f0fca4c1013   100Mi      RWO            single-zone-sc        5h5m
persistentvolumeclaim/single-zone-wffc-pvc   Bound    pvc-d502e7fa-c0ea-400e-bb90-a31e5920d160   100Mi      RWO            single-zone-wffc-sc   4h58m
persistentvolumeclaim/wffc-pvc               Bound    pvc-c0d05f02-5f1f-42c4-9a03-42b4ba3cf894   100Mi      RWO            wffc-sc               4h56m
persistentvolumeclaim/www-web-0              Bound    pvc-628a06fc-8737-454c-b171-e0d0181d657b   500Mi      RWO            wffc-sc               4h7m
persistentvolumeclaim/www-web-1              Bound    pvc-ec7d4a18-124d-4250-9f7e-13bcf2047268   500Mi      RWO            wffc-sc               4h6m
persistentvolumeclaim/www-web-2              Bound    pvc-913e6330-1944-40b0-a620-6f344795aab9   500Mi      RWO            wffc-sc               4h5m

NAME                                                        CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM                          STORAGECLASS          REASON   AGE
persistentvolume/pvc-118334fc-6cf3-4b01-904f-297f6cc4ecc8   100Mi      RWO            Delete           Bound    default/multi-zone-pvc         multi-zone-sc                  5h4m
persistentvolume/pvc-628a06fc-8737-454c-b171-e0d0181d657b   500Mi      RWO            Delete           Bound    default/www-web-0              wffc-sc                        4h7m
persistentvolume/pvc-65af4ea2-1644-4181-a2ca-5f0fca4c1013   100Mi      RWO            Delete           Bound    default/single-zone-pvc        single-zone-sc                 5h5m
persistentvolume/pvc-913e6330-1944-40b0-a620-6f344795aab9   500Mi      RWO            Delete           Bound    default/www-web-2              wffc-sc                        4h5m
persistentvolume/pvc-c0d05f02-5f1f-42c4-9a03-42b4ba3cf894   100Mi      RWO            Delete           Bound    default/wffc-pvc               wffc-sc                        4h55m
persistentvolume/pvc-d502e7fa-c0ea-400e-bb90-a31e5920d160   100Mi      RWO            Delete           Bound    default/single-zone-wffc-pvc   single-zone-wffc-sc            4h57m
persistentvolume/pvc-e66888b2-fbde-4eee-924c-e68628bb1667   100Mi      RWO            Delete           Bound    default/block-pvc              block-sc                       5h9m
persistentvolume/pvc-ec7d4a18-124d-4250-9f7e-13bcf2047268   500Mi      RWO            Delete           Bound    default/www-web-1              wffc-sc                        4h6m
persistentvolume/pvc-ecb6311c-166a-46d5-9e2c-d6c198d8c3e0   100Mi      RWO            Delete           Bound    default/multi-zone-wffc-pvc    multi-zone-wffc-sc             5h

NAME                       READY   STATUS    RESTARTS   AGE
pod/block-pod              1/1     Running   0          2m13s
pod/multi-zone-pod         1/1     Running   0          40s
pod/multi-zone-wffc-pod    1/1     Running   0          5h
pod/single-zone-pod        1/1     Running   0          79s
pod/single-zone-wffc-pod   1/1     Running   0          4h57m
pod/web-0                  1/1     Running   0          4h7m
pod/web-1                  1/1     Running   0          4h6m
pod/web-2                  1/1     Running   0          4h5m
pod/wffc-pod               1/1     Running   0          4h55m
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment