The current version of the ScaleIO Kubernetes volume plugin relies on the presence drv_cfg binary being installed on ScaleIO SDC nodes for the simple reason of retrieving the machine's SDC guid to ultimately get the instance ID. This can be an issue if the binary has been moved or installed in non-standard location.
Label Nodes with SDC GUID
This proposal is to forego the need to use the drv_cfg binary to get the value of the SDC GUID. Instead, it relies on the Kubernetes resource labeling facility to store the SDC GUID.
The following label will be used to store the instance ID of a node:
scaleio.sdcGuid=<instance-id-value>
For instance, the following attaches the scaleio.instance_guid label to node foo:
The current version of the ScaleIO Kubernetes volume plugin relies on the presence
drv_cfg
binary being installed on ScaleIO SDC nodes for the simple reason of retrieving the machine's SDCguid
to ultimately get the instance ID. This can be an issue if the binary has been moved or installed in non-standard location.Label Nodes with SDC GUID
This proposal is to forego the need to use the
drv_cfg
binary to get the value of the SDC GUID. Instead, it relies on the Kubernetes resource labeling facility to store the SDC GUID.The following label will be used to store the instance ID of a node:
For instance, the following attaches the
scaleio.instance_guid
label to nodefoo
:How it works
drv_cfg
binary as a best effort.scaleio.instance_guid
label provided, storage operations will fail.