Windows 存储
本页面提供了 Windows 操作系统的存储概述。
持久存储
Windows 具有分层文件系统驱动程序,用于挂载容器层并创建基于 NTFS 的复制文件系统。容器中的所有文件路径仅在该容器的上下文中解析。
- 对于 Docker,卷挂载只能指向容器中的目录,而不能指向单个文件。此限制不适用于 containerd。
- 卷挂载不能将文件或目录投射回宿主机文件系统。
- 不支持只读文件系统,因为 Windows 注册表和 SAM 数据库始终需要写入权限。然而,支持只读卷。
- 卷用户掩码和权限不可用。由于 SAM 在宿主机和容器之间不共享,它们之间没有映射关系。所有权限都在容器的上下文中解析。
因此,Windows 节点上不支持以下存储功能:
- 卷子路径挂载:在 Windows 容器中只能挂载整个卷。
- Secrets 的子路径卷挂载。
- 宿主机挂载投射。
- 只读根文件系统 (映射的卷仍然支持
readOnly
)。 - 块设备映射。
- 将内存作为存储介质(例如,将
emptyDir.medium
设置为Memory
)。 - 文件系统特性如 uid/gid;按用户的 Linux 文件系统权限。
- 使用 DefaultMode 设置 Secret 权限 (由于依赖于 UID/GID)。
- 基于 NFS 的存储/卷支持。
- 扩展挂载的卷 (resizefs)。
Kubernetes 卷支持在 Kubernetes 上部署需要数据持久化和 Pod 卷共享的复杂应用。与特定存储后端或协议相关的持久卷管理包括卷的创建/删除/扩缩容、将卷附加/卸载到 Kubernetes 节点以及将卷挂载/卸载到 Pod 中需要持久化数据的单个容器等操作。
卷管理组件作为 Kubernetes 卷 插件提供。Windows 支持以下几大类 Kubernetes 卷插件:
FlexVolume 插件
- 请注意,FlexVolume 已从 1.23 版本起弃用。
CSI 插件
树内卷插件
以下树内插件支持 Windows 节点上的持久存储:
最后修改于太平洋标准时间 2023 年 11 月 29 日上午 8:06:更新树内存储驱动程序状态 (#42415) (976ead0a1a)