Menu Close

7.5. Ceph File System Metadata Serve rノードの手動アップグレード

Red Hat Enterprise Linux 7 または 8 を実行している Red Hat Ceph Storage クラスターで、Ceph File System (CephFS) Metadata Server (MDS) ソフトウェアを手動でアップグレードできます。

重要

ストレージクラスターをアップグレードする前に、アクティブな MDS ランクの数を減らし、ファイルシステムごとに 1 つにします。これにより、複数の MDS 間でバージョンの競合が発生しなくなります。また、アップグレードを行う前に、すべてのスタンバイノードをオフラインにしてください。

これは、MDSクラスターにはバージョニングやファイルシステムフラグが組み込まれていないためです。これらの機能がないと、複数の MDS が異なるバージョンの MDS ソフトウェアを使用して通信することになり、アサーションやその他の不具合が発生する可能性があります。

前提条件

  • 稼働中の Red Hat Ceph Storage クラスターがある。
  • ノードは Red Hat Ceph Storageバージョン 3.3z64 または 4.1 を使用している。
  • ストレージクラスター内のすべてのノードへの root レベルのアクセス。
重要

基盤となる XFS ファイルシステムが ftype=1でフォーマットされているか、d_type をサポートしている。xfs_info /var コマンドを実行し、ftype1 になっていることを確認します。ftype の値が 1 でない場合は、新しいディスクをアタッチするか、ボリュームを作成します。この新しいデバイスの上に、新しいXFSファイルシステムを作成し、/var/lib/containers にマウントします。

Red Hat Enterprise Linux 8.0 以降、mkfs.xfs はデフォルトで ftype=1 を有効にします。

手順

  1. アクティブな MDS ランクを 1 にします。

    構文

    ceph fs set FILE_SYSTEM_NAME max_mds 1

    [root@mds ~]# ceph fs set fs1 max_mds 1

  2. クラスターがすべての MDS ランクを停止するのを待ちます。すべての MDS が停止したら、ランク 0 だけがアクティブになるはずです。残りはスタンバイモードにしておきます。ファイルシステムの状態を確認します。

    [root@mds ~]# ceph status
  3. systemctl を使用して、スタンバイしているすべての MDS をオフラインにします。

    [root@mds ~]# systemctl stop ceph-mds.target
  4. MDS が 1 つだけオンラインになっており、ファイルシステムのランクが 0 であることを確認します。

    [root@mds ~]# ceph status
  5. RHEL 7 で Red Hat Ceph Storage 3 からアップグレードする場合は、Red Hat Ceph Storage 3 のツールリポジトリーを無効にして、Red Hat Ceph Storage 4 のツールリポジトリーを有効にします。

    [root@mds ~]# subscription-manager repos --disable=rhel-7-server-rhceph-3-tools-rpms
    [root@mds ~]# subscription-manager repos --enable=rhel-7-server-rhceph-4-tools-rpms
  6. ノードを更新し、ceph-mds デーモンを再起動します。

    [root@mds ~]# yum update -y
    [root@mds ~]# systemctl restart ceph-mds.target
  7. スタンバイ中のデーモンについても同じプロセスを実行します。ツールリポジトリーを無効にして、有効にしてから、各スタンバイ中の MDS をアップグレードし、再起動します。

    [root@mds ~]# subscription-manager repos --disable=rhel-7-server-rhceph-3-tools-rpms
    [root@mds ~]# subscription-manager repos --enable=rhel-7-server-rhceph-4-tools-rpms
    [root@mds ~]# yum update -y
    [root@mds ~]# systemctl restart ceph-mds.target
  8. スタンバイ中のすべての MDS の再起動が完了したら、ストレージクラスターの max_mds の値を以前の値に戻します。

    構文

    ceph fs set FILE_SYSTEM_NAME max_mds ORIGINAL_VALUE

    [root@mds ~]# ceph fs set fs1 max_mds 5