IBM / ibm-object-csi-driver

Object storage plugin for IBM satellite
Apache License 2.0
3 stars 8 forks source link

PVC Metrics/Stats #100

Closed ashimagarg27 closed 5 months ago

nkkashyap commented 6 months ago

@ashimagarg27 Is this change able to handle multiple PVCs?

ashimagarg27 commented 6 months ago

Test Results for multiple PVCs

"volume": [
    {
     "time": "2024-05-03T07:42:21Z",
     "availableBytes": 4277697307,
     "capacityBytes": 4278190080,
     "usedBytes": 492773,
     "inodesFree": 0,
     "inodes": 0,
     "inodesUsed": 0,
     "name": "cos-csi-volume",
     "pvcRef": {
      "name": "cos-s3-csi-pvc-s3fs2",
      "namespace": "default"
     }
    },
    {
     "time": "2024-05-03T07:42:21Z",
     "availableBytes": 61104238592,
     "capacityBytes": 61104263168,
     "usedBytes": 24576,
     "inodesFree": 8177341,
     "inodes": 8177352,
     "inodesUsed": 11,
     "name": "kube-api-access-j7dmk"
    },
    {
     "time": "2024-05-03T07:42:21Z",
     "availableBytes": 1125899906349851,
     "capacityBytes": 1125899906842624,
     "usedBytes": 492773,
     "inodesFree": 1000000000,
     "inodes": 1000000000,
     "inodesUsed": 0,
     "name": "cos-csi-rclone",
     "pvcRef": {
      "name": "cos-s3-csi-pvc-rclone",
      "namespace": "default"
     }
    }
   ]
I0503 07:51:04.390766       1 server.go:155] GRPC call: /csi.v1.Node/NodeGetVolumeStats
I0503 07:51:04.390823       1 nodeserver.go:219] NodeGetVolumeStats: Request: {VolumeId:pvc-947891b3-327c-4f3b-b416-ae026707a3cc VolumePath:/var/data/kubelet/pods/75e72111-1266-46be-bca8-cdae208dfcba/volumes/kubernetes.io~csi/pvc-947891b3-327c-4f3b-b416-ae026707a3cc/mount StagingTargetPath: XXX_NoUnkeyedLiteral:{} XXX_unrecognized:[] XXX_sizecache:0}
I0503 07:51:04.390842       1 nodeserver.go:229] NodeGetVolumeStats: Start getting Stats
I0503 07:51:04.405098       1 utils.go:208] pvc details found. pvc-name: cos-s3-csi-pvc-rclone, pvc-namespace: default
I0503 07:51:04.416347       1 utils.go:219] secret details found. secret-name: cos-s3-csi-pvc-rclone
I0503 07:51:04.504557       1 nodeserver.go:268] NodeGetVolumeStats: Volume Stats usage:<available:1125899906349851 total:1125899906842624 used:492773 unit:BYTES > usage:<available:1000000000 total:1000000000 unit:INODES >
I0503 07:51:04.504630       1 server.go:160] GRPC response: usage:<available:1125899906349851 total:1125899906842624 used:492773 unit:BYTES > usage:<available:1000000000 total:1000000000 unit:INODES >
I0503 07:51:04.505973       1 server.go:155] GRPC call: /csi.v1.Node/NodeGetCapabilities
I0503 07:51:04.506003       1 nodeserver.go:279] NodeGetCapabilities: Request: {XXX_NoUnkeyedLiteral:{} XXX_unrecognized:[] XXX_sizecache:0}
I0503 07:51:04.506019       1 server.go:160] GRPC response: capabilities:<rpc:<type:GET_VOLUME_STATS > > capabilities:<rpc:<type:VOLUME_CONDITION > > capabilities:<rpc:<type:VOLUME_MOUNT_GROUP > >
I0503 07:51:04.506951       1 server.go:155] GRPC call: /csi.v1.Node/NodeGetVolumeStats
I0503 07:51:04.506994       1 nodeserver.go:219] NodeGetVolumeStats: Request: {VolumeId:pvc-0ba5bfb4-edf7-4302-a765-cc0fa10e00aa VolumePath:/var/data/kubelet/pods/75e72111-1266-46be-bca8-cdae208dfcba/volumes/kubernetes.io~csi/pvc-0ba5bfb4-edf7-4302-a765-cc0fa10e00aa/mount StagingTargetPath: XXX_NoUnkeyedLiteral:{} XXX_unrecognized:[] XXX_sizecache:0}
I0503 07:51:04.507013       1 nodeserver.go:229] NodeGetVolumeStats: Start getting Stats
I0503 07:51:04.520237       1 utils.go:208] pvc details found. pvc-name: cos-s3-csi-pvc-s3fs2, pvc-namespace: default
I0503 07:51:04.542907       1 utils.go:219] secret details found. secret-name: cos-s3-csi-pvc-s3fs2
I0503 07:51:04.662821       1 nodeserver.go:268] NodeGetVolumeStats: Volume Stats usage:<available:4277697307 total:4278190080 used:492773 unit:BYTES > usage:<unit:INODES >
I0503 07:51:04.662896       1 server.go:160] GRPC response: usage:<available:4277697307 total:4278190080 used:492773 unit:BYTES > usage:<unit:INODES >
ashimagarg27 commented 5 months ago

