インストールガイド

Red Hat Gluster Storage 3.5

Red Hat Gluster Storage 3.5 のインストール

概要

本書では、前提条件について説明し、さまざまな方法を使用して Red Hat Gluster Storage をインストールする手順をステップごとに説明します。
多様性を受け入れるオープンソースの強化
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、今後の複数のリリースで段階的に用語の置き換えを実施して参ります。詳細は、弊社の CTO、Chris Wright のメッセージを参照してください。

第1章 Red Hat Gluster Storage のインストール計画

本章では、Red Hat Gluster Storage Server 環境のインストール、設定、および操作を正常に行うための最小限のハードウェアおよびソフトウェアのインストール要件の概要を説明します。

1.1. Red Hat Gluster Storage について

Red Hat Gluster Storage は、柔軟性のあるエンタープライズ向けの非構造化データストレージを無理のない価格で提供するソフトウェアのみのスケールアウトストレージです。Red Hat Gluster Storage 3.5 は、データストレージとインフラストラクチャーの統合し、パフォーマンスを向上させ、可用性および管理容易性を強化して、広範囲に及ぶ組織のストレージに関する課題と要件を満たします。
Red Hat Gluster Storage の主要ビルディングブロックである GlusterFS はスタック可能なユーザースペース設計をベースにしており、多様なワークロードの優れたパフォーマンスを実現します。GlusterFS は、ネットワークで各種のストレージサーバーを集計し、それらを相互接続して 1 つの大きな並立ネットワークファイルシステムにします。POSIX に互換性のある GlusterFS サーバーは XFS ファイルシステム形式を使用してディスクにデータを保存し、これらのサーバーは NFS や CIFS を含む業界標準のアクセスプロトコルを使用してアクセスすることができます。
Red Hat Gluster Storage は、Red Hat Gluster Storage Server for On-Premise を使用してプライベートクラウドまたはデータセンターにデプロイできます。Red Hat Gluster Storage は、コモディティーサーバーまたは仮想マシン、およびストレージハードウェアにインストールできるため、強力かつ拡張性の高い、高可用性 NAS 環境になります。さらに、Red Hat Gluster Storage は、Amazon Web Services (AWS) クラウド内などに Red Hat Gluster Storage Server for Public Cloud を使用してパブリッククラウドにデプロイできます。これは、クラウドで非常に拡張性と可用性の高い NAS を提供することにより、プライベートクラウドまたはデータセンターで実現可能なすべての機能および機能性をパブリッククラウドに提供します。

Red Hat Gluster Storage Server for On-Premise

Red Hat Gluster Storage Server for On-Premise を使用すると、企業は、コモディティーサーバーおよびストレージハードウェアを使用し、物理ストレージを仮想化された、スケーラブルな、かつ一元管理されるストレージプールとして処理できます。

Red Hat Gluster Storage Server for Public Cloud

Red Hat Gluster Storage Server for Public Cloud は、AWS パブリッククラウドでスケーラブルな NAS をデプロイするために GlusterFS を Amazon Machine Image (AMI) としてパッケージ化します。この強力なストレージサーバーは、Amazon ユーザー向けに、可用性が高く、スケーラブルで仮想化および一元管理されたストレージのプールを提供します。

ストレージノード

ストレージノードは、Red Hat Gluster Storage の 1 つのインスタンスを実行する物理サーバー、仮想マシン、またはパブリッククラウドイメージです。

1.2. 前提条件

お使いの環境が以下の要件を満たしていることを確認してください。
重要
実稼働環境の使用および高可用性については、信頼できるストレージプールごとに最低 3 サーバーが必要です。
定足数 (クォーラム) に関連する理由から、同期レプリケーションが設定されたマルチサイトクラスターでは、サイトの障害が発生した場合に手動の介入なしに維持できるように奇数 (3 以上) のサイトが必要です。

1.2.1. マルチサイトクラスターのレイテンシー

マルチサイトクラスターのレイテンシーが 5ms 未満であることを確認します。各サイトで以下のコマンドを実行して、他のサイトとのレイテンシーを判別します。
# ping -c100 -q site_ip_address/site_hostname
注記
詳細は、KCS#413623 を参照してください。

1.2.2. ファイルシステムの要件

XFS: glusterFS ブリックに XFS を使用してバックエンドファイルシステムをフォーマットします。XFS はジャーナルメタデータをジャーナルに記録できます。これにより、より速くクラッシュから復旧できます。XFS ファイルシステムは、マウントされ、アクティブな状態でデフラグし、拡張できます。
注記
Red Hat では、ext3 または ext4 を使用している既存の Gluster Storage Software Appliance のお客様が、XFS バックエンドファイルシステムを使用してサポートされているバージョンの Red Hat Gluster Storage にアップグレードできるよう支援します。

1.2.3. 論理ボリュームマネージャー

インストールを実行できるように、論理ボリュームマネージャーで XFS を使用して glusterFS bricks をフォーマットします。

1.2.4. ネットワーク時間の設定

Network Time Protocol (NTP) または Chrony デーモンを使用して、すべての Red Hat Gluster Storage サーバーで時間を同期します。これらの機能の詳細は、NTP デーモンの選択について参照してください。

1.2.4.1. chrony を使用した時間同期の設定

注記
Red Hat Enterprise Linux 8 では、chrony はデフォルトで有効になり、Network Time Protocol (NTP) はサポートされなくなりました。
すべての Gluster ノードについて chrony で時間の同期を設定する方法についての詳細は、 chrony への移行について参照してください。
chrony を設定したら、プライマリーノードからその他のすべてのノードに対して以下のコマンドを使用して、すべての Gluster ノードについて時間が同期されていることを確認します。
# clockdiff node-hostname

1.2.4.2. Network Time Protocol を使用した時間同期の設定

Red Hat Enterprise Linux 7 の場合
Network Time Protocol (NTP) でリモートサーバーを使用し、システムクロオックを同期します。NTP についての詳細は、ntpd を使用した NTP の設定について参照してください。以下のように、ブートプロセス中に時間を自動的に同期できるように ntpd デーモンを設定します。
  1. vim、nano などのテキストエディターで NTP 設定ファイル /etc/ntp.conf を編集します。
    # nano /etc/ntp.conf
  2. 以下のように、ntp.conf ファイル内のパブリック NTP サーバーの一覧を追加または編集します。
    server 0.rhel.pool.ntp.org
    server 1.rhel.pool.ntp.org
    server 2.rhel.pool.ntp.org
    このファイルの Red Hat Enterprise Linux 6 バージョンには、すでに必要な情報が含まれています。カスタマイズが必要な場合は、このファイルの内容を編集します。特定の Red Hat Gluster Storage リリースについてサポートされる Red Hat Enterprise Linux バージョンについての詳細は、「Red Hat Gluster Storage のサポートマトリックス」を参照してください。
  3. オプションで、iburst ディレクティブを各行に追加して、初期の同期速度を引き上げます。
    server 0.rhel.pool.ntp.org iburst
    server 1.rhel.pool.ntp.org iburst
    server 2.rhel.pool.ntp.org iburst
  4. サーバーの一覧について完了したら、同じファイルに必要なパーミッションを設定します。localhost にのみ無制限のアクセスがあることを確認します。
    restrict default kod nomodify notrap nopeer noquery
    restrict -6 default kod nomodify notrap nopeer noquery
    restrict 127.0.0.1
    restrict -6 ::1
  5. すべての変更を保存してエディターを終了し、NTP デーモンを再起動します。
    # service ntpd restart
  6. 起動時に ntpd デーモンが起動することを確認します。
    # chkconfig ntpd on
NTP のワンタイム同期には、ntpdate コマンドを使用します。この機能の詳細は、『『Red Hat Enterprise Linux デプロイメントガイド』』を参照してください。

1.3. ハードウェアの互換性

