diff --git a/content/en/docs/concepts/storage/persistent-volumes.md b/content/en/docs/concepts/storage/persistent-volumes.md
index 76149efed1638..d2c04f8ec7e79 100644
--- a/content/en/docs/concepts/storage/persistent-volumes.md
+++ b/content/en/docs/concepts/storage/persistent-volumes.md
@@ -381,10 +381,9 @@ to `Retain`, including cases where you are reusing an existing PV.
 Support for expanding PersistentVolumeClaims (PVCs) is enabled by default. You can expand
 the following types of volumes:
 
-* azureFile (deprecated)
-* {{< glossary_tooltip text="csi" term_id="csi" >}}
+* {{< glossary_tooltip text="csi" term_id="csi" >}} (including some CSI migrated
+volme types)
 * flexVolume (deprecated)
-* rbd (deprecated)
 * portworxVolume (deprecated)
 
 You can only expand a PVC if its storage class's `allowVolumeExpansion` field is set to true.
@@ -545,6 +544,8 @@ Older versions of Kubernetes also supported the following in-tree PersistentVolu
   (**not available** starting v1.31)
 * `flocker` - Flocker storage.
   (**not available** starting v1.25)
+* `glusterfs` - GlusterFS storage.
+  (**not available** starting v1.26)
 * `photonPersistentDisk` - Photon controller persistent disk.
   (**not available** starting v1.15)
 * `quobyte` - Quobyte volume.
@@ -727,13 +728,9 @@ Not all Persistent Volume types support mount options.
 
 The following volume types support mount options:
 
-* `azureFile`
-* `cephfs` (**deprecated** in v1.28)
-* `cinder` (**deprecated** in v1.18)
+* `csi` (including CSI migrated volume types)
 * `iscsi`
 * `nfs`
-* `rbd` (**deprecated** in v1.28)
-* `vsphereVolume`
 
 Mount options are not validated. If a mount option is invalid, the mount fails.
 
@@ -966,14 +963,10 @@ network-attached storage. See
 The following volume plugins support raw block volumes, including dynamic provisioning where
 applicable:
 
-* CSI
+* CSI (including some CSI migrated volume types)
 * FC (Fibre Channel)
 * iSCSI
 * Local volume
-* OpenStack Cinder
-* RBD (deprecated)
-* RBD (Ceph Block Device; deprecated)
-* VsphereVolume
 
 ### PersistentVolume using a Raw Block Volume {#persistent-volume-using-a-raw-block-volume}
 
diff --git a/content/en/docs/concepts/storage/volumes.md b/content/en/docs/concepts/storage/volumes.md
index fadcff99937ae..5814f5d65430c 100644
--- a/content/en/docs/concepts/storage/volumes.md
+++ b/content/en/docs/concepts/storage/volumes.md
@@ -120,34 +120,17 @@ third party storage driver instead.
 
 ### azureFile (deprecated) {#azurefile}
 
