11.5. スタンドアロン CephFS/NFS cluster for HA のアップグレード
ストレージ管理者は、既存の NFS サービスに ingress
サービスをデプロイすることで、スタンドアロンストレージクラスターを高可用性 (HA) クラスターにアップグレードできます。
前提条件
- 既存の NFS サービスを備えた実行中の Red Hat Ceph Storage クラスター。
- ホストがクラスターに追加されている。
- すべてのマネージャー、モニター、および OSD デーモンがデプロイされている。
- NFS モジュールが有効になっていることを確認している。
手順
Cephadm シェルにログインします。
例
[root@host01 ~]# cephadm shell
既存の NFS クラスターをリスト表示します。
例
[ceph: root@host01 /]# ceph nfs cluster ls mynfs
注記スタンドアロン NFS クラスターが 1 つのノードに作成されている場合、HA 用に 2 つ以上のノードに増やす必要があります。NFS サービスを増やすには、
nfs.yaml
ファイルを編集し、同じポート番号で配置を増やします。NFS サービスに割り当てるホストの数は、デプロイを要求するアクティブな NFS サーバーの数 (
placement: count
パラメーターで指定) よりも大きくする必要があります。構文
service_type: nfs service_id: SERVICE_ID placement: hosts: - HOST_NAME_1 - HOST_NAME_2 count: COUNT spec: port: PORT_NUMBER
例
service_type: nfs service_id: mynfs placement: hosts: - host02 - host03 count: 1 spec: port: 12345
この例では、既存の NFS サービスがポート
12345
で実行されており、同じポートを使用して追加のノードが NFS クラスターに追加されます。nfs.yaml
サービス仕様の変更を適用して、2 ノード NFS サービスにアップグレードします。例
[ceph: root@host01 ceph]# ceph orch apply -i nfs.yaml
既存の NFS クラスター ID を使用して
ingress.yaml
仕様ファイルを編集します。構文
service_type: SERVICE_TYPE service_id: SERVICE_ID placement: count: PLACEMENT spec: backend_service: SERVICE_ID_BACKEND 1 frontend_port: FRONTEND_PORT monitor_port: MONITOR_PORT 2 virtual_ip: VIRTUAL_IP_WITH_CIDR
例
service_type: ingress service_id: nfs.mynfs placement: count: 2 spec: backend_service: nfs.mynfs frontend_port: 2049 monitor_port: 9000 virtual_ip: 10.10.128.75/22
Ingress サービスをデプロイします。
例
[ceph: root@host01 /]# ceph orch apply -i ingress.yaml
注記NFS デーモンと Ingress サービスのデプロイメントは非同期であり、サービスが完全に開始される前にコマンドが返される場合があります。
Ingress サービスが正常に開始されたことを確認します。
構文
ceph orch ls --service_name=ingress.nfs.CLUSTER_ID
例
[ceph: root@host01 /]# ceph orch ls --service_name=ingress.nfs.mynfs NAME PORTS RUNNING REFRESHED AGE PLACEMENT ingress.nfs.mynfs 10.10.128.75:2049,9000 4/4 4m ago 22m count:2
検証
IP エンドポイント、個々の NFS デーモンの IP、および
ingress
サービスの仮想 IP を表示します。構文
ceph nfs cluster info CLUSTER_ID
例
[ceph: root@host01 /]# ceph nfs cluster info mynfs { "mynfs": { "virtual_ip": "10.10.128.75", "backend": [ { "hostname": "host02", "ip": "10.10.128.69", "port": 12049 }, { "hostname": "host03", "ip": "10.10.128.70", "port": 12049 } ], "port": 2049, "monitor_port": 9049 } }
ホストおよびプロセスをリスト表示します。
例
[ceph: root@host01 /]# ceph orch ps | grep nfs haproxy.nfs.mynfs.host01.ruyyhq host01 *:2049,9000 running (27m) 6m ago 34m 9.85M - 2.2.19-7ea3822 5e6a41d77b38 328d27b3f706 haproxy.nfs.mynfs.host02.ctrhha host02 *:2049,9000 running (34m) 6m ago 34m 4944k - 2.2.19-7ea3822 5e6a41d77b38 4f4440dbfde9 keepalived.nfs.mynfs.host01.fqgjxd host01 running (27m) 6m ago 34m 31.2M - 2.1.5 18fa163ab18f 0e22b2b101df keepalived.nfs.mynfs.host02.fqzkxb host02 running (34m) 6m ago 34m 17.5M - 2.1.5 18fa163ab18f c1e3cc074cf8 nfs.mynfs.0.0.host02.emoaut host02 *:12345 running (37m) 6m ago 37m 82.7M - 3.5 91322de4f795 2d00faaa2ae5 nfs.mynfs.1.0.host03.nsxcfd host03 *:12345 running (37m) 6m ago 37m 81.1M - 3.5 91322de4f795 d4bda4074f17
関連情報
- クライアントホストに NFS エクスポートをマウントする方法の詳細は、Red Hat Ceph Storage ファイルシステムガイド の NFS プロトコルを介した Ceph File System 名前空間のエクスポート セクションを参照してください。