第 3 章 验证先决条件

本章介绍了在部署前,在容器化 Red Hat Gluster Storage 之前验证的两个不同用例前必须验证的前提条件。

重要

从 Red Hat OpenShift Container Storage 3.11.5 开始,对 Red Hat Enterprise Linux Atomic Host 的支持已被弃用。红帽不推荐使用 Red Hat Enterprise Linux Atomic Host,且不支持它们在新部署中使用。升级到 Red Hat OpenShift Container Storage 3.11.5 的现有部署仍被支持。

3.1. 聚合模式

3.1.1. 支持的版本

有关使用 Red Hat Gluster Storage Server 和 Container-Native Storage 支持的 OpenShift Container Platform 版本,请参阅 https://access.redhat.com/articles/3403951

3.1.2. 环境要求

本节介绍了 Red Hat Enterprise Linux Atomic Host、Red Hat OpenShift Container Platform、Red Hat Enterprise Linux 和 Red Hat Gluster Storage 的要求。Red Hat Gluster Storage Container Native with OpenShift Container Platform 环境由 Red Hat Enterprise Linux Atomic Host 或 Red Hat Enterprise Linux 上安装的 Red Hat OpenShift Container Platform 组成。

3.1.2.1. 在 Red Hat Enterprise Linux 7 上使用 OpenShift Container Platform 安装 Red Hat Openshift Container Storage

本节介绍了使用基于 Red Hat Enterprise Linux 7 的 OpenShift Container Platform 3.11 安装 Red Hat Gluster Storage Container Native 的步骤。

3.1.2.1.1. 将 Openshift Master 设置为客户端

在安装 OpenShift 时,您可以使用 OpenShift Master 作为客户端执行 oc 命令。通常,它被设置为集群中的一个非计划节点。这是使用 OpenShift 安装程序时的默认配置。您还可以选择将其客户端安装到本地机器中,以便远程访问集群。如需更多信息,请参阅 https://access.redhat.com/documentation/en-us/openshift_container_platform/3.11/html/cli_reference/cli-reference-get-started-cli#installing-the-cli

安装 heketi-client 软件包

执行以下命令来安装 heketi-client 软件包。

# subscription-manager repos --enable=rh-gluster-3-client-for-rhel-7-server-rpms
# yum install heketi-client

3.1.2.2. OpenShift Container Platform 选项

  • 默认情况下,容器日志不会被配置为轮转或限制为 docker 的最大大小。日志文件可能会增加,以便在容器运行足够长并生成充足的日志时填充磁盘空间。
  • 要为主机上的容器设置日志限制,将 --log-optmax-sizemax-file 一起使用进行配置,以便在容器达到最大限制且在丢弃前只保存一定数量的文件。

    # cat /etc/sysconfig/docker
    
    OPTIONS='--insecure-registry=172.30.0.0/16 --selinux-enabled --log-opt max-size=50m --log-opt max-file=5'
注意

如果以上选项没有执行,日志就有可能被驱除。

3.1.3. Red Hat OpenShift Container Platform 和 Red Hat Openshift Container Storage 要求

以下列表提供了 Red Hat OpenShift Container Platform 和 Red Hat Openshift Container Storage 要求:

  • Red Hat Enterprise Linux 系统上的所有 OpenShift 节点都必须安装 glusterfs-client RPMs(glusterfs、glusterfs-client-xlators、glusterfs-libs、glusterfs-fuse)。您可以运行以下命令来验证 RPM 是否已安装:

    # yum list glusterfs glusterfs-client-xlators glusterfs-libs glusterfs-fuse
注意

客户端 RPM 必须与 gluster-rhgs-server 相同。gluster-rhgs-server 版本基于所选 OCS 版本。

有关安装原生客户端软件包的详情请参考 https://access.redhat.com/documentation/en-us/red_hat_gluster_storage/3.5/html-single/administration_guide/index#Installing_Native_Client

3.1.4. 部署和扩展指南

要防止潜在的部署或扩展问题,请在使用 OpenShift Container Platform 部署聚合模式前参阅以下指南。

确保受信存储池的大小适当,并且您有了按需动态扩展的空间。此操作可确保不超出以下最大限制:

有关聚合模式的大小指南

  • 由文件接口支持的持久性卷 :对于典型的操作,以每四节点聚合模式集群的文件支持 500-800 个持久性卷的大小。支持由文件接口支持的持久性卷的最大限制是在聚合模式部署中每个四节点集群的 2000 个持久性卷。考虑到微服务可以根据需要动态扩展,建议初始大小保持足够多的扩展空间。如果需要额外的扩展,请添加新的四节点聚合模式集群来支持额外的持久性卷

    每个受信存储池中基于文件的持久性卷的默认限制被设置为 1000,支持的最大值为 2000。有关需要执行超过 1000 个默认限制(最大为 2000 个)的步骤的更多信息,请参阅 How to have more PV's beyond default limit on OCS?

  • 由基于块的存储支持的持久性卷 :每个四个节点聚合模式集群最多 300 个持久性卷的大小。
  • 由文件支持的持久性卷和块 :300-500 持久性卷的大小(由文件支持)和 100-200 持久性卷(由块支持)。1000 个 Gluster 卷,包括文件 PV 和块托管卷。
  • 最小 Red Hat Openshift Container Storage 集群大小(4) :建议在 Red Hat Openshift Container Storage 集群中至少具有 4 个节点,以便完全满足高可用性要求。虽然创建持久性卷声明需要 3 个节点,但 3 节点集群中的一个节点失败可防止创建持久性卷声明。第四个节点提供高可用性,并允许创建持久卷声明,即使节点失败也是如此。
  • 最低要求 :托管聚合模式 peer 的每个物理或虚拟节点都需要以下内容:

    • 每个持久性卷最少需要 8 GB RAM 和 30 MB
    • 相同的磁盘类型
    • heketidb 利用 2 GB 分布式副本卷
    • 至少 2 个物理内核对
注意

2 个物理内核对转换为 4 个 vCPU 用于非超线程系统,使用 8 个 vCPU 进行超线程系统。

有关聚合模式的部署指南

  • 在聚合模式下,您可以在 OpenShift Container Platform Infrastructure 节点或 OpenShift Container Platform Application 节点上安装 Red Hat Openshift Container Storage 节点、Heketi 和所有 provisioner pod。
  • Red Hat Gluster Storage Container Native with OpenShift Container Platform 默认支持每个卷最多 14 个快照( Heketi 模板中的snap-max-hard-limit =14 )。
  • 所需的内核版本为 kernel-3.10.0-862.14.4.el7.x86_64 或更高版本。运行以下命令验证已安装并运行的内核版本:

    # rpm -q kernel
    kernel-3.10.0-862.14.4.el7.x86_64
    # uname -r
    3.10.0-862.14.4.el7.x86_64