-{{< feature-state for_k8s_version="v1.21" state="deprecated" >}}
-
-The `azureFile` volume type mounts a Microsoft Azure File volume (SMB 2.1 and 3.0)
-into a pod.
-
-For more details, see the
-[`azureFile` volume plugin](https://github.com/kubernetes/examples/tree/master/staging/volumes/azure_file/README.md).
-
-#### azureFile CSI migration
-
-{{< feature-state for_k8s_version="v1.26" state="stable" >}}
-
-The `CSIMigration` feature for `azureFile`, when enabled, redirects all plugin operations
-from the existing in-tree plugin to the `file.csi.azure.com` Container
-Storage Interface (CSI) Driver. In order to use this feature, the [Azure File CSI
-Driver](https://github.com/kubernetes-sigs/azurefile-csi-driver)
-must be installed on the cluster and the `CSIMigrationAzureFile`
-[feature gates](/docs/reference/command-line-tools-reference/feature-gates/) must be enabled.
-
-Azure File CSI driver does not support using the same volume with different fsgroups. If
-`CSIMigrationAzureFile` is enabled, using same volume with different fsgroups won't be supported at all.
+<!-- maintenance note: OK to remove all mention of azureFile once the v1.30 release of
+Kubernetes has gone out of support -->
 
-#### azureFile CSI migration complete
+In Kubernetes {{< skew currentVersion >}}, all operations for the in-tree `azureFile` type
+are redirected to the `file.csi.azure.com` {{< glossary_tooltip text="CSI" term_id="csi" >}} driver.
 
-{{< feature-state for_k8s_version="v1.21" state="alpha" >}}
+The AzureFile  in-tree storage driver was deprecated in the Kubernetes v1.21 release
+and then removed entirely in the v1.30 release.
 
-To disable the `azureFile` storage plugin from being loaded by the controller manager
-and the kubelet, set the `InTreePluginAzureFileUnregister` flag to `true`.
+The Kubernetes project suggests that you use the [Azure File](https://github.com/kubernetes-sigs/azurefile-csi-driver)
+third party storage driver instead.
 
 ### cephfs (removed) {#cephfs}
 
@@ -895,56 +878,20 @@ For more details, see [Configuring Secrets](/docs/concepts/configuration/secret/
 
 ### vsphereVolume (deprecated) {#vspherevolume}
 
-{{< note >}}
-The Kubernetes project recommends using the [vSphere CSI](https://github.com/kubernetes-sigs/vsphere-csi-driver)
-out-of-tree storage driver instead.
-{{< /note >}}
-
-A `vsphereVolume` is used to mount a vSphere VMDK volume into your Pod. The contents
-of a volume are preserved when it is unmounted. It supports both VMFS and VSAN datastore.
-
-For more information, see the
-[vSphere volume](https://github.com/kubernetes/examples/tree/master/staging/volumes/vsphere) examples.
-
-#### vSphere CSI migration {#vsphere-csi-migration}
-
-{{< feature-state for_k8s_version="v1.26" state="stable" >}}
+<!-- maintenance note: OK to remove all mention of vsphereVolume once the v1.30 release of
+Kubernetes has gone out of support -->
 
 In Kubernetes {{< skew currentVersion >}}, all operations for the in-tree `vsphereVolume` type
 are redirected to the `csi.vsphere.vmware.com` {{< glossary_tooltip text="CSI" term_id="csi" >}} driver.
 
-[vSphere CSI driver](https://github.com/kubernetes-sigs/vsphere-csi-driver)
-must be installed on the cluster. You can find additional advice on how to migrate in-tree `vsphereVolume` in VMware's documentation page
-[Migrating In-Tree vSphere Volumes to vSphere Container Storage Plug-in](https://docs.vmware.com/en/VMware-vSphere-Container-Storage-Plug-in/2.0/vmware-vsphere-csp-getting-started/GUID-968D421F-D464-4E22-8127-6CB9FF54423F.html).
-If vSphere CSI Driver is not installed volume operations can not be performed on the PV created with the in-tree `vsphereVolume` type.
-
-You must run vSphere 7.0u2 or later in order to migrate to the vSphere CSI driver.
-
-If you are running a version of Kubernetes other than v{{< skew currentVersion >}}, consult
-the documentation for that version of Kubernetes.
-
-{{< note >}}
-The following StorageClass parameters from the built-in `vsphereVolume` plugin are not supported by the vSphere CSI driver:
-
-* `diskformat`
-* `hostfailurestotolerate`
-* `forceprovisioning`
-* `cachereservation`
-* `diskstripes`
-* `objectspacereservation`
-* `iopslimit`
-
-Existing volumes created using these parameters will be migrated to the vSphere CSI driver,
-but new volumes created by the vSphere CSI driver will not be honoring these parameters.
-{{< /note >}}
+The `vsphereVolume` in-tree storage driver was deprecated in the Kubernetes v1.19 release
+and then removed entirely in the v1.30 release.
 
-#### vSphere CSI migration complete {#vsphere-csi-migration-complete}
+The Kubernetes project suggests that you use the
+[vSphere CSI](https://github.com/kubernetes-sigs/vsphere-csi-driver)
+third party storage driver instead.
 
-{{< feature-state for_k8s_version="v1.19" state="beta" >}}
 
-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.
 
 ## Using subPath {#using-subpath}
 
@@ -1222,12 +1169,6 @@ provisioning/delete, attach/detach, mount/unmount and resizing of volumes.
 In-tree plugins that support `CSIMigration` and have a corresponding CSI driver implemented
 are listed in [Types of Volumes](#volume-types).
 
-The following in-tree plugins support persistent storage on Windows nodes:
-
-* [`azureFile`](#azurefile)
-* [`gcePersistentDisk`](#gcepersistentdisk)
-* [`vsphereVolume`](#vspherevolume)
-
 ### flexVolume (deprecated)   {#flexvolume}
 
 {{< feature-state for_k8s_version="v1.23" state="deprecated" >}}