第 4 章 配置持久性存储


4.1. 使用 AWS Elastic Block Store 的持久性存储

OpenShift Container Platform 支持 AWS Elastic Block Store 卷 (EBS) 。您可以使用 Amazon EC2 为 OpenShift Container Platform 集群置备持久性存储。我们假设您对 Kubernetes 和 AWS 有一定的了解。

Kubernetes 持久性卷框架允许管理员提供带有持久性存储的集群,并使用户可以在不了解底层存储架构的情况下请求这些资源。AWS Elastic Block Store 卷可以动态部署。持久性卷不与某个特定项目或命名空间相关联,它们可以在 OpenShift Container Platform 集群间共享。持久性卷声明是针对某个项目或者命名空间的,相应的用户可请求它。

重要

存储的高可用性功能由底层存储供应商实现。

4.1.1. 其他资源

4.1.2. 创建 EBS 存储类

存储类用于区分和划分存储级别和使用。通过定义存储类,用户可以获得动态置备的持久性卷。

流程

  1. 在 OpenShift Container Platform 控制台中点击 StorageStorage Classes
  2. 在存储类概述中,点击 Create Storage Class
  3. 在出现的页面中定义所需选项。

    1. 输入一个名称来指代存储类。
    2. 输入描述信息(可选)。
    3. 选择 reclaim 策略。
    4. 从下拉列表中选择 kubernetes.io/aws-ebs

      注意

      要使用等同的 CSI 驱动程序创建存储类,从下拉列表中选择 ebs.csi.aws.com。如需了解更多详细信息,请参阅 AWS Elastic Block Store CSI Driver Operator

    5. 根据需要为存储类输入附加参数。
  4. Create 创建存储类。

4.1.3. 创建持久性卷声明

先决条件

当存储可以被挂载为 OpenShift Container Platform 中的卷之前,它必须已存在于底层的存储系统中。

流程

  1. 在 OpenShift Container Platform 控制台中,点击 Storage Persistent Volume Claims
  2. 在持久性卷声明概述页中,点 Create Persistent Volume Claim
  3. 在出现的页面中定义所需选项。

    1. 从下拉菜单中选择之前创建的存储类。
    2. 输入存储声明的唯一名称。
    3. 选择访问模式。这决定了所创建存储声明的读写权限。
    4. 定义存储声明的大小。
  4. 点击 Create 创建持久性卷声明,并生成一个持久性卷。

4.1.4. 卷格式

在 OpenShift Container Platform 挂载卷并将其传递给容器之前,它会检查它是否包含由 fstype 参数指定的文件系统。如果没有使用文件系统格式化该设备,该设备中的所有数据都会被删除,并使用指定的文件系统自动格式化该设备。

这将可以使用未格式化的 AWS 卷作为持久性卷,因为 OpenShift Container Platform 在第一次使用前会对其进行格式化。

4.1.5. 一个节点上的 EBS 卷的最大数目

默认情况下,OpenShift Container Platform 最多支持把 39 个 EBS 卷附加到一个节点。这个限制与 AWS 卷限制一致。卷限制取决于实例类型。

重要

作为集群管理员,您必须使用树内或 Container Storage Interface(CSI)卷及其相应的存储类,但不得同时使用这两个卷类型。附加的最大 EBS 卷数将单独计算为 in-tree 和 CSI 卷。

4.1.6. 其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.