Updated Test Results

"volume": [
    {
     "time": "2024-05-07T14:33:44Z",
     "availableBytes": 267942672,
     "capacityBytes": 268435456,
     "usedBytes": 492784,
     "inodesFree": 1000000000,
     "inodes": 1000000000,
     "inodesUsed": 0,
     "name": "cos-csi-rclone",
     "pvcRef": {
      "name": "cos-s3-csi-pvc-rclone",
      "namespace": "default"
     }
    },
    {
     "time": "2024-05-07T14:33:44Z",
     "availableBytes": 61104238592,
     "capacityBytes": 61104263168,
     "usedBytes": 24576,
     "inodesFree": 8177341,
     "inodes": 8177352,
     "inodesUsed": 11,
     "name": "kube-api-access-vqrjv"
    },
    {
     "time": "2024-05-07T14:33:44Z",
     "availableBytes": 267942672,
     "capacityBytes": 268435456,
     "usedBytes": 492784,
     "inodesFree": 0,
     "inodes": 0,
     "inodesUsed": 0,
     "name": "cos-csi-volume",
     "pvcRef": {
      "name": "cos-s3-csi-pvc-s3fs",
      "namespace": "default"
     }
    }
   ],

Test Results If Both PVCs having different storage (256Mi and 256M)

"volume": [
    {
     "time": "2024-05-07T14:40:31Z",
     "availableBytes": 267942672,
     "capacityBytes": 268435456,
     "usedBytes": 492784,
     "inodesFree": 1000000000,
     "inodes": 1000000000,
     "inodesUsed": 0,
     "name": "cos-csi-rclone",
     "pvcRef": {
      "name": "cos-s3-csi-pvc-rclone",
      "namespace": "default"
     }
    },
    {
     "time": "2024-05-07T14:40:31Z",
     "availableBytes": 255507216,
     "capacityBytes": 256000000,
     "usedBytes": 492784,
     "inodesFree": 0,
     "inodes": 0,
     "inodesUsed": 0,
     "name": "cos-csi-volume",
     "pvcRef": {
      "name": "cos-s3-csi-pvc-s3fs",
      "namespace": "default"
     }
    },
    {
     "time": "2024-05-07T14:40:32Z",
     "availableBytes": 61104238592,
     "capacityBytes": 61104263168,
     "usedBytes": 24576,
     "inodesFree": 8177341,
     "inodes": 8177352,
     "inodesUsed": 11,
     "name": "kube-api-access-2h8n6"
    }
   ],