ハードウェアの仕様はほぼ毎日変更されています。すべてのシステムの互換性を確認することが推奨されます。サポートされるハードウェアの最新の一覧は、『Red Hat Gluster Storage Server Compatible Physical, Virtual Server and Client OS Platforms List 』 (https://access.redhat.com/knowledge/articles/66206 にてオンラインで利用可能) を参照してください。お使いの環境が、この記事で説明されているハードウェアの互換性の条件を満たしていることを確認する必要があります。ハードウェア仕様の変更は迅速に行われ、完全互換性は保証されません。
ハードウェア互換性は、古いシステムまたはカスタム構築システムがある場合にとくに重要になります。

1.4. ポート情報

Red Hat Gluster Storage Server は、一覧表示されているポートを使用します。ファイアウォール設定が、これらのポートへのアクセスを妨げないようにしてください。
Red Hat Entperise Linux 6 と Red Hat Enterprise Linux 7 では、ファイアウォール設定ツールが異なります。
Red Hat Enterprise Linux 6 の場合は、iptables コマンドを使用してポートを開きます。
# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 5667 -j ACCEPT
# service iptables save
Red Hat Enterprise Linux 7 および Red Hat Enterprise Linux 8 では、デフォルトのポートが他のサービスで使用されていない場合は、通常はポートを開くのではなく、サービスを追加する方が容易になります。
# firewall-cmd --zone=zone_name --add-service=glusterfs
# firewall-cmd --zone=zone_name --add-service=glusterfs --permanent
ただし、デフォルトのポートがすでに使用されている場合は、以下のコマンドで特定のポートを開くことができます。
# firewall-cmd --zone=zone_name --add-port=port/protocol
# firewall-cmd --zone=zone_name --add-port=port/protocol --permanent
以下は例になります。
# firewall-cmd --zone=public --add-port=5667/tcp
# firewall-cmd --zone=public --add-port=5667/tcp --permanent

表1.1 すべてのストレージサーバーで以下のポートを開きます。

接続ソースTCP ポートUDP ポート推奨用途
有効な SSH キーを持つ認証されたネットワークエンティティー22-すべての設定geo レプリケーションを使用したリモートバックアップ
認証されたネットワークエンティティー。他の RPC サービスと競合しないように注意してください。111111すべての設定RPC ポートマッパーおよび RPC バインド
認証された SMB/CIFS クライアント139 および 445137 および 138SMB/CIFS を使用したストレージの共有SMB/CIFS プロトコル
認証された NFS クライアント20492049Gluster NFS(非推奨)または NFS-Ganesha を使用したストレージの共有NFS プロトコルを使用したエクスポート
Samba-CTDB クラスターのすべてのサーバー4379-SMB および Gluster NFS を使用したストレージの共有(非推奨)CTDB
認証されたネットワークエンティティー24007-すべての設定glusterd を使用した管理プロセス
認証されたネットワークエンティティー24009-すべての設定Gluster イベントデーモン
NFSv3 クライアント662662NFS-Ganesha および Gluster NFS を使用したストレージの共有(非推奨)statd
NFSv3 クライアント3280332803NFS-Ganesha および Gluster NFS を使用したストレージの共有(非推奨)NLM プロトコル
マウント要求を送信する NFSv3 クライアント-32769Gluster NFS を使用したストレージの共有(非推奨)Gluster NFS MOUNT プロトコル
マウント要求を送信する NFSv3 クライアント2004820048NFS-Ganesha を使用したストレージの共有NFS-Ganesha MOUNT プロトコル
NFS クライアント875875NFS-Ganesha を使用したストレージの共有NFS-Ganesha RQUOTA プロトコル(クォータ情報の取得)
pacemaker/corosync クラスターのサーバー2224-NFS-Ganesha を使用したストレージの共有pcsd
pacemaker/corosync クラスターのサーバー3121-NFS-Ganesha を使用したストレージの共有pacemaker_remote
pacemaker/corosync クラスターのサーバー-5404 および 5405NFS-Ganesha を使用したストレージの共有corosync
pacemaker/corosync クラスターのサーバー21064-NFS-Ganesha を使用したストレージの共有dlm
認証されたネットワークエンティティー49152 - 49664-すべての設定ブリック通信ポート必要なポートの合計数は、ノード上のブリックの数によって異なります。マシンのブリックごとに 1 つのポートが必要です。

表1.2 NFS-Ganesha および Gluster NFS(非推奨)ストレージクライアントで以下のポートを開く

接続ソースTCP ポートUDP ポート推奨用途
NFSv3 サーバー662662NFS-Ganesha および Gluster NFS を使用したストレージの共有(非推奨)statd
NFSv3 サーバー3280332803NFS-Ganesha および Gluster NFS を使用したストレージの共有(非推奨)NLM プロトコル

1.5. Red Hat Gluster Storage のソフトウェアコンポーネントおよびバージョン

Red Hat Gluster Storage を他のソフトウェアと共にアップグレードまたは使用するには、各バージョンの詳細を把握している必要がある場合があります。以下の表は要約を示しています。

表1.3 バージョンの詳細

RHGS バージョンglusterfs および glusterfs-fuseRHGS op-versionSMBNFSgDeployAnsible
3.43.12.2-1831302SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0gdeploy-2.0.2-27-
3.4 Batch 1 更新3.12.2-2531303SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0gdeploy-2.0.2-30-
3.4 Batch 2 更新3.12.2-3231304SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0gdeploy-2.0.2-31gluster-ansible-infra-1.0.2-2
3.4 Batch 3 更新3.12.2-4031305SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0gdeploy-2.0.2-31gluster-ansible-infra-1.0.2-2
3.4 Batch 4 更新3.12.2-47 31305 SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0gdeploy-2.0.2-32gluster-ansible-infra-1.0.3-3
3.4.4 非同期更新3.12.2-47.5 31306 SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0gdeploy-2.0.2-32gluster-ansible-infra-1.0.3-3
3.5 (RHEL 6)6.0-22 70000 SMB 1、2.0、2.1、3.0、3.1.1---
3.5 (RHEL 7)6.0-21 70000 SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-35gluster-ansible-infra-1.0.4-3
3.5 Batch 更新 1 (RHEL 7)6.0-29 70000 SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-35gluster-ansible-infra-1.0.4-5
3.5 非同期更新 (RHEL 7)6.0-30.1 70000 SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-35gluster-ansible-infra-1.0.4-5
3.5 Batch 2 更新 (RHEL 7)6.0-37 70000 SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-35gluster-ansible-infra-1.0.4-5
3.5 Batch 2 更新 (RHEL 8)6.0-37 70000 SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-3.0.0-7gluster-ansible-infra-1.0.4-10
3.5.2 非同期更新 (RHEL 7)6.0-37.1 70000 SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-35gluster-ansible-infra-1.0.4-5
3.5.2 非同期更新 (RHEL 8)6.0-37.1 70000 SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-3.0.0-7gluster-ansible-infra-1.0.4-17
3.5 Batch 3 更新 (RHEL 7)6.0-49.2 70000 SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-36gluster-ansible-infra-1.0.4-5
3.5 Batch 3 更新 (RHEL 8)6.0-4970000 SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-3.0.0-8gluster-ansible-infra-1.0.4-11
3.5 Batch 4 更新 (RHEL 7)6.0-5670100SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-36gluster-ansible-infra-1.0.4-5
3.5 Batch 4 更新 (RHEL 8)6.0-5670100SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-3.0.0-8gluster-ansible-infra-1.0.4-19
3.5.4 非同期更新 (RHEL 7)6.0-56.270100SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-36gluster-ansible-infra-1.0.4-19
3.5.4 非同期更新 (RHEL 8)6.0-56.270100SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-36gluster-ansible-infra-1.0.4-19
3.5 Batch 5 更新 (RHEL 7)6.0-5970200SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-36 gluster-ansible-infra-1.0.4-19
3.5 Batch 5 更新 (RHEL 8)6.0-5970200SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-3.0.0-8 gluster-ansible-infra-1.0.4-19
3.5 Batch 6 更新 (RHEL 7)6.0-6170200SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-36 gluster-ansible-infra-1.0.4-19
3.5 Batch 6 更新 (RHEL 8)6.0-6170200SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-3.0.0-8 gluster-ansible-infra-1.0.4-19
3.5 Batch 7 更新 (RHEL 7)6.0-6370200SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-2.0.2-36 gluster-ansible-infra-1.0.4-19
3.5 Batch 7 更新 (RHEL 8)6.0-6370200SMB 1、2.0、2.1、3.0、3.1.1NFSv3、NFSv4.0、NFSv4.1gdeploy-3.0.0-11 gluster-ansible-infra-1.0.4-21
注記
以前の Red Hat Gluster Storage リリースのバージョンについての詳細は、https://access.redhat.com/solutions/543123を参照してください。Red Hat Gluster Storage は 3.5 Batch Update 1 以降では、Red Hat Enterprise Linux 6 (RHEL 6) でサポートされません。

1.6. 機能互換性サポート

Red Hat Gluster Storage は多くの機能をサポートします。ほとんどの機能は他の機能でサポートされますが、一部の例外があります。本セクションでは、Red Hat Gluster Storage のデプロイメントの計画に役立つ、サポートされている機能、および他の機能と互換性のある機能について分かりやすく説明します。
重要
Red Hat Enterprise Linux 7.5 でサポートされる Virtual Data Optimizer (VDO) ボリュームは、現時点では Red Hat Gluster Storage でサポートされていません。VDO は、Red Hat Hyperconverged Infrastructure for Virtualization 2.0 の一部として使用されている場合にのみサポートされます。詳細は、 VDO について参照してください。
以下の表の機能は、指定されたバージョン以降でサポートされています。

表1.4 Red Hat Gluster Storage バージョンでサポートされる機能

機能バージョン
Arbiter ブリック3.2
Bitrot 検出3.1
Erasure コーディング3.1
Google Compute Engine3.1.3
メタデータのキャッシュ3.2
Microsoft Azure3.1.3
NFS バージョン 43.1
SELinux3.1
シャード化3.2.0
スナップショット3.0
スナップショット、クローン作成3.1.3
スナップショット、ユーザーサービスが可能3.0.3
階層化 (Tiering)(非推奨)3.1.2
Volume Shadow Copy (VSS)3.1.3

表1.5 ボリュームタイプ別にサポートされる機能

ボリュームタイプシャード化階層化 (Tiering)(非推奨)クォータスナップショットgeo-レプリケーションBitrot
Arbitrated-Replicatedはいいいえはいはいはいはい
Distributed (分散)いいえはいはいはいはいはい
Distributed-Dispersedいいえはいはいはいはいはい
Distributed-Replicatedはいはいはいはいはいはい
Replicated (レプリケート)はいはいはいはいはいはい
シャード化該当なしいいえいいえいいえはいいいえ
階層化 (Tirered)(非推奨)いいえ該当なし限定的[a]限定的 [a]限定的 [a]限定的 [a]
[a] 詳細は、『 『Red Hat Gluster Storage 3.5 Administration Guide』』の「Tiering Limitations」を参照してください。
注記
Red Hat Gluster Storage は 3.5 Batch Update 1 以降では、Red Hat Enterprise Linux 6 (RHEL 6) でサポートされません。

表1.6 クライアントプロトコルでサポートされる機能

機能FUSEgluster-NFSNFS-GaneshaSMB
Arbiterはいはいはいはい
Bitrot 検出はいはいいいえはい
dm-cacheはいはいはいはい
暗号化 (TLS-SSL)はいはいはいはい
Erasure コーディングはいはいはいはい
Export サブディレクトリーはいはいはい該当なし
geo-レプリケーションはいはいはいはい
クォータ(非推奨)
警告
QUOTA 機能の使用は、Red Hat Gluster Storage 3.5.3 では非推奨です。Red Hat ではこの機能の使用を推奨しておらず、Red Hat Gluster Storage 3.5.3 にアップグレードする新規デプロイメントおよび既存デプロイメントでサポートしません。
はいはいはいはい
RDMA(非推奨)
警告
RDMA をトランスポートプロトコルとして使用することは、Red Hat Gluster Storage 3.5 で非推奨となっています。Red Hat ではこの機能の使用を推奨しておらず、Red Hat Gluster Storage 3.5.3 にアップグレードする新規デプロイメントおよび既存デプロイメントでサポートしません。
はいいいえいいえいいえ
スナップショットはいはいはいはい
スナップショットのクローン作成はいはいはいはい
スナップショットのマウントはいいいえいいえいいえ
階層化 (Tiering)(非推奨)
警告
階層機能の使用は、Red Hat Gluster Storage 3.5 では非推奨です。Red Hat ではこの機能の使用を推奨しておらず、Red Hat Gluster Storage 3.5.3 にアップグレードする新規デプロイメントおよび既存デプロイメントでサポートしません。
はいはい該当なし該当なし

1.7. Red Hat Gluster Storage のサポートマトリックス

このセクションでは、特定の Red Hat Gluster Storage リリースについてサポートされているすべての Red Hat Enterprise Linux バージョンの一覧を示します。

表1.7 Red Hat Gluster Storage のサポートマトリックス

Red Hat Enterprise Linux のバージョン Red Hat Gluster Storage のバージョン
6.5 3.0
6.6 3.0.2、3.0.3、3.0.4
6.73.1、3.1.1、3.1.2
6.83.1.3
6.93.2
6.93.3
6.93.3.1
6.103.4、3.5
7.13.1、3.1.1
7.23.1.2
7.23.1.3
7.33.2
7.43.2
7.43.3
7.43.3.1
7.53.3.1、3.4
7.63.3.1、3.4
7.73.5、3.5.1
7.83.5.1、3.5.2
7.93.5.3, 3.5.4, 3.5.5, 3.5.6, 3.5.7
8.23.5.2、3.5.3
8.33.5.3
8.43.5.4
8.53.5.5, 3.5.6
8.63.5.7

第2章 Red Hat Gluster Storage のインストール

Red Hat Gluster Storage は、Red Hat Gluster Storage Server On-Premise を使用してデータセンターにインストールできます。
本章では、Red Hat Gluster Storage Server のインストールの 3 つの方法 (ISO イメージの使用、PXE サーバーの使用、または Red Hat Satellite Server の使用) を説明します。
パブリッククラウド用に Red Hat Gluster Storage Server を起動することに関する情報は、『Red Hat Gluster Storage Administration Guide』を参照してください。
警告
Gluster-NFS は、Red Hat Gluster Storage 3.5 では非推奨です。Red Hat では Gluster-NFS の使用を推奨しておらず、Red Hat Gluster Storage 3.5.3 にアップグレードする新規デプロイメントおよび既存デプロイメントでのその使用をサポートしません。代わりに、NFS-Ganesha を使用できます。
重要
  • テクノロジープレビューパッケージは、Red Hat Gluster Storage Server のこのインストールでもインストールされます。テクノロジープレビュー機能の一覧は、『 『Red Hat Gluster Storage 3.5 リリースノート』』 の「『テクノロジープレビュー』」の章を参照してください。
  • Red Hat Gluster Storage Server がインストールされている仮想マシンのクローンを作成する場合には、クローンを作成する前に /var/lib/glusterd/glusterd.info ファイル (ある場合) を削除する必要があります。このファイルを削除しないと、クローン作成されるマシンの UUID が同一になります。このファイルは、クローン作成された仮想マシン上の glusterd デーモンの初回起動時に UUID を使用して自動的に再作成されます。

2.1. Red Hat Gluster Storage の取得

本章では、Red Hat Gluster Storage ソフトウェアを取得する手順を説明します。

2.1.1. Red Hat Gluster Storage Server for On-Premise の取得

Red Hat カスタマーポータル の Software & Download Center (https://access.redhat.com/downloads) に移動し、Red Hat Gluster Storage Server for On-Premise インストールの ISO イメージファイルを取得します。有効な Red Hat サブスクリプションを使用して、完全なインストールファイルのダウンロードや、評価用の無料インストールの取得を行うか、このページのリンクにアクセスして新規の Red Hat サブスクリプションを購入します。
Red Hat サブスクリプションまたは Red Hat Evaluation サブスクリプションを使用して Red Hat Gluster Storage Server のインストールファイルをダウンロードするには、以下を実行します。
  1. Red Hat カスタマーポータル (https://access.redhat.com/login) にアクセスし、ユーザー名およびパスワードを入力してログインします。
  2. Downloads をクリックし、 Software & Download Center に移動します。
  3. Red Hat Gluster Storage Server 領域で Download Software をクリックし、最新バージョンのソフトウェアをダウンロードします。

2.1.2. Red Hat Gluster Storage Server for Public Cloud の取得

Red Hat Gluster Storage for Public Cloud は事前に統合および検証されており、Amazon Machine Image (AMI) を実行できる状態です。この AMI は、Amazon Web Services (AWS) パブリッククラウドインフラストラクチャー向けの、完全に POSIX と互換性があり、可用性の高いスケールアウト NAS およびオブジェクトストレージソリューションを提供します。
AMI へのアクセスの取得に関する詳細は、 https://access.redhat.com/knowledge/articles/145693を参照してください。

2.2. ISO イメージからのインストール

重要
ISO メソッドは、Red Hat Enterprise Linux 6 では利用できなくなりました。詳細は、『『Red Hat Gluster Storage 3.5 Release Notes』』の『非推奨の機能』についての章を参照してください。

2.2.1. Red Hat Enterprise Linux への Red Hat Gluster Storage 3.5 のインストール

重要
Red Hat Enterprise Linux 7.5 でサポートされる Virtual Data Optimizer (VDO) ボリュームは、現時点では Red Hat Gluster Storage でサポートされていません。VDO は、Red Hat Hyperconverged Infrastructure for Virtualization 2.0 の一部として使用されている場合にのみサポートされます。詳細は、 VDO について参照してください。
Red Hat Enterprise Linux に Red Hat Gluster Storage 3.5 をインストールするには、以下を実行します。
  1. 「Red Hat Gluster Storage の取得」に説明されているように Red Hat Gluster Storage Server の ISO イメージファイルをダウンロードします。
  2. Welcome to Red Hat Gluster Storage 3.5 画面で、残りのインストールに使用する言語を選択し、Continue をクリックします。この選択内容が、後に変更しない限り、インストール済みシステムのデフォルトになります。
    注記
    1 つの言語が一覧の上部に事前に設定されます。この時点でネットワークアクセスが設定されている場合 (たとえば、ローカルメディアではなくネットワークサーバーから起動した場合など)、事前に選択した言語は、GeoIP モジュールの使用による場所の自動検出に基づいて決定されます。
  3. Installation Summary 画面で、主なインストール設定を行います。

    図2.1 Red Hat Gluster Storage 3.5 の Red Hat Enterprise Linux 8 へのインストールについての要約

    Red Hat Gluster Storage 3.5 の Red Hat Enterprise Linux 8 へのインストールについての要約

    図2.2 Red Hat Gluster Storage 3.5 の Red Hat Enterprise Linux 7 へのインストールについての要約

    Red Hat Gluster Storage 3.5 の Red Hat Enterprise Linux 7 へのインストールについての要約
    Red Hat Enterprise Linux 7.7 以降の Red Hat Gluster Storage 3.5 インストールプログは、最初から順番通りに画面を確認する方法ではなく、ユーザーが選択する順序でインストールを設定できます。
    インストールのセクションを設定するためにメニュー項目を選択します。セクションの設定が完了した後にそのセクションを後で完了することを希望する場合は、画面左上にある Done ボタンをクリックします。
    警告シンボルのマークが付いたセクションのみが必須です。画面の下部の注で警告されているように、これらをインストールを開始する前に選択する必要があります。残りのセクションはオプションです。各セクションのタイトルの下には、現在の設定の概要が示されます。これを使用して、追加で設定するセクションに移動する必要があるかどうかを判断できます。
    以下の一覧は、Installation Summary 画面の各メニュー項目の簡単な要約を示します。
    • 日付と時間

      重要
      Gluster インストールには、NTP の設定が必須です。
      NTP を設定するには、以下の手順を実行します。
      1. Date & Time をクリックし、システムクロックの精度を維持するためにタイムゾーンを指定します。
      2. Network Time スイッチを ON に切り替えます。
        注記
        デフォルトで、ネットワークに接続している場合は Network Time スイッチが有効になります。
      3. 設定アイコンをクリックして新しい NTP サーバーを追加するか、既存のサーバーを選択します。
      4. 追加または選択が完了したら、Done をクリックして Installation Summary 画面に戻ります。
      注記
      NTP サーバーはインストール時に利用できない場合があります。この場合、これらを有効にしても時間は自動的に設定されません。サーバーが利用可能になると、日付と時刻が更新されます。

    • 言語サポート

      追加のロケールおよび言語のサポートをインストールするには、Language Support を選択します。

    • キーボード設定

      複数のキーボードレイアウトをシステムに追加するには、Keyboard を選択します。

    • インストールソース

      Red Hat Enterprise Linux のインストール元となるファイルまたは場所を指定するには、Installation Source を選択します。この画面では、DVD や ISO ファイル、またはネットワークの場所など、ローカルで利用可能なインストールメディアを選択できます。

    • ネットワークおよびホスト名

      システムに必要なネットワーク機能を設定するには、Network & Hostname を選択します。

      重要
      Red Hat Enterprise Linux 7.7 以降での Red Hat Gluster Storage 3.5 で、インストールが完了し、システムが最初に起動する際に、インストール時に設定したネットワークインターフェースがアクティブになります。ただし、インストールでは、一部の一般的なインストールパスでネットワークインターフェースを設定するように求めるプロンプトは出されません。たとえば、DVD からローカルのハードドライブへの、Red Hat Gluster Storage 3.5 の Red Hat Enterprise Linux 7.5 へのインストールの場合などがこれに該当します。
      ローカルインストールソースからローカルストレージデバイスへの Red Hat Gluster Storage 3.5 の Red Hat Enterprise Linux 7.7 以降へのインストールを実行する場合、初回のシステムの起動時に、ネットワークアクセスが必要な場合に 1 つ以上のネットワークインターフェースを手動で設定するようにしてください。また、設定の編集時に、起動後自動的に接続する接続を設定する必要もあります。
    • ソフトウェアの選択

      インストールするパッケージを指定するには、Software Selection を選択します。以下のオプションのアドオンが必要な場合は、必要なアドオンを選択して Done をクリックします。

      • RH-Gluster-AD-Integration
      • RH-Gluster-NFS-Ganesha
      • RH-Gluster-Samba-Server
    • インストール先

      ディスクを選択し、Red Hat Gluster Storage をインストールするストレージ領域のパーティションを設定するには、Installation Destination を選択します。詳細は、Red Hat Enterprise Linux 7 インストールガイドの『Installation Destination』を参照してください。

    • Kdump

      kdump は、カーネルクラッシュをダンプするメカニズムであり、システムクラッシュが発生時にクラッシュの原因を判別するのに極めて重要となる情報をキャプチャーします。このオプションは、システムで Kdump を使用するかどうかを選択する場合に使用します。

  4. 必要な設定を行ったら、インストール Installation Summary 画面で Begin Installation をクリックします。
    警告
    インストールプロセスのこの時点では、永続的な変更はコンピューターに加えられていません。Begin Installation をクリックすると、インストールプログラムはハードドライブの領域を割り当て、Red Hat Gluster Storage をこの領域に移動します。選択するパーティショニングオプションによっては、このプロセスにコンピューター上にすでに存在するデータの消去が含まれる場合があります。
    この時点までに行った選択のいずれかを変更するには、Installation Summary 画面の該当セクションに戻ります。インストールを完全に中止するには、Quit をクリックするか、コンピューターの電源を切ります。
    インストールのカスタマイズを終了し、インストールを続行する場合は、Begin Installation をクリックします。
    Begin Installation をクリックした後に、インストールプロセスを完了させます。たとえば、コンピューターの電源をオフにしたり、コンピューターをリセットしたり、電源異常が発生するなどでプロセスが中断された場合、Red Hat Gluster Storage のインストールプロセスを再開し、これを完了するまで、てコンピューターを使用できない可能性があります。
  5. Begin Installation をクリックすると、進捗画面が表示されます。Red Hat Gluster Storage では、選択したパッケージをシステムに書き込む際に画面にインストールの進捗が報告されます。以下は、この画面上のオプションの簡単な説明です。
    • root パスワード

      Root Password メニュー項目は、root アカウントのパスワードを設定するために使用されます。root アカウントは、重要なシステム管理および管理タスクを実行するために使用されます。パスワードは、パッケージのインストール中またはその後に設定可能ですが、これが設定されるまでインストールプロセスを完了できません。

    • ユーザーの作成

      ユーザーアカウントの作成はオプションであり、インストール後に実行できますが、この画面上で行うことが推奨されます。ユーザーアカウントは、通常の作業やシステムへのアクセスに使用されます。ベストプラクティスとして、root アカウントではなく、ユーザーアカウントを使用して常にシステムにアクセスすることが推奨されます。

  6. インストールが完了したら、Reboot をクリックしてシステムを再起動し、Red Hat Gluster Storage の使用を開始します。

2.3. Red Hat Gluster Storage Server チャンネルのサブスクライブ

Red Hat Gluster Storage を正常にインストールしたら、必要なチャンネルにサブスクライブする必要があります。
注記
Red Hat Satellite または階層型インストールを使用して Red Hat Gluster Storage 3.x をインストールしている場合は、本章で説明する手順を省略できます。階層型インストールについての詳細は、「Red Hat Gluster Storage Server の Red Hat Enterprise Linux へのインストール (階層化インストール)」を参照してください。

Subscription Manager の使用

  1. システムの Subscription Manager への登録

    以下のコマンドを実行して、Red Hat Network のユーザー名およびパスワードを入力して、システムを Subscription Manager に登録します。
    # subscription-manager register
  2. 利用可能なエンタイトルメントプールの特定

    以下のコマンドを実行して、Red Hat Gluster Storage のインストールに必要なリポジトリーが含まれるエンタイトルメントプールを見つけます。
    # subscription-manager list --available | grep -A8 "Red Hat Enterprise Linux Server"
    # subscription-manager list --available | grep -A8 "Red Hat Storage"
  3. システムへのエンタイトルメントプールのアタッチ

    先の手順で特定したプール ID を使用して、Red Hat Enterprise Linux Server および Red Hat Gluster Storage のエンタイトルメントをシステムにアタッチします。以下のコマンドを実行してエンタイトルメントをアタッチします。
    # subscription-manager attach --pool=[POOLID]
    以下は例になります。
    # subscription-manager attach --pool=8a85f9814999f69101499c05aa706e47
  4. Red Hat Enterprise Linux で Red Hat Gluster Storage に必要なチャンネルの有効化

    Red Hat Enterprise Linux 6.7 以降での Red Hat Gluster Storage 3.5 の場合

    1. 以下のコマンドを実行して、Red Hat Gluster Storage のインストールに必要なリポジトリーを有効にします。
      # subscription-manager repos --enable=rhel-6-server-rpms
      # subscription-manager repos --enable=rhel-scalefs-for-rhel-6-server-rpms
      # subscription-manager repos --enable=rhs-3-for-rhel-6-server-rpms
      
    2. Samba が必要な場合は、以下のリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-6-server-rpms
    3. NFS-Ganesha は、Red Hat Enterprise Linux 6 ベースのインストールではサポートされません。

    Red Hat Enterprise Linux 7.7 以降での Red Hat Gluster Storage 3.5 の場合

    1. 以下のコマンドを実行して、Red Hat Gluster Storage のインストールに必要なリポジトリーを有効にします。
      # subscription-manager repos --enable=rhel-7-server-rpms
      # subscription-manager repos --enable=rh-gluster-3-for-rhel-7-server-rpms
    2. Samba が必要な場合は、以下のリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-7-server-rpms
    3. Red Hat Gluster Storage 3.5 の場合、NFS-Ganesha が必要な場合は、以下のリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-nfs-for-rhel-7-server-rpms --enable=rhel-ha-for-rhel-7-server-rpms
    4. Red Hat Gluster Storage 3.5 の場合は、CTDB が必要な場合は、以下のリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-7-server-rpms

    Red Hat Enterprise Linux 8.2 以降での Red Hat Gluster Storage 3.5 の場合

    1. 以下のコマンドを実行して、Red Hat Gluster Storage のインストールに必要なリポジトリーを有効にします。
      # subscription-manager repos --enable=rhel-8-for-x86_64-baseos-rpms
      # subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms
      # subscription-manager repos --enable=rh-gluster-3-for-rhel-8-x86_64-rpms
    2. Samba が必要な場合は、以下のリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-8-x86_64-rpms
    3. Red Hat Gluster Storage 3.5 の場合、NFS-Ganesha が必要な場合は、以下のリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-nfs-for-rhel-8-x86_64-rpms --enable=rhel-8-for-x86_64-highavailability-rpms
      
    4. Red Hat Gluster Storage 3.5 の場合は、CTDB が必要な場合は、以下のリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-8-x86_64-rpms
  5. チャンネルが有効であるかどうかの確認

    以下のコマンドを実行して、チャンネルが有効であるかどうかを確認します。
    # yum repolist
    

Red Hat Satellite Server の使用

  1. Red Hat Satellite にアクセスするためのクライアントシステムの設定

    Red Hat Satellite にアクセスできるようにクライアントシステムを設定します。『『Red Hat Satellite 5.6 Client Configuration Guide』』の「『Registering Clients with Red Hat Satellite Server』」のセクションを参照してください。
  2. Red Hat Satellite Server への登録

    以下のコマンドを実行して、システムを Red Hat Satellite Server に登録します。
    # rhn_register
    
  3. 標準ベースチャンネルへの登録

    選択したオペレーティングシステムのリリースページで、All available updates を選択し、プロンプトに従って、システムを Red Hat Enterprise Linux 6 - rhel-6-server-rpms の標準ベースチャンネルに登録します。Red Hat Enterprise Linux 7 の標準ベースチャンネルは rhel-7-server-rpms です。Red Hat Enterprise Linux 8 の標準ベースチャンネルは rhel-8-for-x86_64-baseos-rpms です。
  4. 必要な Red Hat Gluster Storage Server チャンネルのサブスクライブ

    Red Hat Enterprise Linux 6.7 以降での Red Hat Gluster Storage 3.5 の場合

    1. 以下のコマンドを実行して、必要な Red Hat Gluster Storage サーバーチャンネルにシステムをサブスクライブします。
      # rhn-channel --add \
      --channel rhel-6-server-rpms \
      --channel rhel-scalefs-for-rhel-6-server-rpms \
      --channel rhs-3-for-rhel-6-server-rpms
    2. Samba が必要な場合は、以下のコマンドを実行して必要なチャンネルを有効にします。
      # rhn-channel --add --channel rh-gluster-3-samba-for-rhel-6-server-rpms
    3. NFS-Ganesha は、Red Hat Enterprise Linux 6 ベースのインストールではサポートされません。

    Red Hat Enterprise Linux 7.7 以降での Red Hat Gluster Storage 3.5 の場合

    1. 以下のコマンドを実行して、システムを Red Hat Enterprise Linux 7 に必要な Red Hat Gluster Storage サーバーチャンネルにサブスクライブします。
      # rhn-channel --add \
      --channel rhel-7-server-rpms \
      --channel rh-gluster-3-for-rhel-7-server-rpms
    2. Samba が必要な場合は、以下のコマンドを実行して必要なチャンネルを有効にします。
      # rhn-channel --add --channel rh-gluster-3-samba-for-rhel-7-server-rpms
    3. Red Hat Gluster Storage 3.5 および NFS-Ganesha の場合は、以下のチャンネルを有効にします。
      # rhn-channel --add --channel rhel-x86_64-server-7-rh-gluster-3-nfs --channel rhel-x86_64-server-ha-7
    4. Red Hat Gluster Storage 3.5 の場合は、CTDB が必要な場合は、以下のチャンネルを有効にします。
      # rhn-channel --add --channel rh-gluster-3-samba-for-rhel-7-server-rpms

    Red Hat Enterprise Linux 8.2 以降での Red Hat Gluster Storage 3.5 の場合

    1. 以下のコマンドを実行して、システムを Red Hat Enterprise Linux 8 に必要な Red Hat Gluster Storage サーバーチャンネルにサブスクライブします。
      # rhn-channel --add \
                  --channel rh-gluster-3-for-rhel-8-x86_64-rpms
    2. Samba が必要な場合は、以下のコマンドを実行して必要なチャンネルを有効にします。
      # rhn-channel --add --channel rh-gluster-3-samba-for-rhel-8-x86_64-rpms
    3. Red Hat Gluster Storage 3.5 および NFS-Ganesha の場合は、以下のチャンネルを有効にします。
      # rhn-channel --add --channel rh-gluster-3-nfs-for-rhel-8-x86_64-rpms --channel rhel-8-for-x86_64-highavailability-rpms
      
    4. Red Hat Gluster Storage 3.5 の場合は、CTDB が必要な場合は、以下のチャンネルを有効にします。
      # rhn-channel --add --channel rh-gluster-3-samba-for-rhel-8-x86_64-rpms
  5. システムが正常に登録されたかどうかを確認します。

    以下のコマンドを実行して、システムが正常に登録されていることを確認します。
    # rhn-channel --list
    rhel-x86_64-server-7
    rhel-x86_64-server-7-rh-gluster-3

2.4. Red Hat Gluster Storage Server の Red Hat Enterprise Linux へのインストール (階層化インストール)

階層型インストールでは、Red Hat Enterprise Linux に Red Hat Gluster Storage がインストールされます。特定の Red Hat Gluster Storage リリースについてサポートされる Red Hat Enterprise Linux バージョンについての詳細は、「Red Hat Gluster Storage のサポートマトリックス」を参照してください。
重要
Red Hat Enterprise Linux 7.5 でサポートされる Virtual Data Optimizer (VDO) ボリュームは、現時点では Red Hat Gluster Storage でサポートされていません。VDO は、Red Hat Hyperconverged Infrastructure for Virtualization 2.0 の一部として使用されている場合にのみサポートされます。詳細は、 VDO について参照してください。
重要
ログファイルには十分な大きさ (50GB - 100GB) の別個の /var パーティション、geo-レプリケーション関連の各種ファイルおよびその他のファイルを作成することが推奨されます。
  1. Red Hat Enterprise Linux Server のベースインストールの実行

    Red Hat Gluster Storage は、Red Hat Enterprise Linux 7 (RHEL 7) および Red Hat Enterprise Linux 8 (RHEL 8) でサポートされています。最新の RHEL バージョンを選択することが強く推奨されます。
    重要
    Red Hat Gluster Storage は 3.5 Batch Update 1 以降では、Red Hat Enterprise Linux 6 (RHEL 6) でサポートされません。表1.3「バージョンの詳細」を参照してください。
  2. システムの Subscription Manager への登録

    システムを subscription manager に登録する方法については、「Red Hat Gluster Storage Server チャンネルのサブスクライブ」 を参照してください。
  3. カーネルバージョンの要件

    Red Hat Gluster Storage では、kernel-2.6.32-431.17.1.el6 バージョン以降をシステムで使用する必要があります。以下のコマンドを実行して、インストール済みの実行中のカーネルのバージョンを確認します。
    # rpm -q kernel
    kernel-2.6.32-431.el6.x86_64
    kernel-2.6.32-431.17.1.el6.x86_64
    # uname -r
    2.6.32-431.17.1.el6.x86_64
  4. すべてのパッケージの更新

    以下のコマンドを実行して、すべてのパッケージが最新の状態であることを確認します。
    # yum update
    重要
    いずれかのカーネルパッケージを更新した場合は、以下のコマンドを実行してシステムを再起動します。
    # shutdown -r now
  5. Red Hat Gluster Storage のインストール

    以下のコマンドを実行して Red Hat Gluster Storage をインストールします。
    # yum install redhat-storage-server
    1. Samba をインストールするには、3章Samba の Red Hat Gluster Storage へのデプロイを参照してください。
    2. NFS-Ganesha をインストールするには、4章NFS-Ganesha の Red Hat Gluster Storage への NFS-Ganesha へのデプロイを参照してください。
  6. 再起動

    システムを再起動します。

2.5. PXE サーバーからのインストール

PXE サーバーを使用してコンピューターを起動するには、適切に設定されたサーバーと、PXE に対応するコンピューターのネットワークインターフェースが必要になります。
ネットワークインターフェースから起動するようコンピューターを設定します。このオプションは BIOS にあり、Network Boot または Boot Services のラベルを付けられる場合があります。PXE ブートを適切に設定すると、コンピューターは他のメディアなしで Red Hat Gluster Storage Server インストールシステムを起動できます。
PXE サーバーからコンピューターを起動するには、以下を実行します。
  1. ネットワークケーブルが接続されていることを確認します。コンピューターの電源がオンになっていない場合でも、ネットワークソケットのリンクインジケーターのライトがオンになっているはずです。
  2. コンピューターの電源を入れます。
  3. メニュー画面が表示されます。優先オプションに対応する数字キーを押します。
コンピューターが netboot サーバーから起動しない場合は、コンピューターが正しいネットワークインターフェースから最初に起動するように BIOS が設定されていることを確認してください。BIOS システムによっては、ブートデバイスとしてネットワークインターフェースを指定していても、PXE 標準に対応していない場合があります。詳細は、お使いのハードウェアのドキュメントを参照してください。

2.6. Red Hat Satellite Server からのインストール

必要なポートがオープンしているようにファイアウォール設定が設定されていることを確認します。ポート番号の一覧については、「ポート情報」を参照してください。

2.6.1. Red Hat Satellite Server 6.x の使用

注記
Satellite の詳細な手順については、Red Hat Satellite のドキュメントを参照してください。
  1. 新規マニフェストファイルを作成し、Satellite 6 サーバーにマニフェストをアップロードします。
  2. 必要な Red Hat Gluster Storage リポジトリーを検索し、それらを有効にします。
  3. Red Hat Gluster Storage について有効にされているすべてのリポジトリーを同期します。
  4. 新規のコンテンツビューを作成し、必要なすべての製品を追加します。
  5. コンテンツビューを公開し、アクティベーションキーを作成します。
  6. 必要なクライアントの登録
    # rpm -Uvh satellite-server-host-address/pub/katello-ca-consumer-latest.noarch.rpm
    # subscription-manager register --org=”Organization_Name” --activationkey=”Activation_Key
  7. 利用可能なエンタイトルメントプールの特定
    # subscription-manager list --available
  8. システムへのエンタイトルメントプールのアタッチ
    # subscription-manager attach --pool=Pool_ID
  9. 必要なチャンネルのサブスクライブ
    1. RHEL および Gluster チャンネルの有効化
      Red Hat Enterprise Linux 8 の場合
      # subscription-manager repos --enable=rhel-8-for-x86_64-baseos-rpms --enable=rhel-8-for-x86_64-appstream-rpms
      # subscription-manager repos --enable=rh-gluster-3-for-rhel-8-x86_64-rpms
      Red Hat Enterprise Linux 7 の場合
      # subscription-manager repos --enable=rhel-7-server-rpms --enable=rh-gluster-3-for-rhel-7-server-rpms
    2. Samba が必要な場合は、そのリポジトリーを有効にします。
      Red Hat Enterprise Linux 8 の場合
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-8-x86_64-rpms
      Red Hat Enterprise Linux 7 の場合
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-7-server-rpms
    3. NFS-Ganesha が必要な場合は、そのリポジトリーを有効にします。
      Red Hat Enterprise Linux 8 の場合
      # subscription-manager repos --enable=rh-gluster-3-nfs-for-rhel-8-x86_64-rpms
      Red Hat Enterprise Linux 7 の場合
      # subscription-manager repos --enable=rh-gluster-3-nfs-for-rhel-7-server-rpms
    4. HA が必要な場合は、そのリポジトリーを有効にします。
      Red Hat Enterprise Linux 8 の場合
      # subscription-manager repos --enable=rhel-8-for-x86_64-highavailability-rpms
      Red Hat Enterprise Linux 7 の場合
      # subscription-manager repos --enable=rhel-ha-for-rhel-7-server-rpms
    5. gdeploy が必要な場合は、Ansible リポジトリーを有効にします。
      Red Hat Enterprise Linux 8 の場合
      # subscription-manager repos --enable=ansible-2-for-rhel-8-x86_64-rpms
      Red Hat Enterprise Linux 7 の場合
      # subscription-manager repos --enable=rhel-7-server-ansible-2-rpms
  10. Red Hat Gluster Storage のインストール
    # yum install redhat-storage-server

2.6.2. Red Hat Satellite Server 5.x の使用

アクティベーションキーの作成

アクティベーションキーの作成方法についての詳細は、『『リファレンスガイド』』の「『アクティべーションキー』」を参照してください。

  • Activation Keys 画面の Details タブで、Base Channels ドロップダウンリストから Red Hat Enterprise Linux Server (v.6 for 64-bit x86_64) を選択します。

    図2.3 ベースチャンネル

    ベースチャンネル
  • Activation Keys 画面の Child Channels タブで、以下の子チャンネルを選択します。
    RHEL Server Scalable File System (v. 6 for x86_64)
    Red Hat Gluster Storage Server 3 (RHEL 6 for x86_64)
    
    Samba パッケージが必要な場合は、以下の子チャンネルを選択します。
    Red Hat Gluster 3 Samba (RHEL 6 for x86_64)

    図2.4 子チャンネル

    子チャンネル
  • Activation Keys 画面の Packages タブで、以下のパッケージ名を入力します。
    redhat-storage-server

    図2.5 パッケージ

    パッケージ
    • Samba パッケージが必要な場合は、以下のパッケージ名を入力します。
      samba

キックスタートプロファイルの作成

キックスタートプロファイルの作成についての詳細は、『『リファレンスガイド』』の「『キックスタート』」を参照してください。

  • キックスタートプロファイルを作成する場合は、以下の Base Channel および Tree を選択する必要があります。
    Base Channel: Red Hat Enterprise Linux Server(64 ビット x86_64 の場合は v.6)
    Tree: ks-rhel-x86_64-server-6-6.5
  • 子チャンネルはキックスタートプロファイルに関連付けないでください。
  • 以前に作成したアクティベーションキーをキックスタートプロファイルに関連付けます。
重要
  • デフォルトで、キックスタートプロファイルは、ユーザーパスワードのハッシュアルゴリズムとして md5 を選択します。
    キックスタートプロファイルの Kickstart DetailsAdvanced Options ページの auth フィールドに以下の設定を指定し、このアルゴリズムを sha512 に変更する必要があります。
    --enableshadow --passalgo=sha512
  • キックスタートプロファイルを作成したら、キックスタートプロファイルの Kickstart DetailsAdvanced Options ページで root パスワードを変更し、準備済みの sha512 ハッシュアルゴリズムに基づいて root パスワードを追加する必要があります。

キックスタートプロファイルを使用した Red Hat Gluster Storage Server のインストール

キックスタートプロファイルを使用して Red Hat Gluster Storage Server をインストールする方法についての詳細は、『 『リファレンスガイド』』の「 『キックスタート』」を参照してください。

2.7. glusterd サービスの管理

Red Hat Gluster Storage のインストール後に、glusterd サービスは、信頼できるストレージプールのすべてのサーバーで自動的に起動します。このサービスは、glusterd サービスのコマンドを使用して手動で起動および停止できます。信頼できるストレージプールの作成に関する詳細は、『『Red Hat Gluster Storage 3.5 Administration Guide』』を参照してください。
Red Hat Gluster Storage を使用して、サーバーを再起動したり、クライアントにボリュームを再マウントせずに glusterFS ボリュームの設定を動的に変更します。glusterFS デーモンglusterd は柔軟性のあるボリューム管理を行います。
gluster CLI コマンドを使用して、物理ハードウェアから論理ボリュームを切り離します。これにより、ユーザーはアプリケーションのダウンタイムなしに、ストレージボリュームを拡張し、縮小し、移行することができます。ストレージがクラスターに追加されると、ボリュームはクラスター全体に分散されます。このディストリビューションでは、クラスターは基礎となるハードウェアに変更を加えても常に利用可能になります。

2.7.1. glusterd の手動による起動および停止

以下の手順に従って、glusterd サービスを手動で起動し、停止します。
  • 以下のように glusterd を手動で起動します。
    # /etc/init.d/glusterd start
    または
    # service glusterd start
  • 以下のように glusterd を手動で停止します。
    # /etc/init.d/glusterd stop
    または
    # service glusterd stop

2.8. Gdeploy をサポートする Ansible のインストール

注記
IT 部門に問い合わせ、組織でサポートされる Ansible のダウンロード手順を確認してください。
gDeploy は、Ansible を使用して Playbook およびモジュールを実行します。gDeploy を使用するには、Ansible 2.5 以降をインストールする必要があります。
  1. 以下のコマンドを実行して、Ansible のインストールに必要なリポジトリーを有効にします。
    Red Hat Enterprise Linux 8 の場合
    # subscription-manager repos --enable=ansible-2-for-rhel-8-x86_64-rpms
    Red Hat Enterprise Linux 7 の場合
    # subscription-manager repos --enable=rhel-7-server-ansible-2-rpms
  2. 以下のコマンドを実行して、ansible をインストールします。
    # yum install ansible

2.9. ネイティブクライアントのインストール

ネイティブクライアントは、ユーザースペースの FUSE ベースのクライアントです。高いレベルの同時実行性と書き込みパフォーマンスが必要な場合に、ネイティブクライアントを使用して Red Hat Gluster Storage ボリュームにアクセスすることが推奨されます。
注記
  • Red Hat Gluster Storage サーバーは、サーバーバージョンとネイティブクライアントの以前のバージョンと同じネイティブクライアントのバージョンをサポートします。リリースの一覧は、https://access.redhat.com/solutions/543123 を参照してください。
  • Red Hat Gluster Storage 3.5 バッチ更新 7 以降、glusterfs-6.0-62 以降のバージョンの glusterFS ネイティブクライアントを使用するには、Red Hat Enterprise Enterprise Linux (RHEL 8) をベースとする Red Hat Gluster Storage では rh-gluster-3-client-for-rhel-8-x86_64-rpms、RHEL 7 をベースとする Red Hat Gluster Storage では rh-gluster-3-client-for-rhel-7-server-rpms を必ず経由する必要があります。

コマンドラインを使用した、システムの Red Hat Subscription Management への登録およびサブスクライブ

コマンドラインでシステムを登録し、正しいリポジトリーにサブスクライブします。

前提条件

  • Red Hat Gluster Storage エンタイトルメントのある Red Hat Subscription Manager アカウントのユーザー名およびパスワードを把握します。
  1. subscription-manager register コマンドを実行して、利用可能なプールを一覧表示します。適切なプールを選択し、Red Hat Subscription Manager のユーザー名とパスワードを入力して、システムを Red Hat Subscription Manager に登録します。
    # subscription-manager register
  2. クライアントに応じて、以下のコマンドのいずれかを実行して正しいリポジトリーにサブスクライブします。
    • Red Hat Enterprise Linux 8 クライアントの場合:
      # subscription-manager repos --enable=rh-gluster-3-client-for-rhel-8-x86_64-rpms
    • Red Hat Enterprise Linux 7.x クライアントの場合:
      # subscription-manager repos --enable=rhel-7-server-rpms --enable=rh-gluster-3-client-for-rhel-7-server-rpms
      注記
      以下のコマンドも使用できますが、Red Hat Gluster Storage では今後のリリースでこのリポジトリーのサポートが非推奨になる可能性があります。
      # subscription-manager repos --enable=rhel-7-server-rh-common-rpms
    • Red Hat Enterprise Linux 6.1 以降のクライアントの場合:
      # subscription-manager repos --enable=rhel-6-server-rpms --enable=rhel-6-server-rhs-client-1-rpms
    詳細は、「『Using and Configuring Red Hat Subscription Management』」の「Section 3.1 Registering and attaching a system using the Command Line」を参照してください。
  3. システムが、必要なリポジトリーにサブスクライブされていることを確認します。
    # yum repolist

Web インターフェースを使用したシステム登録およびサブスクライブ

Web インターフェースを使用してシステムを登録し、正しいチャンネルにサブスクライブします。

前提条件

  • Red Hat Gluster Storage エンタイトルメントのある Red Hat Subsrciption Management (RHSM) アカウントのユーザー名およびパスワードを把握します。
  1. Red Hat Subscription Management (https://access.redhat.com/management) にログオンします。
  2. 画面上部の Systems リンクをクリックします。
  3. Red Hat Gluster Storage Native Client チャンネルを追加する必要のあるシステムの名前をクリックします。
  4. 画面の Subscribed Channels セクションで Alter Channel Subscriptions をクリックします。
  5. クライアントプラットフォームに応じて、Red Hat Enterprise Linux 8 for x86_64Red Hat Enterprise Linux 7 for x86_64Red Hat Enterprise Linux 6 for x86_64、または Red Hat Enterprise Linux 5 for x86_64 のノードを展開します。
  6. Change Subscriptions ボタンをクリックし、変更を確定します。
    ページの更新時に Details タブを選択して、システムが適切なチャンネルにサブスクライブされていることを確認します。

ネイティブクライアントパッケージのインストール

Red Hat Network からのネイティブクライアントパッケージのインストール
  • yum install コマンドを実行して、ネイティブクライアントの RPM パッケージをインストールします。
    # yum install glusterfs glusterfs-fuse

第3章 Samba の Red Hat Gluster Storage へのデプロイ

3.1. 前提条件

Samba をRed Hat Gluster Storage にインストールするには、ISO または適切に設定されたソフトウェアリポジトリーを使用したインストールメディアへのアクセスが必要です。Red Hat Gluster Storage サーバーの要件は以下のとおりです。
  1. Red Hat Gluster Storage Server をターゲットサーバーにインストールする必要があります。
    警告
    • Red Hat Gluster Storage の階層化インストールの場合、Red Hat Enterprise Linux から Samba または CTDB パッケージがインストールされていない状態で、デフォルトの Red Hat Enterprise Linux サーバーインストールのみがあることを確認します。
    • Samba バージョン 3 は、Red Hat Gluster Storage 3.0 Update 4 で非推奨にされていいます。samba-3.x では、それ以降の更新は提供されません。セキュリティー更新を含むすべての更新について、別のチャンネルまたはリポジトリーで提供される Samba-4.x にアップグレードすることが推奨されます。
    • CTDB バージョン 2.5 は、Red Hat Gluster Storage 3.1 Update 2 ではサポートされていません。Red Hat Gluster Storage 3.1.2 以降で CTDB を使用するには、システムを Red Hat Gluster Storage の Samba チャンネルで提供される CTDB 4.x にアップグレードする必要があります。
    • Samba 4.x から Samba 3.x への Samba のダウングレードはサポートされていません。
    • 同じクラスターで異なるバージョンの Samba を実行するとデータが破損するため、Samba がすべてのノードで同時にアップグレードされることを確認します。
  2. Samba パッケージが利用可能なチャンネルを有効にします。

    Red Hat Enterprise Linux 6.x での Red Hat Gluster Storage 3.5 の場合

    1. Red Hat Subscription Manager または Satellite server-6.x を使用してマシンを登録した場合は、以下のコマンドを実行してリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-6-server-rpms

    Red Hat Enterprise Linux 7.7 以降での Red Hat Gluster Storage 3.5 の場合

    1. Red Hat Subscription Manager または Satellite server-7.x を使用してマシンを登録した場合は、以下のコマンドを実行してリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-7-server-rpms

    Red Hat Enterprise Linux 8.2 以降での Red Hat Gluster Storage 3.5 の場合

    1. Red Hat Subscription Manager または Satellite server-8.x を使用してマシンを登録した場合は、以下のコマンドを実行してリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-8-x86_64-rpms

3.2. ISO を使用した Samba のインストール

Red Hat Gluster Storage のインストール時に、 Customizing the Software Selection 画面で RH-Gluster-Samba-Server コンポーネントを選択します。
Active Directory と統合する場合は、RH-Gluster-Samba-ServerRH-Gluster-AD-Integration コンポーネントの両方を選択します。

図3.1 パッケージのカスタマイズ

詳細
ISO を使用した Red Hat Gluster Storage のインストールに関する詳細は、「ISO イメージからのインストール」を参照してください。

3.3. yum を使用した Samba のインストール

yum を使用して Samba をインストールするには、以下のコマンドを使用して Samba グループをインストールします。
# yum groupinstall RH-Gluster-Samba-Server
Samba Active Directory の gluster との統合が必要な場合は、以下のコマンドを実行します。
# yum groupinstall RH-Gluster-AD-Integration
yum を使用した Red Hat Gluster Storage のインストールに関する詳細は、「Red Hat Gluster Storage Server の Red Hat Enterprise Linux へのインストール (階層化インストール)」を参照してください。

Samba は、以下の手順に従ってインストールすることもできます。

  1. 基本的な Samba パッケージをインストールするには、以下のコマンドを実行します。
    # yum install samba
  2. smbclient をサーバーで必要とする場合は、以下のコマンドを実行します。
    # yum install samba-client
  3. Active ディレクトリーの設定が必要な場合は、以下のコマンドを実行します。
    # yum install samba-winbind
    # yum install samba-winbind-clients
    # yum install samba-winbind-krb5-locator
  4. 以下のパッケージがインストールされているかどうかを確認します。
    samba-libs
    samba-winbind-krb5-locator
    samba-winbind-modules
    samba-vfs-glusterfs
    samba-winbind
    samba-client
    samba-common
    samba-winbind-clients
    samba
注記
Samba の設定方法については、『RedHat Gluster Storage 3.5 Admin Guide』の「 SMB」を参照してください。

第4章 NFS-Ganesha の Red Hat Gluster Storage への NFS-Ganesha へのデプロイ

NFS-Ganesha は、以下のいずれかの方法でインストールすることができます。
  • yum を使用した NFS-Ganesha のインストール
  • ISO インストール時の NFS-Ganesha のインストール
警告
Gluster-NFS は、Red Hat Gluster Storage 3.5 では非推奨です。Red Hat では Gluster-NFS の使用を推奨しておらず、Red Hat Gluster Storage 3.5.3 にアップグレードする新規デプロイメントおよび既存デプロイメントでのその使用をサポートしません。代わりに、NFS-Ganesha を使用できます。

4.1. 前提条件

NFS-Ganesha をRed Hat Gluster Storage にインストールするには、ISO または適切に設定されたソフトウェアリポジトリーを使用したインストールメディアへのアクセスが必要です。

Red Hat Enterprise Linux 8.2 以降での Red Hat Gluster Storage 3.5 の場合

NFS-Ganesha パッケージが利用可能なチャンネルを有効にします。

  1. Red Hat Subscription Manager を使用してマシンを登録した場合は、以下のコマンドを実行してリポジトリーを有効にします。
    # subscription-manager repos --enable=rh-gluster-3-nfs-for-rhel-8-x86_64-rpms
    HA リポジトリーを追加するには、以下のコマンドを実行します。
    # subscription-manager repos --enable=rhel-8-for-x86_64-highavailability-rpms
  2. Satellite サーバーを使用してマシンを登録している場合は、以下のコマンドを実行してチャンネルを有効にします。
    # rhn-channel --add --channel rh-gluster-3-nfs-for-rhel-8-x86_64-rpms
    HA チャンネルにサブスクライブするには、以下のコマンドを実行します。
    # rhn-channel --add --channel rhel-8-for-x86_64-highavailability-rpms

Red Hat Enterprise Linux 7.7 以降での Red Hat Gluster Storage 3.5 の場合

NFS-Ganesha パッケージが利用可能なチャンネルを有効にします。

  1. Red Hat Subscription Manager を使用してマシンを登録した場合は、以下のコマンドを実行してリポジトリーを有効にします。
    # subscription-manager repos --enable=rh-gluster-3-nfs-for-rhel-7-server-rpms
    HA リポジトリーを追加するには、以下のコマンドを実行します。
    # subscription-manager repos --enable=rhel-ha-for-rhel-7-server-rpms
  2. Satellite サーバーを使用してマシンを登録している場合は、以下のコマンドを実行してチャンネルを有効にします。
    # rhn-channel --add --channel rhel-x86_64-server-7-rh-gluster-3-nfs
    HA チャンネルにサブスクライブするには、以下のコマンドを実行します。
    # rhn-channel --add --channel rhel-x86_64-server-ha-7

4.2. ISO インストール時の NFS-Ganesha のインストール

ISO イメージを使用して Red Hat Gluster Storage をインストールする方法は、「ISO イメージからのインストール」を参照してください。
  1. ISO を使用して Red Hat Storage をインストールする場合は、Customizing the Software Selection 画面で RH-Gluster-NFS-Ganesha を選択し、Next をクリックします。
  2. Red Hat Gluster Storage のインストールの残りのインストール手順に進んでください。ISO を使用して Red Hat Storage をインストールする方法についての詳細は、「ISO イメージからのインストール」を参照してください。

4.3. yum を使用した NFS-Ganesha のインストール

NFS-Ganesha をインストールするために以下の手順を実行します。
  1. 以下のコマンドを使用して、glusterfs-ganesha パッケージをインストールできます。
    # yum install glusterfs-ganesha
    NFS-Ganesha は上記のパッケージと共にインストールされます。nfs-ganesha-gluster および HA パッケージもインストールされます。
    重要
    以下のコマンドを実行して、Red Hat Enterprise Linux 7 に nfs-ganesha-selinux をインストールします。
    # yum install nfs-ganesha-selinux
    以下のコマンドを実行して、Red Hat Enterprise Linux 8 に nfs-ganesha-selinux をインストールします。
     # dnf install glusterfs-ganesha
注記
NFS Ganesha の設定方法は、『Red Hat Gluster Storage 3.5 Administration Guide』の「『NFS Ganesha』」を参照してください。

第5章 Red Hat Gluster Storage 3.5 へのアップグレード

本章では、同じ RHEL プラットフォームメジャーバージョンで RHGS 3.5 をアップグレードする手順を説明します。RHEL 6 ベースの RHGS から RHEL 7 ベースの RHGS にアップグレードするには、Red Hat Gluster Storage のアップグレードを参照してください。
重要
Red Hat Enterprise Linux 8 (RHEL 8) は、Red Hat Gluster Storage 3.5.2 以降の新規インストールでのみサポートされます。
RHEL 8 ベースの Red Hat Gluster Storage へのアップグレードは、Red Hat Gluster Storage 3.5.2 以降でサポートされます。RHEL 7 ベースの RHGS クラスターから RHEL 8 ベースの RHGS クラスターへのアップグレードは、サポートされません。

アップグレードサポートの制限

  • RHGS を RHGS-3.5.4 より低いバージョンから RHGS-3.5.4 以降にアップグレードする場合は、サーバーとクライアントの両方を RHGS-3.5.4 以降のバージョンにアップグレードしてから、クラスターの動作バージョンを増やす必要があります。
  • Red Hat Enterprise Linux 7.5 でサポートされる Virtual Data Optimizer (VDO) ボリュームは、現時点では Red Hat Gluster Storage でサポートされていません。VDO は、Red Hat Hyperconverged Infrastructure for Virtualization 2.0 の一部として使用されている場合にのみサポートされます。詳細は、 VDO について参照してください。
  • クライアントをアップグレードする前に、サーバーをアップグレードする必要があります。
  • Red Hat Gluster Storage 3.1 Update 2 以前からアップグレードする場合は、サーバーとクライアントを同時にアップグレードする必要があります。
  • NFS-Ganesha を使用する場合、Red Hat Gluster Storage 3.5 へのサポートされるアップグレードパスは、アップグレードするバージョンによって異なります。バージョン 3.3 以前のバージョンからアップグレードする場合は、『Red Hat Gluster Storage 3.3 へのおふぃラインアップグレード』を実行してから、バージョン 3.3 から 3.4 へのインサービスアップグレードを実行します。後で、「Red Hat Gluster Storage 3.4 から Red Hat Gluster Storage 3.5 へのインサービスソフトウェアアップグレード」 を使用してバージョン 3.4 から 3.5 にアップグレードします。バージョン 3.4 から 3.5 にアップグレードする場合、「Red Hat Gluster Storage 3.4 から Red Hat Gluster Storage 3.5 へのインサービスソフトウェアアップグレード」 を直接使用します。

5.1. Red Hat Gluster Storage 3.5 へのオフラインアップグレード

警告
アップグレードする前に、Red Hat Gluster Storage 3.1.3 の後のバージョンに変更された要件があるかどうかを注意して確認してください。Red Hat Gluster Storage 3.1.3 以降のサーバーが提供するボリュームにアクセスする場合は、クライアントが Red Hat Gluster Storage 3.1.3 以降も使用している必要があります。他のクライアントのバージョンからボリュームにアクセスすると、データが利用不可となり、ディレクトリー操作に関する問題が生じる可能性があります。この要件は Red Hat Gluster Storage 3.1.3 に Distributed Hash Table の機能に影響を与える多数の変更が含まれるために存在します。これは、ディレクトリーの整合性を改善し、BZ#1115367 および BZ#1118762 に示される影響を取り除くことを目的としています。
重要
Red Hat Enterprise Linux 7 ベースの Red Hat Gluster Storage 3.1 以降では、更新によりファイアウォールのルールが再度読み込まれます。リロード前のすべてのランタイムのみの変更は失われるため、保持する必要のある変更は永続的に保持できるようにします。

5.1.1. Red Hat Subscription Manager にサブスクライブしているシステム向けの Red Hat Gluster Storage 3.5 へのアップグレード

手順5.1 アップグレード前

  1. オペレーティングシステムパーティション上ではない場所に、設定ディレクトリーとファイルをバックアップします。
    • /var/lib/glusterd
    • /etc/samba
    • /etc/ctdb
    • /etc/glusterfs
    • /var/lib/samba
    • /var/lib/ctdb
    • /var/run/gluster/shared_storage/nfs-ganesha
    注記
    3.5 Batch Update 3 のリリースにより、共有ストレージのマウントポイントが /var/run/gluster/ から /run/gluster/ に変更されました。
    NFS-Ganesha を使用する場合は、すべてのノードから以下のファイルをバックアップします。
    • /run/gluster/shared_storage/nfs-ganesha/exports/export.*.conf
    • /etc/ganesha/ganesha.conf
    • /etc/ganesha/ganesha-ha.conf
    Red Hat Gluster Storage 3.3 から 3.4 以降のリリースにアップグレードする場合は、すべてのノードのブリックの root で以下のコマンドを個別に実行し、すべての xattr をバックアップします。
    # find ./ -type d ! -path "./.*" ! -path "./" | xargs getfattr -d -m. -e hex > /var/log/glusterfs/xattr_dump_brick_name
  2. すべてのクライアントから gluster ボリュームをアンマウントします。クライアントで以下のコマンドを使用して、マウントポイントからボリュームをアンマウントします。
    # umount mount-point
  3. NFS-Ganesha を使用する場合は、gluster サーバーで以下のコマンドを実行して nfs-ganesha サービスを無効にします。
    # gluster nfs-ganesha disable
  4. gluster サーバーで、共有ボリュームを無効にします。
    # gluster volume set all cluster.enable-shared-storage disable
  5. すべてのボリュームを停止
    # for vol in `gluster volume list`; do gluster --mode=script volume stop $vol; sleep 2s; done
  6. すべてのボリュームが停止していることを確認します。
    # gluster volume info
  7. 以下のコマンドを使用して、すべてのサーバーで glusterd サービスを停止します。
    # service glusterd stop
    # pkill glusterfs
    # pkill glusterfsd
  8. pcsd サービスを停止します。
    # systemctl stop pcsd

手順5.2 yum を使用したアップグレード

注記
システムがレガシーの Red Hat Network Classic 更新システムにないことを確認します。
# migrate-rhs-classic-to-rhsm --status
Red Hat Network Classic を依然として使用している場合には、以下のコマンドを実行して Red Hat Subscription Manager に移行します。
# migrate-rhs-classic-to-rhsm --rhn-to-rhsm
次にステータスが変更されたことを確認します。
# migrate-rhs-classic-to-rhsm --status
  1. Samba を使用する場合:
    1. Red Hat Enterprise Linux 6.7 以降では、以下のリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-6-server-rpms
      Red Hat Enterprise Linux 7 の場合は、以下のリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-7-server-rpms
      Red Hat Enterprise Linux 8 の場合は、以下のリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-8-x86_64-rpms
    2. 同じクラスターで異なるバージョンの Samba を実行するとデータが破損するため、Samba がすべてのノードで同時にアップグレードされることを確認します。
      CTDB サービスおよび SMB サービスを停止します。
      Red Hat Enterprise Linux 7 および Red Hat Enterprise Linux 8 の場合:
      # systemctl stop ctdb
      Red Hat Enterprise Linux 6 の場合:
      # service ctdb stop
      サービスが停止していることを確認するには、以下を実行します。
      # ps axf | grep -E '(ctdb|smb|winbind|nmb)[d]'
  2. サーバーを Red Hat Gluster Storage 3.5 にアップグレードします。
    # yum update
    更新が完了するまで待ちます。
    重要
    以下のコマンドを実行して、Red Hat Enterprise Linux 7 に nfs-ganesha-selinux をインストールします。
    # yum install nfs-ganesha-selinux
    以下のコマンドを実行して、Red Hat Enterprise Linux 8 に nfs-ganesha-selinux をインストールします。
     # dnf install glusterfs-ganesha
  3. Samba/CTDB を使用する場合は、以下のファイルを更新して、META="all"META="<ctdb_volume_name>" に置き換えます (例: META="ctdb")。
    • /var/lib/glusterd/hooks/1/start/post/S29CTDBsetup.sh: このスクリプトは、ファイルシステムおよびそのロックボリュームが、Samba を使用するすべての Red Hat Gluster Storage サーバーにマウントされ、CTDB がシステムの起動時に起動するようにします。
    • /var/lib/glusterd/hooks/1/stop/pre/S29CTDB-teardown.sh: このスクリプトは、ファイルシステムおよびそのロックボリュームが、CTDB ボリュームが停止する場合にアンマウントされるようにします。
      注記
      RHEL ベースの Red Hat Gluster Storage が Samba で 3.5 バッチ更新 4 にアップグレードするには、既存のすべての samba ボリュームに対して、write-behind トランスレーターを手動で無効にする必要があります。
      # gluster volume set <volname> performance.write-behind off
  4. サーバーを再起動して、カーネルの更新が適用されるようにします。
  5. glusterd サービスおよび pcsd サービスが起動していることを確認します。
    # systemctl start glusterd
    # systemctl start pcsd
    注記
    サーバーのアップグレード時に、glustershd.log ファイルは、アップグレードされたノードですべてのインデックスクロール(10 分)時に「Invalid argument」エラーが出力されます。これは「予期されており」であり、op-version が増えるまで「無視」することができます。その後、これらのエラーはトリガーされません。エラーメッセージの例:
    [2021-05-25 17:58:38.007134] E [MSGID: 114031] [client-rpc-fops_v2.c:216:client4_0_mkdir_cbk] 0-spvol-client-40: remote operation failed. Path: (null) [Invalid argument]
    op-version が '70000' 未満の場合は、すべてのサーバーとクライアントが新しいバージョンにアップグレードするまで、op-version を「70100」以上に増やしません。
  6. すべてのノードがアップグレードされたら、以下のコマンドを実行してクラスターの op-version を更新します。これにより、クラスター内の互換性の問題を防ぐことができます。
    # gluster volume set all cluster.op-version 70200
    注記
    70200 は、Red Hat Gluster Storage 3.5 の cluster.op-version 値です。Ater は cluster-op バージョンをアップグレードするため、指定したコマンドを使用してボリュームの詳細なエントリー修復を有効にします。
    gluster volume heal $VOLNAME granular-entry-heal enable
    この機能は、Red Hat Gluster Storage 3.5 へのアップグレード後にデフォルトで有効になりましたが、op-version を増やした後にのみ有効になります。他のバージョンの正しいcluster.op-version 値については、「Red Hat Gluster Storage のソフトウェアコンポーネントおよびバージョン」 を参照してください。
    重要
    サーバーをアップグレードしてクライアントをアップグレードする前にop-versionが「70100」に増えると、'.glusterfs-anonymous-inode-(gfid)' という名前のマウントポイントのルートの下にあるいくつかの内部メタデータファイルが古いものに公開されます。クライアントは I/O を実行できたり、このディレクトリーの内容を削除したり、変更したりしないでください。クライアントは 3.5.4 以降のバージョンにアップグレードする必要があり、このディレクトリーがクライアントに表示されるようになります。
  7. このアップグレードの一環として Gluster NFS から NFS Ganesha に移行する場合は、 4章NFS-Ganesha の Red Hat Gluster Storage への NFS-Ganesha へのデプロイの説明に従って NFS-Ganesha パッケージをインストールし、『『Red Hat Gluster Storage 3.5 Administration Guide』』の「NFS Ganesha」セクションの情報を参照して NFS Ganesha クラスターを設定します。
  8. すべてのボリュームを起動します。
    # for vol in `gluster volume list`; do gluster --mode=script volume start $vol; sleep 2s; done
  9. NFS-Ganesha を使用している場合:
    1. ボリュームのエクスポート情報を ganesha.conf のバックアップコピーから、新しい /etc/ganesha/ganesha.conf ファイルにコピーします。
      バックアップファイルのエクスポート情報は、以下のようになります。
      %include "/var/run/gluster/shared_storage/nfs-ganesha/exports/export.v1.conf"
      %include "/var/run/gluster/shared_storage/nfs-ganesha/exports/export.v2.conf"
      %include "/var/run/gluster/shared_storage/nfs-ganesha/exports/export.v3.conf"
      注記
      3.5 Batch Update 3 のリリースにより、共有ストレージのマウントポイントが /var/run/gluster/ から /run/gluster/ に変更されました。
    2. バックアップディレクトリーから以下のコマンドを実行し、バックアップボリュームのエクスポートファイルをバックアップディレクトリーから /etc/ganesha/exports にコピーします。
      # cp export.* /etc/ganesha/exports/
  10. 共有ボリュームを有効にします。
    # gluster volume set all cluster.enable-shared-storage enable
  11. 共有ストレージボリュームがサーバーにマウントされていることを確認します。ボリュームがマウントされていない場合は、以下のコマンドを実行します。
    # mount -t glusterfs hostname:gluster_shared_storage /var/run/gluster/shared_storage
  12. /var/run/gluster/shared_storage/nfs-ganesha ディレクトリーが作成されていることを確認します。
    # cd /var/run/gluster/shared_storage/
    # mkdir nfs-ganesha
  13. 新しいサービスおよびポートのファイアウォール設定を有効にします。『『Red Hat Gluster Storage 3.5 Administration Guide』』の「『Getting Started』」を参照してください。
  14. Samba/CTDB を使用する場合は、以下を行います。
    1. CTDB を起動する前に、以下のコマンドを実行して /gluster/lock をマウントします。
      # mount <ctdb_volume_name>
      # mount -t glusterfs server:/ctdb_volume_name /gluster/lock/
    2. Samba サーバーの mount コマンドの出力で lock をチェックして、lock ボリュームが正しくマウントされていることを確認します。
      # mount | grep 'lock'
      ...
      <hostname>:/<ctdb_volume_name>.tcp on /gluster/lock type fuse.glusterfs (rw,relatime,user_id=0,group_id=0,default_permissions,allow_other,max_read=131072)
    3. SMB 経由でアクセスされるボリュームをホストするすべてのサーバーを更新している場合、以下のコマンドを実行して CTDB サービスおよび Samba サービスを起動します。
      Red Hat Enterprise Linux 7 および Red Hat Enterprise Linux 8 の場合:
      # systemctl start ctdb
      Red Hat Enterprise Linux 6 の場合:
      # service ctdb start
    4. CTDB サービスおよび SMB サービスが起動していることを確認するには、以下のコマンドを実行します。
      ps axf | grep -E '(ctdb|smb|winbind|nmb)[d]'
  15. NFS-Ganesha を使用する場合:
    1. ganesha.conf ファイルおよび ganesha-ha.conf ファイル、および /etc/ganesha/exports ディレクトリーを /var/run/gluster/shared_storage/nfs-ganesha ディレクトリーにコピーします。
      # cd /etc/ganesha/
      # cp ganesha.conf  ganesha-ha.conf /var/run/gluster/shared_storage/nfs-ganesha/
      # cp -r exports/ /var/run/gluster/shared_storage/nfs-ganesha/
    2. ganesha.conf ファイルのエクスポートエントリーのパスを更新します。
      # sed -i 's/\/etc\/ganesha/\/var\/run\/gluster\/shared_storage\/nfs-ganesha/' /var/run/gluster/shared_storage/nfs-ganesha/ganesha.conf
    3. 以下のコマンドを実行して、既存のクラスター設定をクリーンアップします。
      /usr/libexec/ganesha/ganesha-ha.sh --cleanup /var/run/gluster/shared_storage/nfs-ganesha
    4. Red Hat Enterprise Linux 7.4 以降にアップグレードする場合は、以下の SELinux ブール値を設定します。
      # setsebool -P ganesha_use_fusefs on
    5. nfs-ganesha サービスを起動し、すべてのノードが機能していることを確認します。
      # gluster nfs-ganesha enable
    6. すべてのボリュームで NFS-Ganesha を有効にします。
      # gluster volume set volname ganesha.enable on

5.1.2. Red Hat Satellite Server にサブスクライブしているシステム向けの Red Hat Gluster Storage 3.5 へのアップグレード

手順5.3 アップグレード前

  1. オペレーティングシステムパーティション上ではない場所に、設定ディレクトリーとファイルをバックアップします。
    • /var/lib/glusterd
    • /etc/samba
    • /etc/ctdb
    • /etc/glusterfs
    • /var/lib/samba
    • /var/lib/ctdb
    • /var/run/gluster/shared_storage/nfs-ganesha
    注記
    3.5 Batch Update 3 のリリースにより、共有ストレージのマウントポイントが /var/run/gluster/ から /run/gluster/ に変更されました。
    NFS-Ganesha を使用する場合は、すべてのノードから以下のファイルをバックアップします。
    • /run/gluster/shared_storage/nfs-ganesha/exports/export.*.conf
    • /etc/ganesha/ganesha.conf
    • /etc/ganesha/ganesha-ha.conf
    Red Hat Gluster Storage 3.3 から 3.4 以降のリリースにアップグレードする場合は、すべてのノードのブリックの root で以下のコマンドを個別に実行し、すべての xattr をバックアップします。
    # find ./ -type d ! -path "./.*" ! -path "./" | xargs getfattr -d -m. -e hex > /var/log/glusterfs/xattr_dump_brick_name
  2. すべてのクライアントから gluster ボリュームをアンマウントします。クライアントで以下のコマンドを使用して、マウントポイントからボリュームをアンマウントします。
    # umount mount-point
  3. NFS-Ganesha を使用する場合は、gluster サーバーで以下のコマンドを実行して nfs-ganesha サービスを無効にします。
    # gluster nfs-ganesha disable
  4. gluster サーバーで、共有ボリュームを無効にします。
    # gluster volume set all cluster.enable-shared-storage disable
  5. すべてのボリュームを停止します。
    # for vol in `gluster volume list`; do gluster --mode=script volume stop $vol; sleep 2s; done
  6. すべてのボリュームが停止していることを確認します。
    # gluster volume info
  7. 以下のコマンドを使用して、すべてのサーバーで glusterd サービスを停止します。
    # service glusterd stop
    # pkill glusterfs
    # pkill glusterfsd
  8. pcsd サービスを停止します。
    # systemctl stop pcsd

手順5.4 Satellite を使用したアップグレード

  1. Red Hat Satellite Server でアクティベーションキーを作成し、以下のチャンネルに関連付けます。詳細は、「Red Hat Satellite Server からのインストール」 を参照してください。
    • Red Hat Enterprise Linux 6.7 以降の場合:
      Base Channel: Red Hat Enterprise Linux Server (v.6 for 64-bit x86_64)
      
      Child channels:
      RHEL Server Scalable File System (v. 6 for x86_64)
      Red Hat Gluster Storage Server 3 (RHEL 6 for x86_64)
      Samba を使用する場合は、以下のチャンネルを追加します。
      Red Hat Gluster 3 Samba (RHEL 6 for x86_64)
    • Red Hat Enterprise Linux 7 の場合
      Base Channel: Red Hat Enterprise Linux Server (v.7 for 64-bit x86_64)
      
      Child channels:
      RHEL Server Scalable File System (v. 7 for x86_64)
      Red Hat Gluster Storage Server 3 (RHEL 7 for x86_64)
      Samba を使用する場合は、以下のチャンネルを追加します。
      Red Hat Gluster 3 Samba (RHEL 7 for x86_64)
  2. 以下の手順を実行して、Red Hat Network Satellite からシステムの登録を解除します。
    1. Red Hat Network Satellite サーバーにログインします。
    2. 上部のナビゲーションバーの Systems タブをクリックし、System List で古いシステムまたは重複システムの名前をクリックします。
    3. ページの右上にある delete system リンクをクリックします。
    4. システムプロファイルの削除を確認するには、Delete System ボタンをクリックします。
  3. 先の手順で作成した認証情報とアクティベーションキーを使用して、Red Hat Gluster Storage サーバーで以下のコマンドを実行します。これにより、システムが Red Hat Network Satellite Server の Red Hat Gluster Storage 3.5 チャンネルに再登録されます。
    # rhnreg_ks --username username --password password --force --activationkey Activation Key ID
  4. チャンネルのサブスクリプションが更新されていることを確認します。
    Red Hat Enterprise Linux 6.7 以降で、Samba を使用する場合は、以下のチャンネルと rh-gluster-3-samba-for-rhel-6-server-rpms チャンネルを検索します。
    # rhn-channel --list
    rhel-6-server-rpms
    rhel-scalefs-for-rhel-6-server-rpms
    rhs-3-for-rhel-6-server-rpms
    Red Hat Enterprise Linux 7 では、Samba を使用する場合は、以下のチャンネルと rh-gluster-3-samba-for-rhel-7-server-rpms チャンネルを検索します。
    # rhn-channel --list
    rhel-7-server-rpms
    rh-gluster-3-for-rhel-7-server-rpms
  5. Red Hat Gluster Storage 3.5 にアップグレードします。
    # yum update
    重要
    以下のコマンドを実行して、Red Hat Enterprise Linux 7 に nfs-ganesha-selinux をインストールします。
    # yum install nfs-ganesha-selinux
    以下のコマンドを実行して、Red Hat Enterprise Linux 8 に nfs-ganesha-selinux をインストールします。
     # dnf install glusterfs-ganesha
  6. サーバーを再起動して、ボリュームとデータの整合性チェックを実行します。
  7. すべてのノードがアップグレードされたら、以下のコマンドを実行してクラスターの op-version を更新します。これにより、クラスター内の互換性の問題を防ぐことができます。
    # gluster volume set all cluster.op-version 70200
    注記
    70200 は、Red Hat Gluster Storage 3.5 の cluster.op-version 値です。Ater は cluster-op バージョンをアップグレードするため、指定したコマンドを使用してボリュームの詳細なエントリー修復を有効にします。
    gluster volume heal $VOLNAME granular-entry-heal enable
    この機能は、Red Hat Gluster Storage 3.5 へのアップグレード後にデフォルトで有効になりましたが、op-version を増やした後にのみ有効になります。他のバージョンの正しいcluster.op-version 値については、「Red Hat Gluster Storage のソフトウェアコンポーネントおよびバージョン」 を参照してください。
  8. すべてのボリュームを起動します。
    # for vol in `gluster volume list`; do gluster --mode=script volume start $vol; sleep 2s; done
  9. NFS-Ganesha を使用している場合:
    1. ボリュームのエクスポート情報を ganesha.conf のバックアップコピーから、新しい /etc/ganesha/ganesha.conf ファイルにコピーします。
      バックアップファイルのエクスポート情報は、以下のようになります。
      %include "/var/run/gluster/shared_storage/nfs-ganesha/exports/export.v1.conf"
      %include "/var/run/gluster/shared_storage/nfs-ganesha/exports/export.v2.conf"
      %include "/var/run/gluster/shared_storage/nfs-ganesha/exports/export.v3.conf"
      注記
      3.5 Batch Update 3 のリリースにより、共有ストレージのマウントポイントが /var/run/gluster/ から /run/gluster/ に変更されました。
    2. バックアップディレクトリーから以下のコマンドを実行し、バックアップボリュームのエクスポートファイルをバックアップディレクトリーから /etc/ganesha/exports にコピーします。
      # cp export.* /etc/ganesha/exports/
  10. 共有ボリュームを有効にします。
    # gluster volume set all cluster.enable-shared-storage enable
  11. 共有ストレージボリュームがサーバーにマウントされていることを確認します。ボリュームがマウントされていない場合は、以下のコマンドを実行します。
    # mount -t glusterfs hostname:gluster_shared_storage /var/run/gluster/shared_storage
  12. /var/run/gluster/shared_storage/nfs-ganesha ディレクトリーが作成されていることを確認します。
    # cd /var/run/gluster/shared_storage/
    # mkdir nfs-ganesha
  13. 新しいサービスおよびポートのファイアウォール設定を有効にします。『『Red Hat Gluster Storage 3.5 Administration Guide』』の「『Getting Started』」を参照してください。
  14. Samba/CTDB を使用する場合は、以下を行います。
    1. CTDB を起動する前に、以下のコマンドを実行して /gluster/lock をマウントします。
      # mount <ctdb_volume_name>
      # mount -t glusterfs server:/ctdb_volume_name /gluster/lock/
    2. Samba サーバーの mount コマンドの出力で lock をチェックして、lock ボリュームが正しくマウントされていることを確認します。
      # mount | grep 'lock'
      ...
      <hostname>:/<ctdb_volume_name>.tcp on /gluster/lock type fuse.glusterfs (rw,relatime,user_id=0,group_id=0,default_permissions,allow_other,max_read=131072)
    3. SMB 経由でアクセスされるボリュームをホストするすべてのサーバーを更新している場合、以下のコマンドを実行して CTDB サービスおよび Samba サービスを起動します。
      Red Hat Enterprise Linux 7 および Red Hat Enterprise Linux 8 の場合:
      # systemctl start ctdb
      Red Hat Enterprise Linux 6 の場合:
      # service ctdb start
    4. CTDB サービスおよび SMB サービスが起動していることを確認するには、以下のコマンドを実行します。
      ps axf | grep -E '(ctdb|smb|winbind|nmb)[d]'
  15. NFS-Ganesha を使用する場合:
    1. ganesha.conf ファイルおよび ganesha-ha.conf ファイル、および /etc/ganesha/exports ディレクトリーを /var/run/gluster/shared_storage/nfs-ganesha ディレクトリーにコピーします。
      # cd /etc/ganesha/
      # cp ganesha.conf  ganesha-ha.conf /var/run/gluster/shared_storage/nfs-ganesha/
      # cp -r exports/ /var/run/gluster/shared_storage/nfs-ganesha/
    2. ganesha.conf ファイルのエクスポートエントリーのパスを更新します。
      # sed -i 's/\/etc\/ganesha/\/var\/run\/gluster\/shared_storage\/nfs-ganesha/' /var/run/gluster/shared_storage/nfs-ganesha/ganesha.conf
    3. 以下のコマンドを実行して、既存のクラスター設定をクリーンアップします。
      /usr/libexec/ganesha/ganesha-ha.sh --cleanup /var/run/gluster/shared_storage/nfs-ganesha
    4. Red Hat Enterprise Linux 7.4 以降にアップグレードする場合は、以下の SELinux ブール値を設定します。
      # setsebool -P ganesha_use_fusefs on
  16. ctdb サービス (および使用している場合は nfs-ganesha サービス) を起動し、すべてのノードが機能していることを確認します。
    # systemctl start ctdb
    # gluster nfs-ganesha enable
  17. このデプロイメントで NFS-Ganesha を使用する場合は、すべてのボリュームで NFS-Ganesha を有効にします。
    # gluster volume set volname ganesha.enable on

5.1.3. Offline Software Upgrade の特別な考慮事項

5.1.3.1. CTDB 設定ファイルの移行

CTDB を 4.9.x にアップグレードし、古いバージョンの CTDB からアップグレードする場合は、アップグレード後に以下の手順を実行します。
  1. 設定ファイルを移行する一時的なディレクトリーを作成します。
    # mkdir /tmp/ctdb-migration
  2. CTDB 設定の移行スクリプトを実行します。
    # ./usr/share/doc/ctdb-4.9.x/examples/config_migrate.sh -o /tmp/ctdb-migration /etc/sysconfig/ctdb
    このスクリプトは、CTDB 設定ディレクトリーが /etc/ctdb であることを前提としています。これがセットアップに対して適切でない場合、-d オプションで代替の設定ディレクトリーを指定します。以下は例になります。
    # ./usr/share/doc/ctdb-4.9.x/examples/config_migrate.sh -o /tmp/ctdb-migration /etc/sysconfig/ctdb -d ctdb-config-dir
  3. /tmp/ctdb-migration ディレクトリーに以下のファイルが含まれていることを確認します。
    • commands.sh
    • ctdb.conf
    • script.options
    • ctdb.tunables(追加の変更が必要な場合)
    • ctdb.sysconfig(追加の変更が必要な場合)
    • README.warn(追加の変更が必要な場合)
  4. 現在の設定ファイルをバックアップします。
    # mv /etc/ctdb/ctdb.conf /etc/ctdb/ctdb.conf.default
  5. 新しい設定ファイルをインストールします。
    # mv /tmp/ctdb-migration/ctdb.conf /etc/ctdb/ctdb.conf
    # mv script.options /etc/ctdb/
  6. commands.sh ファイルを実行可能にして実行します。
      # chmod +x /tmp/ctdb-migration/commands.sh
    # ./tmp/ctdb-migration/commands.sh
  7. /tmp/ctdb-migration/ctdb.tunables が存在する場合は、/etc/ctdb ディレクトリーに移動します。
    # cp /tmp/ctdb-migration/ctdb.tunables /etc/ctdb
  8. /tmp/ctdb-migration/ctdb.sysconfig が存在する場合は、古い /etc/sysconfig/ctdb ファイルのバックアップを取得し、これを /tmp/ctdb-migration/ctdb.sysconfig に置き換えます。
    # mv /etc/sysconfig/ctdb /etc/sysconfig/ctdb.old
    # mv /tmp/ctdb-migration/ctdb.sysconfig /etc/sysconfig/ctdb
    それ以外の場合は、古い /etc/sysconfig/ctdb ファイルのバックアップを取得し、これを /etc/sysconfig/ctdb.rpmnew に置き換えます。
    # mv /etc/sysconfig/ctdb /etc/sysconfig/ctdb.old
    # mv /etc/sysconfig/ctdb.rpmnew /etc/sysconfig/ctdb
    

5.2. Red Hat Gluster Storage 3.4 から Red Hat Gluster Storage 3.5 へのインサービスソフトウェアアップグレード

重要
クライアントを更新する前に、すべての Red Hat Gluster Storage サーバーをアップグレードします。
インサービスソフトウェアアップグレードとは、クラスターでホストされるボリュームをオフラインにすることなく、新しいバージョンのソフトウェアで Red Hat Gluster Storage Server クラスターを段階的に更新する機能を指します。ほとんどの場合、クラスターが更新されている際にもボリュームでの通常の I/O 操作が継続されます。
CTDB を使用する I/O は、アップグレードまたは更新時に一時停止する可能性があります。これは、Gluster NFS または Samba を使用するクライアントに影響を与えます。
注記
NFS-Ganesha のインサービスアップグレードを実行すると、新しい設定ファイルは /etc/ganesha フォルダーにganesha.conf.rpmnewという名前で保存されます。古い設定ファイルは、インサービスアップグレードプロセス時に上書きされません。ただし、アップグレード後、ganesha.conf.rpmnewから、/etc/ganeshaフォルダーにある既存のganesha.confファイルに、新しい設定変更を手動でコピーする必要があります。

5.2.1. アップグレード前のタスク

インサービスソフトウェアアップグレードのプロセスに進む前に、以下の設定に基づく手順を実行します。

5.2.1.1. Red Hat Gluster Storage 3.5 のアップグレード要件

先の更新から Red Hat Gluster Storage 3.5 にアップグレードするアップグレード要件は以下の様になります。
  • インサービスソフトウェアアップグレードは、分散型バージョンの Arbiter、イレイジャーコーディング (分散)、および Three Way レプリケーションのボリュームタイプでサポートされます。これは完全な分散ボリュームではサポートされません。
  • 既存の環境にスナップショットを使用する場合は、各ブリックは独立したシンプロビジョニング論理ボリューム (LV) である必要があります。スナップショットを使用する予定がない場合、「シック」プロビジョニングされたボリュームは引き続きサポートされます。
  • ブリックを含む論理ボリュームは、その他の目的では使用できません。
  • Red Hat Gluster Storage 3.4 以降では、リニア LVM およびシン LV がサポートされています。詳細は、https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/7/html-single/logical_volume_manager_administration/index#LVM_components を参照してください。
  • サーバー側のクォーラム (定足数) が有効にされている場合、1 つのノードをダウンしてもサーバー側のクォーラム (定足数) に違反しないことを確認します。ダミーのピアを追加して、以下のコマンドを使用し、ローリングアップグレードが完了するまでサーバー側のクォーラム (定足数) の違反が生じないようにします。
    # gluster peer probe dummynode
    注記
    geo レプリケーションセッションがある場合は、『『Red Hat Gluster Storage Administration Guide』』の「『Starting Geo-replication for a New Brick or New Node』」のセクションを参照してください。
    たとえば、各マシンに 2 ノードと 1 ブリックのある単純なレプリケーションボリュームについてサーバー側のクォーラム (定足数) の割合がデフォルト値(>50%) に設定される場合、上記のコマンドを使用して、ブリックを含まないダミーノードを信頼できるストレージプールに追加し、ボリュームの高可用性を確保する必要があります。
    3 ノードで構成されるクラスターでは、サーバー側のクォーラム (定足数) の割合が 77% に設定される場合、1 つのノードがダウンするとサーバー側のクォーラム (定足数) の違反が生じます。このシナリオでは、サーバー側のクォーラム (定足数) を満たすために 2 つのダミーノードを追加する必要があります。
  • マスターとスレーブ間で実行されている geo レプリケーションセッションを停止します。
    # gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL stop
  • 以下のコマンドを使用して、インサービスソフトウェアアップグレードに進む前に保留中の自己修復がないことを確認します。
    # gluster volume heal volname info
  • Red Hat Gluster Storage サーバーが必要なチャンネルに登録されていることを確認します。
    Red Hat Enterprise Linux 6 の場合:
    rhel-6-server-rpms
    rhel-scalefs-for-rhel-6-server-rpms
    rhs-3-for-rhel-6-server-rpms
    Red Hat Enterprise Linux 7 の場合:
    rhel-7-server-rpms
    rh-gluster-3-for-rhel-7-server-rpms
    Red Hat Enterprise Linux 8 の場合
    rhel-8-for-x86_64-baseos-rpms
    rhel-8-for-x86_64-appstream-rpms
    rh-gluster-3-for-rhel-8-x86_64-rpms
    チャンネルにサブスクライブするには、以下のコマンドを実行します。
    # subscription-manager repos --enable=repo-name

5.2.1.2. インサービスソフトウェアアップグレードの制限

以下は、インサービスソフトウェアアップグレードの制限の一部を示しています。
  • NFS-Ganesha クラスターのインサービスアップグレードは、Red Hat Gluster Storage 3.4 以降でのみサポートされます。Red Hat Gluster Storage 3.1 からアップグレードし、NFS-Ganesha を使用する場合は、Red Hat Gluster Storage 3.4 にオフラインでアップグレードします。その後、インサービスアップグレード方法を使用して Red Hat Gluster Storage 3.5 にアップグレードします。
  • イレイジャーコード化(分散した)ボリュームは、disperse.optimistic-change-logdisperse.eager-lock、および disperse.other-eager-lock オプションがoffに設定されている場合にのみ、稼働中にアップグレードできます。これらのオプションを無効にしてから 2 分間待機してからアップグレードを試行し、これらの設定の変更が I/O 操作で有効になるようにします。
  • アップグレード後に、値はイレイジャーコーディングされたボリュームのアップグレード前の値と同様の値に変更できますが、disperse.optimistic-change-log および disperse.other-eager-lock オプションが on に設定されていることを確認してください。
  • インサービスソフトウェアアップグレードの実行前のシステムのワークロードが少なくし、アップグレード時に自己修復プロセスで過剰なエントリーを修復する必要がないようにします。また、システムのワークロードが高くなると、修復に時間がかかることになります。
  • Red Hat Gluster Storage サーバーではボリューム操作を実行しないでください。
  • ハードウェア設定を変更しないでください。
  • Red Hat Gluster Storage の複数バージョンが混在した状態でそれらのバージョンを長期間実行しないでください。たとえば、Red Hat Gluster Storage 3.3、Red Hat Gluster Storage 3.4、および Red Hat Gluster Storage 3.5 が長期間にわたって混在しないようにしてください。
  • 異なるアップグレード方法を組み合わせることはできません。
  • シンプロビジョニングされたボリュームへの移行にインサービスソフトウェアアップグレードを使用することは推奨されませんが、オフラインアップグレードシナリオで使用できます。詳細は、「Red Hat Gluster Storage 3.5 へのオフラインアップグレード」 を参照してください。

5.2.1.3. ISO を使用してアップグレードするためのリポジトリーの設定

ISO を使用してアップグレードするようにリポジトリーを設定するには、以下の手順を実行します。
注記
ISO を使用した Red Hat Gluster Storage のアップグレードは、直前のリリースからのみ実行できます。つまり、ISO を使用して Red Hat Gluster Storage 3.5 にアップグレードする場合は、Red Hat Gluster Storage 3.4 からのみ実行できます。サポートされる Red Hat Gluster Storage リリースの詳細な一覧は、「Red Hat Gluster Storage のソフトウェアコンポーネントおよびバージョン」を参照してください。
  1. 以下のコマンドを使用して、任意のディレクトリーに ISO イメージファイルをマウントします。
    # mount -o loop <ISO image file> <mount-point>
    以下は例になります。
    # mount -o loop rhgs-3.5-rhel-7-x86_64-dvd-1.iso /mnt
  2. 以下の場所にあるファイルにリポジトリーオプションを設定します。
     /etc/yum.repos.d/<file_name.repo>
  3. 以下の情報をリポジトリーファイルに追加します。
    [local]
    name=local
    baseurl=file:///mnt
    enabled=1
    gpgcheck=0

5.2.1.4. アップグレードアクティビティーの準備およびモニタリング

インサービスソフトウェアのアップグレードに進む前に、以下のプロセスを準備し、監視します。
  • ピアおよびボリュームの状態を確認して、すべてのピアが接続され、アクティブなボリュームタスクがないことを確認します。
    # gluster peer status
    # gluster volume status
  • 以下のコマンドを使用してリバランスのステータスを確認します。
    # gluster volume rebalance r2 status
    Node   Rebalanced-files  size      scanned   failures    skipped   status   run time in secs
    ---------   -----------    ---------   --------   ---------  ------  --------  --------------
    10.70.43.198         0       0Bytes       99       0           0    completed     1.00
    10.70.43.148         49      196Bytes    100       0           0    completed     3.00
  • イレイジャーコード化(分散した)ボリュームをアップグレードする必要がある場合は、disperse.optimistic-change-logdisperse.eager-lock、および disperse.other-eager-lock オプションを off に設定します。これらのオプションを無効にしてから 2 分間待機してからアップグレードを試行し、これらの設定の変更が I/O 操作で有効になるようにします。
    # gluster volume set volname disperse.optimistic-change-log off
    # gluster volume set volname disperse.eager-lock off
    # gluster volume set volname disperse.other-eager-lock off
  • 以下のコマンドを使用して、保留中の自己修復がないことを確認します。
    # gluster volume heal volname info
    以下の例は、保留中の自己修復がないことを示しています。
    # gluster volume heal drvol info
    Gathering list of entries to be healed on volume drvol has been successful
    
    Brick 10.70.37.51:/rhs/brick1/dir1
    Number of entries: 0
    
    Brick 10.70.37.78:/rhs/brick1/dir1
    Number of entries: 0
    
    Brick 10.70.37.51:/rhs/brick2/dir2
    Number of entries: 0
    
    Brick 10.70.37.78:/rhs/brick2/dir2
    Number of entries: 0

5.2.2. インサービスアップグレードのサービスへの影響

インサービスソフトウェアアップグレードは、以下のサービスに影響を与えます。必要な予防策を講じるようにしてください。

Gluster NFS(非推奨)

警告
Gluster-NFS は、Red Hat Gluster Storage 3.5 では非推奨です。Red Hat では Gluster-NFS の使用を推奨しておらず、Red Hat Gluster Storage 3.5.3 にアップグレードする新規デプロイメントおよび既存デプロイメントでのその使用をサポートしません。
Gluster NFS (非推奨) を使用してボリュームをマウントすると、そのファイルシステムの新規または未処理のファイル操作は、サーバーがアップグレードされるまでインサービスソフトウェアアップグレード時に連続してハングします。

Samba / CTDB

Samba 共有の継続中の I/O は、Samba 共有がインサービスソフトウェアアップグレード時に一時的に利用できなくなるために失敗します。そのため、以下のコマンドを使用して Samba サービスを停止することが推奨されます。

# service ctdb stop   ;Stopping CTDB will also stop the SMB service.

ボリュームの分散

インサービスソフトウェアアップグレードは、分散ボリュームではサポートされません。クラスターに分散ボリュームがある場合は、アップグレード期間中そのボリュームを停止します。

# gluster volume stop <VOLNAME>

仮想マシンストア

仮想マシンのイメージは常に変更される可能性があります。volume heal コマンドの出力に仮想マシンが一覧表示されている場合、仮想マシンの自己修復が完了していないことを示す訳ではありません。これは、仮想マシンの変更が継続的に行われていることを意味します。

したがって、仮想マシンイメージの保存に gluster ボリュームを使用している場合は、インサービスソフトウェアアップグレードの前にすべての仮想マシンインスタンスの電源を切ることが推奨されます。
重要
インサービスアップグレード時に生じる変更を最小限に抑えるために、すべての仮想マシンインスタンスをオフにすることが推奨されます。仮想マシンインスタンスを稼働状態にする場合は、修復にかかる時間が長くなり、保留中の自己修復が一定の数値のままで、0 になるまでに長い時間を要することがあります。

5.2.3. インサービスソフトウェアアップグレード

注記
samba ではオフラインモードのみがサポートされます。
以下の手順は、レプリカのペアの各ノードで実行する必要があります。
  1. オペレーティングシステムパーティション上ではない場所に、設定ディレクトリーとファイルをバックアップします。
    • /var/lib/glusterd
    • /etc/samba
    • /etc/ctdb
    • /etc/glusterfs
    • /var/lib/samba
    • /var/lib/ctdb
    • /var/run/gluster/shared_storage/nfs-ganesha
    注記
    3.5 Batch Update 3 のリリースにより、共有ストレージのマウントポイントが /var/run/gluster/ から /run/gluster/ に変更されました。
    NFS-Ganesha を使用する場合は、すべてのノードから以下のファイルをバックアップします。
    • /run/gluster/shared_storage/nfs-ganesha/exports/export.*.conf
    • /etc/ganesha/ganesha.conf
    • /etc/ganesha/ganesha-ha.conf
  2. 重要
    RHEL 8.3 から RHEL 8.4 に更新している場合は、以下の追加手順に従います。
    1. クラスター内の 1 つのノードで、/etc/corosync/corosync.conf を編集します。以下の例のように、"token: 3000" 行を totem スタンザに追加します。
      totem {
                  version: 2
                  secauth: off
                  cluster_name: rhel8-cluster
                  transport: knet
                  token: 3000
                }
    2. `pcs cluster sync` を実行します。すべてのノードで /etc/corosync/corosync.conf に新しい token: 3000 行があることを確認するのは任意で行います。
    3. `pcs cluster reload corosync` を実行します。
    4. `corosync-cmapctl | grep totem.token` を実行し、出力が "runtime.config.totem.token(u32)= 3000" であることを確認します。
  3. ノードが NFS-Ganesha クラスターの一部である場合には、ノードをスタンバイモードにします。
    # pcs node standby
  4. 保留中の自己修復操作がないことを確認します。
    # gluster volume heal volname info
  5. このノードが NFS-Ganesha クラスターの一部である場合は、以下を実行します。
    1. PCS クラスターを無効にして、これが停止していることを確認します。
      # pcs cluster disable
      # pcs status
    2. nfs-ganesha サービスを停止します。
      # systemctl stop nfs-ganesha
  6. ノード上のすべての gluster サービスを停止し、それらが停止していることを確認します。
    # systemctl stop glusterd
    # pkill glusterfs
    # pkill glusterfsd
    # pgrep gluster
  7. システムがレガシーの Red Hat Classic 更新ソフトウェアを使用していないことを確認します。
    # migrate-rhs-classic-to-rhsm --status
    システムでこのレガシーソフトウェアを使用している場合、Red Hat Subscription Manager に移行し、移行の完了時にステータスが変更されていることを確認します。
    # migrate-rhs-classic-to-rhsm --rhn-to-rhsm
    # migrate-rhs-classic-to-rhsm --status
  8. 以下のコマンドを使用してサーバーを更新します。
    # yum update
    重要
    以下のコマンドを実行して、Red Hat Enterprise Linux 7 に nfs-ganesha-selinux をインストールします。
    # yum install nfs-ganesha-selinux
    以下のコマンドを実行して、Red Hat Enterprise Linux 8 に nfs-ganesha-selinux をインストールします。
       # dnf install glusterfs-ganesha
  9. ボリュームがシックプロビジョニングされ、スナップショットを使用する予定の場合は、以下の手順を実行してシンプロビジョニングされたボリュームに移行します。
    注記
    インサービスソフトウェアアップグレード時にシックプロビジョニングされたボリュームからシンプロビジョニングされたボリュームに移行するには、ブリックにあるデータに応じて長い時間がかかります。スナップショットを使用する予定がない場合は、この手順を省略できます。ただし、既存の環境でスナップショットを使用する場合は、オフラインでアップグレードする方法が推奨されます。オフラインアップグレードについての詳細は、「Red Hat Gluster Storage 3.5 へのオフラインアップグレード」を参照してください。
    インサービスソフトウェアアップグレードを使用してシックプロビジョニングされたボリュームからシンプロビジョニングされたボリュームに移行する前に、Red Hat サポート担当者にお問い合わせください。
    1. 以下のコマンドを実行して、ボリュームに関連付けられたブリックをすべてアンマウントします。
      # umount mount_point
    2. 以下のコマンドを実行して、ブリックに関連付けられた LVM を削除します。
      # lvremove logical_volume_name
      以下は例になります。
      # lvremove /dev/RHS_vg/brick1
    3. 以下のコマンドを実行してボリュームグループを削除します。
      # vgremove -ff volume_group_name
      以下は例になります。
      # vgremove -ff RHS_vg
    4. 以下のコマンドを実行して物理ボリュームを削除します。
      # pvremove -ff physical_volume
    5. 物理ボリューム (PV) が作成されていない場合は、以下のコマンドを実行して RAID 6 ボリュームの PV を作成します。それ以外の場合は、次の手順に進みます。
      # pvcreate --dataalignment 2560K /dev/vdb
      詳細は、『『Red Hat Gluster Storage 3.5 Administration Guide』』の「『Formatting and Mounting Bricks』」を参照してください。
    6. 以下のコマンドを実行して、PV から単一のボリュームグループを作成します。
      # vgcreate volume_group_name disk
      以下は例になります。
      # vgcreate RHS_vg /dev/vdb
    7. 以下のコマンドを使用して、シンプールを作成します。
      # lvcreate -L size --poolmetadatasize md_size --chunksize chunk_size -T pool_device
      以下は例になります。
      # lvcreate -L 2T --poolmetadatasize 16G --chunksize 256  -T /dev/RHS_vg/thin_pool
    8. 以下のコマンドを実行して、プールからシンボリュームを作成します。
      # lvcreate -V size -T pool_device -n thinvol_name
      以下は例になります。
      # lvcreate -V 1.5T -T /dev/RHS_vg/thin_pool -n thin_vol
    9. 以下のコマンドを実行して、新規ボリュームにファイルシステムを作成します。
      # mkfs.xfs -i size=512 thin_vol
      以下は例になります。
      # mkfs.xfs -i size=512 /dev/RHS_vg/thin_vol
      バックエンドがシンプロビジョニングされたボリュームに変換されるようになりました。
    10. シンプロビジョニングされたボリュームをブリックディレクトリーにマウントし、ブリックに拡張属性を設定します。以下は例になります。
      # setfattr -n trusted.glusterfs.volume-id \ -v 0x$(grep volume-id /var/lib/glusterd/vols/volname/info \ | cut -d= -f2 | sed 's/-//g') $brick
  10. glusterd を無効にします。
    # systemctl disable glusterd
    これにより、これがシステムの起動時に起動されるのを防ぐことができ、ノードがクラスターに再度参加する前に正常であることを確認できます。
  11. サーバーを再起動します。
    # shutdown -r now "Shutting down for upgrade to Red Hat Gluster Storage 3.5"
  12. 重要
    この手順は、直前の手順でシンプロビジョニングされたボリュームに移行した各シックプロビジョニングボリュームに対してのみ実行します。
    Automatic File Replication 拡張属性を別のノードから変更し、修復プロセスがレプリカサブボリュームのブリックからシンプロビジョニングされたブリックに対して実行されるようにします。
    1. FUSE マウントポイントを作成して、拡張属性を編集します。
      # mount -t glusterfs HOSTNAME_or_IPADDRESS:/VOLNAME /MOUNTDIR
    2. マウントポイントに新しいディレクトリーを作成し、この名前のディレクトリーがまだ存在していないことを確認します。
      # mkdir /MOUNTDIR/name-of-nonexistent-dir
    3. ディレクトリーを削除し、拡張属性を設定します。
      # rmdir /MOUNTDIR/name-of-nonexistent-dir
      # setfattr -n trusted.non-existent-key -v abc /MOUNTDIR
      # setfattr -x trusted.non-existent-key /MOUNTDIR
    4. レプリカのサブボリューム内のブリックの拡張属性がゼロ (zero) に設定されていないことを確認します。
      # getfattr -d -m. -e hex brick_path
      以下の例では、/dev/RHS_vg/brick2 の拡張属性である trusted.afr.repl3-client-1 はゼロ (zero) に設定されていません。
      # getfattr -d -m. -e hex /dev/RHS_vg/brick2
      getfattr: Removing leading '/' from absolute path names
      # file: /dev/RHS_vg/brick2
      trusted.afr.dirty=0x000000000000000000000000
      trusted.afr.repl3-client-1=0x000000000000000400000002
      trusted.gfid=0x00000000000000000000000000000001
      trusted.glusterfs.dht=0x000000010000000000000000ffffffff
      trusted.glusterfs.volume-id=0x924c2e2640d044a687e2c370d58abec9
  13. glusterd サービスを起動します。
    # systemctl start glusterd
  14. Red Hat Gluster Storage の最新バージョンにアップグレードしていることを確認します。
    # gluster --version
  15. すべてのブリックがオンラインであることを確認します。
    # gluster volume status
    以下は例になります。
    # gluster volume status
    Status of volume: r2
    
    Gluster process                                         Port    Online  Pid
    ------------------------------------------------------------------------------
    Brick 10.70.43.198:/brick/r2_0                          49152   Y       32259
    Brick 10.70.42.237:/brick/r2_1                          49152   Y       25266
    Brick 10.70.43.148:/brick/r2_2                          49154   Y       2857
    Brick 10.70.43.198:/brick/r2_3                          49153   Y       32270
    NFS Server on localhost                                 2049    Y       25280
    Self-heal Daemon on localhost                           N/A     Y       25284
    NFS Server on 10.70.43.148                              2049    Y       2871
    Self-heal Daemon on 10.70.43.148                        N/A     Y       2875
    NFS Server on 10.70.43.198                              2049    Y       32284
    Self-heal Daemon on 10.70.43.198                        N/A     Y       32288
    
    Task Status of Volume r2
    ------------------------------------------------------------------------------
    There are no active volume tasks
  16. ボリュームで自己修復を開始します。
    # gluster volume heal volname
  17. ボリューム上の自己修復が完了していることを確認します。
    # gluster volume heal volname info
    以下の例は、完了した自己修復操作を示しています。
     # gluster volume heal drvol info
    Gathering list of entries to be healed on volume drvol has been successful
    
    Brick 10.70.37.51:/rhs/brick1/dir1
    Number of entries: 0
    
    Brick 10.70.37.78:/rhs/brick1/dir1
    Number of entries: 0
    
    Brick 10.70.37.51:/rhs/brick2/dir2
    Number of entries: 0
    
    Brick 10.70.37.78:/rhs/brick2/dir2
    Number of entries: 0
  18. 共有ストレージがマウントされていることを確認します。
    # mount | grep /run/gluster/shared_storage
  19. このノードが NFS-Ganesha クラスターの一部である場合は、以下を実行します。
    1. システムが SELinux により管理されている場合は、ganesha_use_fusefs のブール値を on に設定します。
      # setsebool -P ganesha_use_fusefs on
    2. NFS-Ganesha サービスを起動します。
      # systemctl start nfs-ganesha
    3. クラスターを有効にし、起動します。
      # pcs cluster enable
      # pcs cluster start
    4. ノードをスタンバイモードからリリースします。
      # pcs node unstandby
    5. pcs クラスターが実行されており、ボリュームがアップグレード後に正しくエクスポートされていることを確認します。
      # pcs status
      # showmount -e
      上記の手順を実施した後、NFS-ganesha は短い猶予期間に入ります。I/O 操作はこの猶予期間に停止します。ganesha.log ファイルに NFS Server Now NOT IN GRACE が表示されるのを確認してから続行します。
  20. オプションで、システムの起動時に glusterd サービスが起動するようにします。
    # systemctl enable glusterd
  21. レプリカのペアの他のノードで上記の手順を繰り返します。分散レプリケーションの設定の場合、すべてのレプリカのペアで上記の手順を繰り返します。
  22. 重要
    RHEL 8.3 から RHEL 8.4 に更新している場合は、以下の追加手順に従います。
    1. /etc/corosync/corosync.conf から token: 3000 行を削除して、totem-token タイムアウトを元の値に復元します。
    2. `pcs cluster sync` を実行します。すべてのノードで /etc/corosync/corosync.conf に新しい token: 3000 行があることを確認するのは任意で行います。
    3. `pcs cluster reload corosync` を実行します。
    4. `corosync-cmapctl | grep totem.token` を実行して変更を確認します。
  23. すべてのノードがアップグレードされたら、以下のコマンドを実行してクラスターの op-version を更新します。これにより、クラスター内の互換性の問題を防ぐことができます。
    # gluster volume set all cluster.op-version 70200
    注記
    70200 は、Red Hat Gluster Storage 3.5 の cluster.op-version 値です。Ater は cluster-op バージョンをアップグレードするため、指定したコマンドを使用してボリュームの詳細なエントリー修復を有効にします。
    gluster volume heal $VOLNAME granular-entry-heal enable
    この機能は、Red Hat Gluster Storage 3.5 へのアップグレード後にデフォルトで有効になりましたが、op-version を増やした後にのみ有効になります。他のバージョンの正しいcluster.op-version 値については、「Red Hat Gluster Storage のソフトウェアコンポーネントおよびバージョン」 を参照してください。
    注記
    スナップショットを有効にする必要がある場合は、『『Red Hat Gluster Storage 3.5 Administration Guide』』の「Managing Snapshots」を参照してください。
    重要
    TLS/SSL を使用したネットワーク暗号化が有効になっている Red Hat Gluster Storage ノードを更新する場合は、クライアント側で Red Hat Gluster Storage ボリュームを再マウントします。詳細は、『Red Hat Gluster Storage でのネットワーク暗号化の設定』 を参照してください。
  24. アップグレード前にクライアント側のクォーラが無効にされている場合は、以下のコマンドを実行してこれをアップグレードします。
    # gluster volume set volname cluster.quorum-type auto
  25. ダミーノードを以前に作成している場合は、以下のコマンドを実行してそのノードの割り当てを解除します。
    # gluster peer detach <dummy_node name>
  26. アップグレード前にマスターとスレーブ間の geo レプリケーションセッションが無効になっている場合は、メタボリュームを設定してセッションを再起動します。
    1. 以下のコマンドを実行します。
      # gluster volume set all cluster.enable-shared-storage enable
    2. root 以外のユーザーを使用して geo レプリケーションを実行する場合は、プライマリースレーブでこのコマンドを実行して、root 以外のグループのパーミッションを設定します。
      # gluster-mountbroker setup <mount_root> <group>
    3. 以下のコマンドを実行します。
      # gluster volume geo-replication Volume1 example.com::slave-vol config use_meta_volume true
    4. 以下のコマンドを実行します。
      # gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL start
  27. イレイジャーコード化(分散した)ボリュームをアップグレードするために、disperse.optimistic-change-logdisperse.eager-lock、および disperse.other-eager-lock オプションを無効にした場合は、再度有効にします。
    # gluster volume set volname disperse.optimistic-change-log on
    # gluster volume set volname disperse.eager-lock on
    # gluster volume set volname disperse.other-eager-lock on

5.2.4. インサービスソフトウェアアップグレードに関する特別な考慮事項

以下のセクションでは、CTDB 設定のインサービスソフトウェアアップグレード手順について説明します。
注記
オフラインモードのみがサポートされます。

5.2.4.1. ネイティブクライアントのアップグレード

すべてのクライアントは、同じバージョンの glusterfs-fuse を使用する必要があります。Red Hat では、クライアントをアップグレードする前にサーバーをアップグレードすることを強く推奨します。Red Hat Gluster Storage 3.1 Update 2 以前からアップグレードする場合は、サーバーとクライアントを同時にアップグレードする必要があります。ネイティブクライアントのアップグレードに関する詳細は、以下の手順を参照してください。
ネイティブクライアントを更新する前に、 セクション 6.2.1 Installing Native Client に記載されているチャンネルにクライアントをサブスクライブします。
警告
Red Hat Gluster Storage 3.1.3 以降を使用してサーバーが提供するボリュームにアクセスする場合は、クライアントが Red Hat Gluster Storage 3.1.3 以降も使用している必要があります。以前のクライアントのバージョンからこれらのボリュームにアクセスすると、データが利用不可となり、ディレクトリー操作に関する問題が生じる可能性があります。この要件は Red Hat Gluster Storage 3.1.3 が Distributed Hash Table が機能する方法を変更したために存在します。これは、ディレクトリーの整合性を改善し、この変更による影響を取り除くことを目的としています。
  1. gluster ボリュームをアンマウントします。

    ネイティブクライアントをアップグレードする前に、gluster ボリュームをアンマウントします。
    # umount /mnt/glusterfs
  2. クライアントをアップグレードします。

    yum update コマンドを実行して、ネイティブクライアントをアップグレードします。
    # yum update glusterfs glusterfs-fuse
  3. gluster ボリュームを再マウントします。

    セクション 6.2.3 Mounting Red Hat Gluster Storage Volumes で説明されているようにボリュームを再マウントします。

5.3. RHGS 3.5.z マイナーバージョンの更新

RHEL 7 および RHEL 8 での RHGS 3.5.z マイナーバージョンの更新については、Red Hat Gluster Storage 3.4 から Red Hat Gluster Storage 3.5 へのインサービスソフトウェアアップグレード のセクション 5.2 で説明されている手順を実行してください。
注記
カーネルを更新する場合は、ソフトウェア更新が完了した後にホストを再起動するようにしてください。

第6章 Red Hat Gluster Storage の Red Hat Enterprise Linux 7 へのアップグレード

重要
RHEL 8 は、Red Hat Gluster Storage 3.5.2 の新規インストールについてのみサポートされています。RHEL 8 ベースの Red Hat Gluster Storage 3.5.2 へのアップグレードはサポートされていません。Red Hat Gluster Storage は 3.5 Batch Update 1 以降では、Red Hat Enterprise Linux 6 (RHEL 6) でサポートされません。表1.3「バージョンの詳細」を参照してください。
Red Hat Enterprise Linux 6 ベースの Red Hat Gluster Storage から Red Hat Enterprise Linux 7 ベースの Red Hat Gluster Storage にアップグレードする前提条件は以下のようになります。
  • RHEL6 チャンネルのサブスクリプションが必要です。
  • クライアントをアップグレードする前にサーバーをアップグレードします。
Red Hat Enterprise Linux 6 から Red Hat Enterprise Linux 7 へのアップグレード手順はオフラインの手順ですが、アップグレードプロセスの実行時にボリュームがオフラインであることから Gluster ノードのダウンタイムが発生します。

6.1. アップグレードのためのシステムの準備

重要
システムが Red Hat Subscription Manager ですでに登録されている場合は、登録の手順を省略し、Gluster 設定ファイルのバックアップを開始します。
  1. Red Hat Network Classic から Red Hat Subscription Manager に移行します。

    システムがレガシーの Red Hat Network Classic 更新システムにないことを確認します。
    # migrate-rhs-classic-to-rhsm --status
    システムが Red Hat Network Classic にある場合は、「Migrating from RHN to RHSM in Red Hat Enterprise Linux」を参照して Red Hat Subscription Manager に移行します。
  2. システムを Red Hat Subscription Manager に登録します。

    システムを Red Hat Network に登録するには、以下のコマンドを実行します。Red Hat Enterprise Linux のエンタイトルメントを持つ Red Hat Network のユーザー名とパスワードを入力します。
    # subscription-manager register --username=user_name --password=password
  3. 利用可能なエンタイトルメントプールを特定します。

    Red Hat Enterprise Linux 6 リポジトリーを含むエンタイトルメントプールを見つけます。
    # subscription-manager list --available
  4. エンタイトルメントプールをシステムに割り当てます。

    プール ID を使用して、Red Hat Enterprise Linux 6 のエンタイトルメントをアタッチします。
    # subscription-manager attach --pool=pool_ID
  5. リポジトリーを有効にします。

    Red Hat Enterprise Linux 6、スケーラブルなファイルシステムおよび Red Hat Gluster Storage リポジトリーを有効にします。
    # subscription-manager repos --enable=rhel-6-server-rpms --enable=rhel-scalefs-for-rhel-6-server-rpms --enable=rhs-3-for-rhel-6-server-rpms
  6. Gluster 設定ファイルをバックアップします。

    注記
    システムを更新する前に、完全なバックアップを作成することが推奨されます。実行できる方法を確認するには、https://access.redhat.com/solutions/1484053を参照してください。
    1. 以下の設定ディレクトリーとファイルがバックアップされていることを確認します。
      • /var/lib/glusterd
      • /etc/glusterfs
    2. samba-ctdb が有効にされたシステムの場合は、バックアップを保存する新しいディレクトリーを作成します。
      # mkdir backup_folder_name
      # cd backup_folder_name
    3. 以下のコマンドを実行して、samba-ctdb データのバックアップを作成します。
      for each in `ctdb getdbmap | grep PERSISTENT | cut -d" " -f2 | cut -d":" -f2`; do echo $each ; ctdb backup_folder_name $each ${each}.bak; done
  7. すべての Gluster サービス、ボリューム、およびプロセスを停止します。

    1. geo レプリケーションセッションを停止します。
      # gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL stop
    2. すべてのボリュームを停止します。
      # for vol in `gluster volume list`; do gluster --mode=script volume stop $vol; sleep 2s; done
    3. Gluster プロセスを停止します。
      # service glusterd stop
      # pkill glusterfs
      # pkill glusterfsd
    4. samba-ctdb が有効にされているシステムの場合は、CTDB サービスを停止します。
      # service ctdb stop
  8. システムの更新

    システムを Red Hat Enterprise Linux 6 の最新のマイナーバージョンに更新します。
    # yum update
  9. 再起動

    システムを再起動します。
    # reboot
  10. バージョン番号を確認します。

    更新した Red Hat Enterprise Linux 6 システムの現行のバージョン番号を確認します。
    # cat /etc/redhat-release
    バージョン番号が 6.10 であることを確認します。

6.2. システム評価の実行

  1. preupgrade-assistant のインストール

    preupgrade-assistant は、既存の Red Hat Enterprise Linux 6 システムをスキャンし、アップグレードする準備ができているかどうかを確認するツールです。
    以下のコマンドを使用して、必要なリポジトリーにサブスクライブし、preupgrade-assistant ツールをインストールします。
    # subscription-manager repos --enable rhel-6-server-extras-rpms --enable rhel-6-server-optional-rpms
    # yum install preupgrade-assistant preupgrade-assistant-el6toel7
  2. preupgrade ツールを実行します。

    preupgrade ツールを起動します。
    # preupg -v
  3. 結果を評価します。

    1. ブラウザーで preupgrade ツールの結果を表示します。
      /root/preupgrade/result.html
    2. Failed および Needs Action とマークされているすべてのコンポーネントを書き留めます。
    3. アップグレードプロセスを支援する Red Hat のマネージメントにハイライトを共有してください。
  4. Red Hat Enterprise Linux 7 で SELinux ポリシーを確認します。

    SELinux ポリシーは、Red Hat Enterprise Linux 6 と Red Hat Enterprise Linux 7 の間で変更されています。Red Hat Enterprise Linux 7 で機能している SELinux ポリシーの場合は、以下のコマンドを実行します。
    # semodule -r sandbox
  5. クラスターおよび HA 関連パッケージのアンインストール

    システムにインストールされているクラスターおよび HA 関連のパッケージについては、移行ができません。
    以下のコマンドを実行して、クラスターおよび HA 関連パッケージをアンインストールします。
    # yum remove modcluster ricci openais corosync

6.3. Red Hat Enterprise Linux 6.X から Red Hat Enterprise Linux 7.X へのアップグレード

  1. 移行ツールのインストール

    # yum install redhat-upgrade-tool
    # yum install yum-utils
  2. すべてのリポジトリーを無効にします

    有効にされているすべてのリポジトリーを無効にします。
    # yum-config-manager --disable \*
  3. オペレーティングシステムを ISO ファイルとしてダウンロード

    以下のオペレーティングシステムのいずれかについて、最新の ISO ファイルをダウンロードする以下の手順を実行します。

    Red Hat Enterprise Linux 7 ベースの Red Hat Gluster Storage 3.5

    1. Red Hat カスタマーポータル (https://access.redhat.com/login) にアクセスし、ユーザー名およびパスワードを入力してログインします。
    2. Downloads をクリックし、Software & Download Center に移動します。
    3. Red Hat Gluster Storage をクリックします。
    4. Version ドロップダウンメニューから 3.5 for RHEL 7 (latest) を選択します。
      重要
      Red Hat Gluster Storage 3.5 にアップグレードする場合は、バージョン 3.4 for RHEL 7 を選択します。Bug 1762637 は、この時点で Preupgrade Assistant が Red Hat Enterprise Linux 7.6 へのアップグレードのみを許可することを示しています。
    5. RHEL 7 インストール DVD の Red Hat Gluster Storage Server 3.5 の横にある Download Now をクリックします。

    Red Hat Enterprise Linux 7

    1. Red Hat カスタマーポータル (https://access.redhat.com/login) にアクセスし、ユーザー名およびパスワードを入力してログインします。
    2. Downloads をクリックし、Software & Download Center に移動します。
    3. Red Hat Enterprise Linux の横にある Versions 7 and below をクリックします。
    4. Version ドロップダウンメニューから 7.x (latest) を選択します。
      重要
      Red Hat Gluster Storage 3.5 にアップグレードする場合は、バージョン 7.6 を選択します。Bug 1762637 は、この時点で Preupgrade Assistant が Red Hat Enterprise Linux 7.6 へのアップグレードのみを許可することを示しています。
    5. Red Hat Enterprise Linux 7.x Binary DVD の横にある Download Now をクリックします。
  4. ISO を使用した Red Hat Enterprise Linux 7 へのアップグレード

    Red Hat アップグレードツールを使用して Red Hat Enterprise Linux 7 にアップグレードし、アップグレードプロセスの完了後に再起動します。
    # redhat-upgrade-tool --iso ISO_filepath --cleanup-post
    # reboot
    重要
    アップグレードプロセスは、システムの設定およびデータ量に応じて時間がかかります。

6.4. Red Hat Gluster Storage 3.5 へのアップグレード

  1. すべてのリポジトリーを無効にします

    # subscription-manager repos --disable=’*’
  2. Red Hat Enterprise Linux 7 チャンネルのサブスクライブ

    # subscription-manager repos --enable=rhel-7-server-rpms
  3. 古い Red Hat Enterprise Linux 6 パッケージの確認

    アップグレード後に古い Red Hat Enterprise Linux 6 パッケージの有無を確認します。
    # rpm -qa | grep el6
    重要
    この出力で、Red Hat Enterprise Linux 6 バリアントのパッケージが一覧表示される場合は、これらのパッケージの処理について Red Hat サポートにお問い合わせください。
  4. 更新および再起動

    Red Hat Enterprise Linux 7 パッケージを更新し、再起動します。
    # yum update
    # reboot
  5. バージョン番号を確認します。

    'redhat-release' ファイルを表示する際に、Red Hat Enterprise Linux 6 の最新バージョンが表示されることを確認します。
    # cat /etc/redhat-release
  6. 必要なチャンネルにサブスクライブします。

    1. Gluster チャネルにサブスクライブします。
      # subscription-manager repos --enable=rh-gluster-3-for-rhel-7-server-rpms
    2. Samba を使用する場合は、そのリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-7-server-rpms
    3. NFS-Ganesha を使用する場合は、そのリポジトリーを有効にします。
      # subscription-manager repos --enable=rh-gluster-3-nfs-for-rhel-7-server-rpms --enable=rhel-ha-for-rhel-7-server-rpms
    4. gdeploy を使用する場合は、Ansible リポジトリーを有効にします。
      # subscription-manager repos --enable=rhel-7-server-ansible-2-rpms
  7. Gluster のインストールおよび更新

    1. Red Hat Enterprise Linux 7 ISO を使用している場合は、以下のコマンドを使用して Red Hat Gluster Storage 3.5 をインストールします。
      # yum install redhat-storage-server
      これは、Red Hat Enterprise Linux 7 をベースとして Red Hat Gluster Storage 3.5 ISO を使用している場合はすでにインストールされています。
    2. 以下のコマンドを使用して、Red Hat Gluster Storage を最新のパッケージに更新します。
      # yum update
  8. インストールおよび更新の確認

    1. 更新した Red Hat Gluster Storage システムの現行バージョンの番号を確認します。
      # cat /etc/redhat-storage-release
      重要
      バージョン番号は 3.5 である必要があります。
    2. Red Hat Enterprise Linux 6 パッケージが存在しないことを確認します。
      # rpm -qa | grep el6
      重要
      この出力で、Red Hat Enterprise Linux 6 バリアントのパッケージが一覧表示される場合は、これらのパッケージの処理について Red Hat サポートにお問い合わせください。
  9. ファイアウォールのインストールおよび設定

    1. 以下のコマンドを使用して、ファイアウォールデーモンをインストールし、起動します。
      # yum install firewalld
      # systemctl start firewalld
    2. Gluster プロセスをファイアウォールに追加します。
      # firewall-cmd --zone=public --add-service=glusterfs --permanent
    3. 必要なサービスおよびポートを firewalld に追加します。詳細は、「Considerations for Red Hat Gluster Storage」を参照してください。
    4. 以下のコマンドを使用してファイアウォールを再読み込みします。
      # firewall-cmd --reload
  10. Gluster プロセスの開始

    1. glusterd プロセスを開始します。
      # systemctl start glusterd
  11. Gluster op-version の更新

    以下のコマンドを使用して Gluster op-version を必要な番号の大きいバージョンに更新します。
    # gluster volume get all cluster.max-op-version
    # gluster volume set all cluster.op-version op_version
    注記
    70200 は、Red Hat Gluster Storage 3.5 の cluster.op-version 値です。Ater は cluster-op バージョンをアップグレードするため、指定したコマンドを使用してボリュームの詳細なエントリー修復を有効にします。
    gluster volume heal $VOLNAME granular-entry-heal enable
    この機能は、Red Hat Gluster Storage 3.5 へのアップグレード後にデフォルトで有効になりましたが、op-version を増やした後にのみ有効になります。他のバージョンの正しいcluster.op-version 値については、「Red Hat Gluster Storage のソフトウェアコンポーネントおよびバージョン」 を参照してください。
  12. Samba および CTDB の設定

    Red Hat Enterprise Linux 6 の Gluster 設定に Samba と CTDB が設定されている場合は、更新された Red Hat Enterprise Linux 7 システムで以下が利用できるはずです。
    • CTDB ボリューム
    • /etc/ctdb/nodes ファイル
    • /etc/ctdb/public_addresses ファイル
    Samba および CTDB を再設定するには、以下の手順を実行します。
    1. Samba のファイアウォールを設定します。
      # firewall-cmd --zone=public  --add-service=samba --permanent
      # firewall-cmd --zone=public  --add-port=4379/tcp --permanent
    2. Samba チャンネルにサブスクライブします。
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-7-server-rpms
    3. Samba を最新のパッケージに更新します。
      # yum update
    4. CTDB で Samba を設定します。詳細は、「Setting up CTDB for Samba」の「 『Configuring CTDB on Red Hat Gluster Storage Server』」を参照してください。ボリュームの作成は省略する必要があります。アップグレード後に存在するボリュームはアップグレード後も永続化するためです。
    5. 以下のファイルで、ステートメント META="all"all をボリューム名に置き換えます。
      /var/lib/glusterd/hooks/1/start/post/S29CTDBsetup.sh
      /var/lib/glusterd/hooks/1/stop/pre/S29CTDB-teardown.sh
      たとえば、ボリューム名は ctdb_volname であり、ファイル内の META="all"META="ctdb_volname" に変更される必要があります。
    6. 以下のコマンドを使用して CTDB ボリュームを再起動します。
      # gluster volume stop volume_name
      # gluster volume start volume_name
    7. CTDB プロセスを開始します。
      # systemctl start ctdb
    8. 必要に応じて Samba でボリュームを共有します。「Sharing Volumes over SMB」を参照してください。
  13. ボリュームと geo レプリケーションの開始

    1. 以下のコマンドを使用して、必要なボリュームを起動します。
      # gluster volume start volume_name
    2. meta-volume をマウントします。
      # mount /var/run/gluster/shared_storage/
      注記
      3.5 Batch Update 3 のリリースにより、共有ストレージのマウントポイントが /var/run/gluster/ から /run/gluster/ に変更されました。
      このコマンドが機能しない場合は、/etc/fstab ファイルの内容を確認し、共有ストレージのエントリーが正しく設定されていることを確認し、mount コマンドを再実行します。/etc/fstab ファイルのメタボリュームの行は以下のようになります。
      hostname:/gluster_shared_storage   /var/run/gluster/shared_storage/   glusterfs   defaults   0 0
    3. geo レプリケーションセッションを復元します。
      # gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL start
      geo レプリケーションについての詳細は、「Preparing to Deploy Geo-replication」を参照してください。

第7章 Red Hat Enterprise Virtualization-Red Hat Gluster Storage 環境における Red Hat Gluster Storage 3.4 から Red Hat Gluster Storage 3.5 へのアップグレード

本セクションでは、Red Hat Gluster Storage と Red Hat Enterprise Virtualization の統合環境のアップグレード方法について説明します。ISO または yum を使用して、Red Hat Gluster Storage 3.4 を Red Hat Gluster Storage 3.5 にアップグレードできます。
警告
アップグレードする前に、Red Hat Gluster Storage 3.1.3 の後のバージョンに変更された要件があるかどうかを注意して確認してください。Red Hat Gluster Storage 3.1.3 以降のサーバーが提供するボリュームにアクセスする場合は、クライアントが Red Hat Gluster Storage 3.1.3 以降も使用している必要があります。他のクライアントのバージョンからボリュームにアクセスすると、データが利用不可となり、ディレクトリー操作に関する問題が生じる可能性があります。この要件は Red Hat Gluster Storage 3.1.3 に Distributed Hash Table の機能に影響を与える多数の変更が含まれるために存在します。これは、ディレクトリーの整合性を改善し、BZ#1115367 および BZ#1118762 に示される影響を取り除くことを目的としています。
重要
RHEL 8 は、Red Hat Gluster Storage 3.5.2 の新規インストールについてのみサポートされています。RHEL 8 ベースの Red Hat Gluster Storage 3.5.2 へのアップグレードはサポートされていません。
重要
Red Hat Enterprise Linux 7 ベースの Red Hat Gluster Storage では、3.1 以上に更新するとファイアウォールのルールが再度読み込まれます。リロード前のランタイムのみの変更はすべて失われます。

7.1. 前提条件

  • 自己修復操作が進行中でないことを確認します。
    # gluster volume heal volname info
  • 以下のコマンドを実行して、 Glusterfs Storage Domain に対応する gluster ボリュームで保留状態の自己修復がないことを確認します。
    # gluster volume heal volname info summary

7.2. インサービス統合環境のアップグレード

以下の手順に従って、オンラインおよびインサービスの統合 Red Hat Virtualization および Red Hat Gluster Storage 環境をアップグレードします。
  1. Red Hat Gluster Storage ノードをアップグレードします。

    Red Hat Gluster Storage ノードごとに、一度に 1 つのノードに対して以下の手順を実行します。レプリカセットが複数ある場合は、別のレプリカセットに移動する前に、レプリカセットの各ノードをアップグレードします。
    1. アップグレードするストレージノードのすべての gluster サービスを、ノード上で以下のコマンドを root ユーザーで実行して停止します。
      # systemctl stop glusterd
      # pkill glusterfs
      # pkill glusterfsd
      # pgrep gluster
    2. 管理ポータルで StorageHosts をクリックし、アップグレードするストレージノードを選択します。
    3. ManagementMaintenance の順にクリックし、OK をクリックします。
    4. ストレージノードを再起動します。
    5. 管理ポータルで StorageHosts をクリックし、ストレージノードを選択します。
    6. ManagementActivate をクリックします。
    7. ストレージノードの名前 → Bricks をクリックし、すべてのブリックの Self-Heal Info 列が OK として一覧表示されていることを確認してから次のストレージノードをアップグレードします。
  2. Gluster クライアントソフトウェアを仮想化ホストでアップグレードします。

    すべてのストレージノードをアップグレードした後に、クライアントソフトウェアをすべての仮想化ホストで更新します。
    1. Red Hat Virtualization ホストの場合

      1. 管理ポータルで ComputeHosts をクリックし、更新するノードを選択します。
      2. 4.2 よりも前の Red Hat Virtualization バージョンでは、ManagementMaintenance をクリックし、OK をクリックします。
      3. InstallationUpgrade をクリックし、 OK をクリックします。
        ノードは最新パッケージで自動的に更新され、更新の完了時に再度アクティブになります。
    2. Red Hat Enterprise Linux ホストの場合

      1. 管理ポータルで ComputeHosts をクリックし、更新するノードを選択します。
      2. ManagementMaintenance の順にクリックし、OK をクリックします。
      3. ホストを正しいリポジトリーにサブスクライブし、更新を受信します。
      4. ホストを更新します。
        # yum update
      5. 管理ポータルで ManagementActivate をクリックします。

7.3. オフライン統合環境のアップグレード

以下の手順に従って、オフラインおよびサービス停止状態の Red Hat Virtualization および Red Hat Gluster Storage 環境をアップグレードします。

7.3.1. ISO を使用したアップグレード

  1. Red Hat Enterprise Virtualization Manager を使用して、仮想マシンインスタンスをすべて停止します。
    インスタンス上の Red Hat Gluster Storage ボリュームは、アップグレード時に停止します。
  2. Red Hat Enterprise Virtualization Manager を使用して、データセンターのデータドメインを メンテナンス モードに切り替えます。
  3. Red Hat Enterprise Virtualization Manager を使用して、データセンター内の Red Hat Gluster Storage ノードを含むボリューム (データドメインに使用されるボリューム) を停止します。
  4. Red Hat Enterprise Virtualization Manager を使用して、すべての Red Hat Gluster Storage ノードを メンテナンス モードに切り替えます。
  5. 「ISO を使用してアップグレードするためのリポジトリーの設定」セクションで説明されているように ISO アップグレードを実行します。
  6. Red Hat Enterprise Virtualization Manager から Red Hat Gluster Storage ノードを再インストールします。
    注記
    • Red Hat Gluster Storage ノードの再インストールは、Red Hat Enterprise Virtualization Manager から行う必要があります。新たにアップグレードした Red Hat Gluster Storage 3.5 ノードは、Red Hat Enterprise Virtualization Manager にノードを追加する際に実行されたファイアウォール設定などの、ネットワーク設定やその他の設定の詳細を失います。ブートストラップを実行するために、Red Hat Gluster Storage ノードを再インストールします。
    • 図7.1「アップグレード前の Red Hat Gluster Storage ノード 」で説明されているように、Action Items で指定されるオプションを使用して Red Hat Gluster Storage ノードを再設定し、ブートストラップを実行できます。

    図7.1 アップグレード前の Red Hat Gluster Storage ノード

    アップグレード前の Red Hat Gluster Storage ノード
  7. すべての Red Hat Gluster Storage ノードで上記のステップを実行します。
  8. すべてのノードについて、Red Hat Enterprise Virtualization Manager で Up ステータスが確認されたら、ボリュームを起動します。
  9. 使用しているハイパーバイザーに応じて、Red Hat Enterprise Linux 6 または Red Hat Enterprise Linux 7 のネイティブクライアントの部分をアップグレードします。
    注記
    Red Hat Enterprise Virtualization Hypervisor をハイパーバイザーとして使用する場合は、最新のネイティブクライアントを含む Red Hat Enterprise Virtualization Hypervisor の適切なビルドをインストールします。

    図7.2 アップグレード後の Red Hat Gluster Storage ノード

    アップグレード後の Red Hat Gluster Storage ノード
  10. Red Hat Enterprise Virtualization Manager を使用して、データドメインをアクティブにし、データセンター内のすべての仮想マシンインスタンスを起動します。

7.3.2. yum を使用したアップグレード

  1. Red Hat Enterprise Virtualization Manager を使用して、データセンター内のすべての仮想マシンインスタンスを停止します。
  2. Red Hat Enterprise Virtualization Manager を使用して、gluster ボリュームがサポートするデータドメインを メンテナンス モードに切り替えます。
  3. Red Hat Enterprise Virtualization Manager を使用して、すべての Red Hat Gluster Storage ノードを メンテナンス モードに切り替えます。
  4. Red Hat Gluster Storage ノードを再起動したら、Red Hat Enterprise Virtualization Manager を使用して Activate を実行します。
    注記
    ISO のアップグレードとは異なり、アップグレード前に行われたネットワーク設定およびブートストラップ設定は保持されるため、Red Hat Gluster Storage ノードの再インストールが必要です。
  5. Red Hat Enterprise Virtualization Manager を使用してボリュームを起動します。
  6. 使用する Red Hat Enterprise Linux サーバーハイパーバイザーに基づいて、Red Hat Enterprise Linux 6 または Red Hat Enterprise Linux 7 のネイティブクライアントの部分をアップグレードします。
    注記
    Red Hat Enterprise Virtualization Hypervisor をハイパーバイザーとして使用する場合は、最新バージョンの Red Hat Gluster Storage ネイティブクライアントを含む Red Hat Enterprise Virtualization Hypervisor を再インストールします。
  7. データドメインをアクティベートし、すべての仮想マシンインスタンスを起動します。

第8章 SELinux の有効化

Red Hat Gluster Storage 3.x にアップグレードした後に、以下で SELinux サポートについて説明されている手順に従います。この手順は必須ではなく、SELinux サポートが必要な場合にのみ必要になります。
この手順は、selinux-policy-targeted、selinux-policy、libselinux、Red Hat Enterprise Linux 8(RHEL 8)のpython3-libselinuxパッケージが提供するlibselinux-python、libselinux-utils、policycoreutils、RHEL8のpolicycoreutils-python-utils および python3-policycoreutilsに置き換えられるpolicycoreutils-python、setroubleshoot、setroubleshoot-server、setroubleshoot-pluginsパッケージがインストールされます。パッケージがインストールされていることを確認するには、以下のコマンドを使用します。
# rpm -q package_name
重要
システムが最初に SELinux(とくに selinux-policy パッケージ) なしでインストールされている場合は、SELinux を有効にするために追加の手順が必要になります。システムの起動時に SELinux が初期化されるようにするには、dracut ユーティリティーを実行して、SELinux を initramfs ファイルシステムに認識させる必要があります。そうしない場合には、SELinux はシステムの起動時に起動しません。
  1. SELinux を有効にする前に、ファイルシステムの各ファイルに SELinux コンテキストでラベル付けする必要があります。その前に、制限のあるドメインではアクセスが拒否され、システムが正常に起動しなくなる可能性があります。これを防ぐには、/etc/selinux/configSELINUX=permissive を設定します。
    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #       enforcing - SELinux security policy is enforced.
    #       permissive - SELinux prints warnings instead of enforcing.
    #       disabled - No SELinux policy is loaded.
    SELINUX=permissive
    # SELINUXTYPE= can take one of these two values:
    #       targeted - Targeted processes are protected,
    #       mls - Multi Level Security protection
    SELINUXTYPE=targeted
  2. Linux の root ユーザーとして、システムを再起動します。次回の起動時に、ファイルシステムにラベルが付けられます。ラベルプロセスでは、各ファイルに SELinux コンテキストのラベルを付けます。
    *** Warning -- SELinux targeted policy relabel is required.
    *** Relabeling could take a very long time, depending on file
    *** system size and speed of hard drives.
    ****
    一番下の行にある * (アスタリスク)文字は、ラベル付けされている 1000 ファイルを表します。上記の例では、4 つの * 文字は 4000 ファイルにラベルが付けられていることを表します。すべてのファイルにラベルを付けるのにかかる時間は、システムのファイル数とハードドライブの速度によって異なります。最新のシステムでは、このプロセスに 10 分程度かかる場合があります。
  3. Permissive モードでは、SELinux ポリシーは実行されませんが、Enforcing モードで拒否された可能性のあるアクションについての拒否メッセージがログに記録されます。Linux の root ユーザーとして Enforcing モードに切り換える前に、以下のコマンドを実行して、SELinux が最後の起動時にアクションを拒否していないことを確認します。
    # grep "SELinux is preventing" /var/log/messages
    SELinux が最後の起動時にアクションを拒否しなかった場合、このコマンドは出力を返しません。
  4. /var/log/messages に拒否メッセージがない場合は、/etc/selinux/config に SELINUX=enforcing を設定します。
    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #       enforcing - SELinux security policy is enforced.
    #       permissive - SELinux prints warnings instead of enforcing.
    #       disabled - No SELinux policy is loaded.
    SELINUX=enforcing
    # SELINUXTYPE= can take one of these two values:
    #       targeted - Targeted processes are protected,
    #       mls - Multi Level Security protection.
    SELINUXTYPE=targeted
  5. システムを再起動します。再起動後に、getenforce が Enforcing を返すことを確認します。
    ~]$ getenforce
    Enforcing
REHL 7 での SELINUX の状態およびモードの変更についての詳細は、『『SELinux User's and Adminstrator's Guide』』の「『Permanent Changes in SELINUX States and Modes』」を参照してください。
REHL 8 での SELINUX のステータスおよびモードの変更に関する詳細は、『『Using SELinux』』の「『Permanent Changes in SELINUX States and Modes』」を参照してください。

第9章 Gluster コマンドラインインターフェースの使用

Gluster コマンドラインインターフェース(CLI) は、ストレージ環境の設定および管理を簡素化します。Gluster CLI は LVM(論理ボリュームマネージャー)CLI または Mouse CLI と似ていますが、複数のストレージサーバー間で動作します。Gluster CLI は、ボリュームがマウントされている場合 (アクティブ) とマウントされていない場合 (非アクティブ)に使用できます。Red Hat Gluster Storage は、すべてのサーバーでボリューム設定情報を自動的に同期します。
Gluster CLI を使用して、新規ボリュームの作成、既存ボリュームの起動および停止、ボリュームへのブリックの追加、ボリュームからのブリックの削除、およびトランスレーター設定の変更を実行します。さらに、Gluster CLI コマンドは自動化スクリプトを作成し、コマンドを API として使用して、サードパーティーのアプリケーションとの統合を可能にします。
注記
CLI コマンドに --mode=script を追加すると、確認プロンプトなしにコマンドを実行できます。

Gluster CLI の実行

コマンドを呼び出すか、対話モードで Gluster CLI を実行して、任意の Red Hat Gluster Storage Server で Gluster CLI を実行します。gluster コマンドは、SSH 経由でリモートで使用できます。

COMMAND を必要なコマンドに置き換えた後に、以下のようにコマンドを直接実行します。
# gluster COMMAND
以下は、peer status コマンドを使用した例です。
# gluster peer status

Gluster CLI 対話モード

以下のコマンドを使用して、Gluster CLI を対話モードで実行することもできます。

# gluster
正常に実行されると、プロンプトが以下のように変更されます。
gluster>
プロンプトが表示されたら、以下のように CLI プロンプトで gluster コマンドを実行します。
gluster> COMMAND
たとえば、COMMANDpeer status などのコマンドに置き換え、ピアサーバーのステータスを表示します。
  1. Gluster CLI の対話モードを開始します。
    # gluster
  2. ピアサーバーの状態を要求します。
    gluster> peer status
  3. ピアサーバーのステータスが表示されます。
以下の例では、COMMANDhelp などのコマンドに置き換えて、gluster のヘルプオプションを表示します。
  1. Gluster CLI の対話モードを開始します。
    # gluster
  2. ヘルプオプションを要求します。
    gluster> help
  3. gluster コマンドおよびオプションの一覧が表示されます。

付録A 改訂履歴

改訂履歴
改訂 3.5-0Wed Oct 30 2019Red Hat Gluster Storage Documentation Team
Red Hat Gluster Storage 3.5 のドキュメントを更新。