Skip to content

Commit cfce358

Browse files
authored
Merge pull request #28629 from Jiawei0227/migration
Fix csi migration feature gates
2 parents 2a42dd4 + ce86412 commit cfce358

File tree

2 files changed

+54
-15
lines changed

2 files changed

+54
-15
lines changed

content/en/docs/concepts/storage/volumes.md

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ beta features must be enabled.
124124
{{< feature-state for_k8s_version="v1.17" state="alpha" >}}
125125

126126
To disable the `awsElasticBlockStore` storage plugin from being loaded by the controller manager
127-
and the kubelet, set the `CSIMigrationAWSComplete` flag to `true`. This feature requires the `ebs.csi.aws.com` Container Storage Interface (CSI) driver installed on all worker nodes.
127+
and the kubelet, set the `InTreePluginAWSUnregister` flag to `true`.
128128

129129
### azureDisk {#azuredisk}
130130

@@ -462,7 +462,8 @@ spec:
462462
required:
463463
nodeSelectorTerms:
464464
- matchExpressions:
465-
- key: failure-domain.beta.kubernetes.io/zone
465+
# failure-domain.beta.kubernetes.io/zone should be used prior to 1.21
466+
- key: topology.kubernetes.io/zone
466467
operator: In
467468
values:
468469
- us-central1-a
@@ -480,6 +481,13 @@ Driver](https://github.com/kubernetes-sigs/gcp-compute-persistent-disk-csi-drive
480481
must be installed on the cluster and the `CSIMigration` and `CSIMigrationGCE`
481482
beta features must be enabled.
482483

484+
#### GCE CSI migration complete
485+
486+
{{< feature-state for_k8s_version="v1.21" state="alpha" >}}
487+
488+
To disable the `gcePersistentDisk` storage plugin from being loaded by the controller manager
489+
and the kubelet, set the `InTreePluginGCEUnregister` flag to `true`.
490+
483491
### gitRepo (deprecated) {#gitrepo}
484492

485493
{{< warning >}}
@@ -1134,7 +1142,7 @@ but new volumes created by the vSphere CSI driver will not be honoring these par
11341142

11351143
{{< feature-state for_k8s_version="v1.19" state="beta" >}}
11361144

1137-
To turn off the `vsphereVolume` plugin from being loaded by the controller manager and the kubelet, you need to set this feature flag to `true`. You must install a `csi.vsphere.vmware.com` {{< glossary_tooltip text="CSI" term_id="csi" >}} driver on all worker nodes.
1145+
To turn off the `vsphereVolume` plugin from being loaded by the controller manager and the kubelet, you need to set `InTreePluginvSphereUnregister` feature flag to `true`. You must install a `csi.vsphere.vmware.com` {{< glossary_tooltip text="CSI" term_id="csi" >}} driver on all worker nodes.
11381146

11391147
## Using subPath {#using-subpath}
11401148

content/en/docs/reference/command-line-tools-reference/feature-gates.md

Lines changed: 43 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -68,19 +68,14 @@ different Kubernetes components.
6868
| `CSIMigration` | `true` | Beta | 1.17 | |
6969
| `CSIMigrationAWS` | `false` | Alpha | 1.14 | |
7070
| `CSIMigrationAWS` | `false` | Beta | 1.17 | |
71-
| `CSIMigrationAWSComplete` | `false` | Alpha | 1.17 | |
7271
| `CSIMigrationAzureDisk` | `false` | Alpha | 1.15 | 1.18 |
7372
| `CSIMigrationAzureDisk` | `false` | Beta | 1.19 | |
74-
| `CSIMigrationAzureDiskComplete` | `false` | Alpha | 1.17 | |
7573
| `CSIMigrationAzureFile` | `false` | Alpha | 1.15 | 1.19 |
7674
| `CSIMigrationAzureFile` | `false` | Beta | 1.21 | |
77-
| `CSIMigrationAzureFileComplete` | `false` | Alpha | 1.17 | |
7875
| `CSIMigrationGCE` | `false` | Alpha | 1.14 | 1.16 |
7976
| `CSIMigrationGCE` | `false` | Beta | 1.17 | |
80-
| `CSIMigrationGCEComplete` | `false` | Alpha | 1.17 | |
8177
| `CSIMigrationOpenStack` | `false` | Alpha | 1.14 | 1.17 |
8278
| `CSIMigrationOpenStack` | `true` | Beta | 1.18 | |
83-
| `CSIMigrationOpenStackComplete` | `false` | Alpha | 1.17 | |
8479
| `CSIMigrationvSphere` | `false` | Beta | 1.19 | |
8580
| `CSIStorageCapacity` | `false` | Alpha | 1.19 | 1.20 |
8681
| `CSIStorageCapacity` | `true` | Beta | 1.21 | |
@@ -129,6 +124,12 @@ different Kubernetes components.
129124
| `JobTrackingWithFinalizers` | `false` | Alpha | 1.22 | |
130125
| `IngressClassNamespacedParams` | `false` | Alpha | 1.21 | 1.21 |
131126
| `IngressClassNamespacedParams` | `true` | Beta | 1.22 | |
127+
| `InTreePluginAWSUnregister` | `false` | Alpha | 1.21 | |
128+
| `InTreePluginAzureDiskUnregister` | `false` | Alpha | 1.21 | |
129+
| `InTreePluginAzureFileUnregister` | `false` | Alpha | 1.21 | |
130+
| `InTreePluginGCEUnregister` | `false` | Alpha | 1.21 | |
131+
| `InTreePluginOpenStackUnregister` | `false` | Alpha | 1.21 | |
132+
| `InTreePluginvSphereUnregister` | `false` | Alpha | 1.21 | |
132133
| `IPv6DualStack` | `false` | Alpha | 1.15 | 1.20 |
133134
| `IPv6DualStack` | `true` | Beta | 1.21 | |
134135
| `KubeletCredentialProviders` | `false` | Alpha | 1.20 | |
@@ -230,8 +231,18 @@ different Kubernetes components.
230231
| `CSIDriverRegistry` | `false` | Alpha | 1.12 | 1.13 |
231232
| `CSIDriverRegistry` | `true` | Beta | 1.14 | 1.17 |
232233
| `CSIDriverRegistry` | `true` | GA | 1.18 | |
234+
| `CSIMigrationAWSComplete` | `false` | Alpha | 1.17 | 1.20 |
235+
| `CSIMigrationAWSComplete` | - | Deprecated | 1.21 | - |
236+
| `CSIMigrationAzureDiskComplete` | `false` | Alpha | 1.17 | 1.20 |
237+
| `CSIMigrationAzureDiskComplete` | - | Deprecated | 1.21 | - |
238+
| `CSIMigrationAzureFileComplete` | `false` | Alpha | 1.17 | 1.20 |
239+
| `CSIMigrationAzureFileComplete` | - | Deprecated | 1.21 | - |
240+
| `CSIMigrationGCEComplete` | `false` | Alpha | 1.17 | 1.20 |
241+
| `CSIMigrationGCEComplete` | - | Deprecated | 1.21 | - |
242+
| `CSIMigrationOpenStackComplete` | `false` | Alpha | 1.17 | 1.20 |
243+
| `CSIMigrationOpenStackComplete` | - | Deprecated | 1.21 | - |
233244
| `CSIMigrationvSphereComplete` | `false` | Beta | 1.19 | 1.21 |
234-
| `CSIMigrationvSphereComplete` | `false` | Deprecated | 1.22 | - |
245+
| `CSIMigrationvSphereComplete` | - | Deprecated | 1.22 | - |
235246
| `CSINodeInfo` | `false` | Alpha | 1.12 | 1.13 |
236247
| `CSINodeInfo` | `true` | Beta | 1.14 | 1.16 |
237248
| `CSINodeInfo` | `true` | GA | 1.17 | |
@@ -556,7 +567,9 @@ Each feature gate is designed for enabling/disabling a specific feature:
556567
kubelet and volume controllers and enables shims and translation logic to
557568
route volume operations from the AWS-EBS in-tree plugin to EBS CSI plugin.
558569
Requires CSIMigration and CSIMigrationAWS feature flags enabled and EBS CSI
559-
plugin installed and configured on all nodes in the cluster.
570+
plugin installed and configured on all nodes in the cluster. This flag has
571+
been deprecated in favor of the `InTreePluginAWSUnregister` feature flag
572+
which prevents the registration of in-tree EBS plugin.
560573
- `CSIMigrationAzureDisk`: Enables shims and translation logic to route volume
561574
operations from the Azure-Disk in-tree plugin to AzureDisk CSI plugin.
562575
Supports falling back to in-tree AzureDisk plugin if a node does not have
@@ -567,7 +580,8 @@ Each feature gate is designed for enabling/disabling a specific feature:
567580
logic to route volume operations from the Azure-Disk in-tree plugin to
568581
AzureDisk CSI plugin. Requires CSIMigration and CSIMigrationAzureDisk feature
569582
flags enabled and AzureDisk CSI plugin installed and configured on all nodes
570-
in the cluster.
583+
in the cluster. This flag has been deprecated in favor of the
584+
`InTreePluginAzureDiskUnregister` feature flag which prevents the registration of in-tree AzureDisk plugin.
571585
- `CSIMigrationAzureFile`: Enables shims and translation logic to route volume
572586
operations from the Azure-File in-tree plugin to AzureFile CSI plugin.
573587
Supports falling back to in-tree AzureFile plugin if a node does not have
@@ -578,7 +592,9 @@ Each feature gate is designed for enabling/disabling a specific feature:
578592
logic to route volume operations from the Azure-File in-tree plugin to
579593
AzureFile CSI plugin. Requires CSIMigration and CSIMigrationAzureFile feature
580594
flags enabled and AzureFile CSI plugin installed and configured on all nodes
581-
in the cluster.
595+
in the cluster. This flag has been deprecated in favor of the
596+
`InTreePluginAzureFileUnregister` feature flag which prevents the registration
597+
of in-tree AzureFile plugin.
582598
- `CSIMigrationGCE`: Enables shims and translation logic to route volume
583599
operations from the GCE-PD in-tree plugin to PD CSI plugin. Supports falling
584600
back to in-tree GCE plugin if a node does not have PD CSI plugin installed and
@@ -587,7 +603,8 @@ Each feature gate is designed for enabling/disabling a specific feature:
587603
kubelet and volume controllers and enables shims and translation logic to
588604
route volume operations from the GCE-PD in-tree plugin to PD CSI plugin.
589605
Requires CSIMigration and CSIMigrationGCE feature flags enabled and PD CSI
590-
plugin installed and configured on all nodes in the cluster.
606+
plugin installed and configured on all nodes in the cluster. This flag has
607+
been deprecated in favor of the `InTreePluginGCEUnregister` feature flag which prevents the registration of in-tree GCE PD plugin.
591608
- `CSIMigrationOpenStack`: Enables shims and translation logic to route volume
592609
operations from the Cinder in-tree plugin to Cinder CSI plugin. Supports
593610
falling back to in-tree Cinder plugin if a node does not have Cinder CSI
@@ -596,7 +613,8 @@ Each feature gate is designed for enabling/disabling a specific feature:
596613
kubelet and volume controllers and enables shims and translation logic to route
597614
volume operations from the Cinder in-tree plugin to Cinder CSI plugin.
598615
Requires CSIMigration and CSIMigrationOpenStack feature flags enabled and Cinder
599-
CSI plugin installed and configured on all nodes in the cluster.
616+
CSI plugin installed and configured on all nodes in the cluster. This flag has
617+
been deprecated in favor of the `InTreePluginOpenStackUnregister` feature flag which prevents the registration of in-tree openstack cinder plugin.
600618
- `CSIMigrationvSphere`: Enables shims and translation logic to route volume operations
601619
from the vSphere in-tree plugin to vSphere CSI plugin.
602620
Supports falling back to in-tree vSphere plugin if a node does not have vSphere
@@ -605,7 +623,8 @@ Each feature gate is designed for enabling/disabling a specific feature:
605623
and volume controllers and enables shims and translation logic to route volume operations
606624
from the vSphere in-tree plugin to vSphere CSI plugin. Requires CSIMigration and
607625
CSIMigrationvSphere feature flags enabled and vSphere CSI plugin installed and
608-
configured on all nodes in the cluster.
626+
configured on all nodes in the cluster. This flag has been deprecated in favor
627+
of the `InTreePluginvSphereUnregister` feature flag which prevents the registration of in-tree vsphere plugin.
609628
- `CSINodeInfo`: Enable all logic related to the CSINodeInfo API object in csi.storage.k8s.io.
610629
- `CSIPersistentVolume`: Enable discovering and mounting volumes provisioned through a
611630
[CSI (Container Storage Interface)](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/storage/container-storage-interface.md)
@@ -736,6 +755,18 @@ Each feature gate is designed for enabling/disabling a specific feature:
736755
for Windows containers.
737756
- `ImmutableEphemeralVolumes`: Allows for marking individual Secrets and ConfigMaps as
738757
immutable for better safety and performance.
758+
- `InTreePluginAWSUnregister`: Stops registering the aws-ebs in-tree plugin in kubelet
759+
and volume controllers.
760+
- `InTreePluginAzureDiskUnregister`: Stops registering the azuredisk in-tree plugin in kubelet
761+
and volume controllers.
762+
- `InTreePluginAzureFileUnregister`: Stops registering the azurefile in-tree plugin in kubelet
763+
and volume controllers.
764+
- `InTreePluginGCEUnregister`: Stops registering the gce-pd in-tree plugin in kubelet
765+
and volume controllers.
766+
- `InTreePluginOpenStackUnregister`: Stops registering the OpenStack cinder in-tree plugin in kubelet
767+
and volume controllers.
768+
- `InTreePluginvSphereUnregister`: Stops registering the vSphere in-tree plugin in kubelet
769+
and volume controllers.
739770
- `IndexedJob`: Allows the [Job](/docs/concepts/workloads/controllers/job/)
740771
controller to manage Pod completions per completion index.
741772
- `JobTrackingWithFinalizers`: Enables tracking [Job](/docs/concepts/workloads/controllers/job)

0 commit comments

Comments
 (0)