2.5. 通过使用本地存储设备在 IBM Power Systems 基础架构的 OpenShift Container Storage 节点中添加容量来扩展存储

使用这个步骤在 IBM Power Systems 基础架构上配置的基于 OpenShift Container Storage worker 节点的本地存储中添加存储容量(额外存储设备)。

先决条件

  • 您必须登录 OpenShift Container Platform (RHOCP) 集群。
  • 您必须已安装了本地存储 operator。请使用以下步骤,请参阅

  • 您必须有三个 OpenShift Container Platform worker 节点,并附加到每个节点(如 0.5TB SSD),因为使用了原始的 OpenShift Container StorageCluster。

流程

  1. 要在安装了 OpenShift Container Storage 的 OpenShift Container Platform 节点中添加存储容量,您需要

    1. 添加一个新磁盘,它是 Openshift Container Platform(RHOCP)集群中每个 worker 节点最少有一个设备。
    2. 通过运行 lsblk 内部节点,检查新磁盘是否已添加到节点。

      $ oc debug node/worker-0
      $lsblk

      输出示例:

      Creating debug namespace/openshift-debug-node-ggrqr ...
      Starting pod/worker-2-debug ...
      To use host binaries, run `chroot /host`
      Pod IP: 192.168.88.23
      If you don't see a command prompt, try pressing enter.
      sh-4.4# chroot /host
      sh-4.4# lsblk
      NAME                         MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
      loop0                          7:0    0  256G  0 loop
      vda                          252:0    0   40G  0 disk
      |-vda1                       252:1    0    4M  0 part
      |-vda2                       252:2    0  384M  0 part /boot
      `-vda4                       252:4    0 39.6G  0 part
        `-coreos-luks-root-nocrypt 253:0    0 39.6G  0 dm   /sysroot
      vdb                          252:16   0  512B  1 disk
      vdc                          252:32   0  256G  0 disk
      vdd                          252:48   0  256G  0 disk
      sh-4.4#
      sh-4.4#
      Removing debug pod ...
      Removing debug namespace/openshift-debug-node-ggrqr ...
    3. 新添加的磁盘将自动由 LocalVolumeSet 发现。
  2. 显示新创建的 PV,其 storageclass 名称用于 localVolumeSet CR。

    $ oc get pv | grep localblock | grep Available

    输出示例:

    local-pv-290020c2   256Gi   RWO     Delete  Available   localblock      2m35s
    local-pv-7702952c   256Gi   RWO     Delete  Available   localblock      2m27s
    local-pv-a7a567d    256Gi   RWO     Delete  Available   localblock      2m22s
    ...

    有三个可用的 PV 大小(它将用于新的 OSD)。

  3. 导航到 OpenShift Web 控制台。
  4. 点左侧导航栏上的 Operator
  5. 选择 Installed Operators
  6. 在窗口中点击 OpenShift Container Storage Operator:
  7. 在顶部导航栏中,滚动右滚动并单击 Storage Cluster 选项卡。
  8. 可见列表中应当只有一个项目。点击最右侧的(⋮)来扩展选项菜单。
  9. 从选项菜单中选择 Add Capacity

    在这个对话框中,将 Storage Class name 设置为 localVolumeset CR 中使用的名称。显示的可用容量基于存储类中可用的本地磁盘。

  10. 完成设置后,点 Add。您可能需要等待几分钟,以便存储集群达到 Ready 状态。
  11. 验证新 OSD 及其对应的新 PVC 是否已创建。

    $ oc get -n openshift-storage pods -l app=rook-ceph-osd

    输出示例:

    NAME                               READY   STATUS    RESTARTS   AGE
    rook-ceph-osd-0-6f8655ff7b-gj226   1/1     Running   0          1h
    rook-ceph-osd-1-6c66d77f65-cfgfq   1/1     Running   0          1h
    rook-ceph-osd-2-69f6b4c597-mtsdv   1/1     Running   0          1h
    rook-ceph-osd-3-c784bdbd4-w4cmj    1/1     Running   0          5m
    rook-ceph-osd-4-6d99845f5b-k7f8n   1/1     Running   0          5m
    rook-ceph-osd-5-fdd9897c9-r9mgb    1/1     Running   0          5m

    在上例中,osd-3、osd-4 和 osd-5 是新添加的 pod 到 OpenShift Container Storage 集群。

    $ oc get pvc -n openshift-storage |grep localblock

    输出示例:

    ocs-deviceset-localblock-0-data-0-sfsgf   Bound    local-pv-8137c873      256Gi     RWO    localblock  1h
    ocs-deviceset-localblock-0-data-1-qhs9m   Bound    local-pv-290020c2      256Gi     RWO    localblock  10m
    ocs-deviceset-localblock-1-data-0-499r2   Bound    local-pv-ec7f2b80      256Gi     RWO    localblock  1h
    ocs-deviceset-localblock-1-data-1-p9rth   Bound    local-pv-a7a567d       256Gi     RWO    localblock  10m
    ocs-deviceset-localblock-2-data-0-8pzjr   Bound    local-pv-1e31f771      256Gi     RWO    localblock  1h
    ocs-deviceset-localblock-2-data-1-7zwwn   Bound    local-pv-7702952c      256Gi     RWO    localblock  10m

    在上例中,我们看到创建了三个新 PVC。

验证步骤

  1. 导航到 OverviewPersistent Storage 选项卡,然后检查 Capacity 分类 卡。

    请注意,容量会根据您的选择而增加。

    注意

    原始容量不考虑复制并显示完整容量。

重要

OpenShift Container Storage 不支持通过减少 OSD 或减少节点来减少集群。