Skip to content

Commit 621204a

Browse files
authored
Merge pull request kubernetes#1192 from ddebroy/csi-proxy3
Update config parameters for CSI Proxy and add Adapter to Locations
2 parents 3e36f06 + 3d0af15 commit 621204a

File tree

1 file changed

+14
-13
lines changed

1 file changed

+14
-13
lines changed

keps/sig-windows/20190714-windows-csi-support.md

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -317,9 +317,9 @@ A GRPC based interface, CSIProxyService, will be used by CSI Node Plugins to inv
317317

318318
##### CSI Proxy Configuration
319319
There will be two command line parameters that may be passed to csi-proxy.exe:
320-
1. kubernetes-csi-plugins-path: String parameter pointing to the path used by Kubernetes CSI plugins. Will default to: `C:\var\lib\kubelet\plugins\kubernetes.io\csi`. All requests for creation and deletion of paths through the CSIProxyService RPCs (detailed below) will need to be under this path.
320+
1. kubelet-csi-plugins-path: String parameter pointing to the path used by Kubernetes CSI plugins on each node. Will default to: `C:\var\lib\kubelet\plugins\kubernetes.io\csi`. All requests for creation and deletion of paths through the CSIProxyService RPCs (detailed below) will need to be under this path.
321321

322-
2. container-runtime-storage-path: String parameter pointing to the path used by the container runtime to store images, snapshots and other data related to containers. Possible values could be: `F:\ProgramData\docker`, `C:\ProgramData\containerd` or corresponding paths used by a Windows runtime. Parameters to `LinkVolume` (detailed below) will need to be under this path.
322+
2. kubelet-pod-path: String parameter pointing to the path used by the kubelet to store pod specific information. This should map to the value returned by [getPodsDir](https://github.com/kubernetes/kubernetes/blob/e476a60ccbe25581f5a6a9401081dcee311a066e/pkg/kubelet/kubelet_getters.go#L48). By default it will be set to: `C:\var\lib\kubelet\pods` Parameters to `LinkPath` (detailed below) will need to be under this path.
323323

324324
##### CSI Proxy GRPC API
325325
The following are the main RPC calls that will comprise a v1alpha1 version of the CSIProxyService API. A preliminary structure for Request and Response associated with each RPC is described below. Note that the specific structures as well as restrictions on them are expected to evolve during Alpha phase and are expected to be in a final form at the end of Beta. As the API evolves, the section below will be kept up-to-date
@@ -357,7 +357,7 @@ service CSIProxyService {
357357
// LinkPath invokes mklink on the global staging path of a volume linking it to a path within a container
358358
rpc LinkPath(LinkPathRequest) returns (LinkPathResponse) {}
359359
360-
// ListDiskLocations returns locations <Bus, Target, LUN ID> of all disk devices enumerated by Windows
360+
// ListDiskLocations returns locations <Adapter, Bus, Target, LUN ID> of all disk devices enumerated by Windows
361361
rpc ListDiskLocations(ListDiskLocationsRequest) returns (ListDiskLocationsResponse) {}
362362
363363
// ListDiskIDs returns all IDs (from IOCTL_STORAGE_QUERY_PROPERTY) of all disk devices enumerated by Windows
@@ -385,9 +385,9 @@ message PathExistsResponse {
385385
386386
// Context of the paths used for path prefix validation
387387
enum PathContext {
388-
// plugin maps to the configured kubernetes-csi-plugins-path path prefix
388+
// plugin maps to the configured kubelet-csi-plugins-path path prefix
389389
PLUGIN = 0;
390-
// container maps to the configured container-runtime-storage-path path prefix
390+
// container maps to the configured kubelet-pod-path path prefix
391391
CONTAINER = 1;
392392
}
393393
@@ -401,8 +401,8 @@ message MkdirRequest {
401401
// User account under which csi-proxy is started (typically LocalSystem).
402402
//
403403
// Restrictions:
404-
// Needs to be an absolute path under kubernetes-csi-plugins-path
405-
// or container-runtime-storage-path based on context
404+
// Needs to be an absolute path under kubelet-csi-plugins-path
405+
// or kubelet-pod-path based on context
406406
// Cannot exist already in host
407407
// Path needs to be specified with drive letter prefix: "X:\".
408408
// UNC paths of the form "\\server\share\path\file" are not allowed.
@@ -428,8 +428,8 @@ message RmdirRequest {
428428
// https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file
429429
//
430430
// Restrictions:
431-
// Needs to be an absolute path under kubernetes-csi-plugins-path
432-
// or container-runtime-storage-path based on context
431+
// Needs to be an absolute path under kubelet-csi-plugins-path
432+
// or kubelet-pod-path based on context
433433
// Path needs to be specified with drive letter prefix: "X:\".
434434
// UNC paths of the form "\\server\share\path\file" are not allowed.
435435
// All directory separators need to be backslash character: "\".
@@ -529,7 +529,7 @@ message MountSMBShareRequest {
529529
// https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file
530530
//
531531
// Restrictions:
532-
// Needs to be an absolute path under kubernetes-csi-plugins-path.
532+
// Needs to be an absolute path under kubelet-csi-plugins-path.
533533
// Needs to exist already in host
534534
// Path needs to be specified with drive letter prefix: "X:\".
535535
// UNC paths of the form "\\server\share\path\file" are not allowed.
@@ -602,7 +602,7 @@ message LinkPathRequest {
602602
// https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file
603603
//
604604
// Restrictions:
605-
// Needs to be an absolute path under container-runtime-storage-path
605+
// Needs to be an absolute path under kubelet-pod-path
606606
// Needs to exist already in host
607607
// Path needs to be specified with drive letter prefix: "X:\".
608608
// UNC paths of the form "\\server\share\path\file" are not allowed.
@@ -617,7 +617,7 @@ message LinkPathRequest {
617617
// https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file
618618
//
619619
// Restrictions:
620-
// Needs to be an absolute path under kubernetes-csi-plugins-path.
620+
// Needs to be an absolute path under kubelet-csi-plugins-path.
621621
// Needs to exist already in host
622622
// Path needs to be specified with drive letter prefix: "X:\".
623623
// UNC paths of the form "\\server\share\path\file" are not allowed.
@@ -638,7 +638,7 @@ message ListDiskLocationsRequest {
638638
}
639639
640640
message ListDiskLocationsResponse {
641-
// Map of disk device objects and <bus, target, lun ID> associated with each disk device
641+
// Map of disk device objects and <adapter, bus, target, lun ID> associated with each disk device
642642
map <string, DiskLocation> disk_locations = 1;
643643
644644
// Windows error code
@@ -647,6 +647,7 @@ message ListDiskLocationsResponse {
647647
}
648648
649649
message DiskLocation {
650+
string Adapter = 0;
650651
string Bus = 1;
651652
string Target = 2;
652653
string LUNID = 3;

0 commit comments

Comments
 (0)