Amazon FSx for NetApp ONTAPでLifeKeeperを共有ディスク構成で組んでみた

    Banner for FSx for ONTAP × LifeKeeper with Japanese subtitle and illustration of a person at a computer beside a server, orange button: 構築手順を解説。

    Amazon FSx for NetApp ONTAPとLifeKeeperを組み合わせた、共有ディスク構成の構築ガイドです。
    iSCSI・NFS両対応のボリューム作成からLifeKeeperのリソース定義、スイッチオーバーによる動作検証まで、実際の構築手順をステップごとに詳しく解説します。

     

    1. はじめに

    こんにちは!馬場です。
    AWS上でLifeKeeperを構築する際に、Amazon FSx for NetApp ONTAPを利用したボリュームの保護ができるようになったため、実際に検証してみました。

    Amazon FSx for NetApp ONTAPについて
    Amazon FSx for NetApp ONTAPとはNetApp の人気ファイルシステムであるONTAP上に構築されたフルマネージド共有ストレージです。
    オンプレミスにてNetApp製品を利用している場合、オンプレミスの使用感そのままに同期、移行が可能です。
    LifeKeeperでは従来DataKeeperによるストレージ保護のみでしたが、Amazon FSx for NetApp ONTAPがサポート対象となることで、共有ディスクの保護も可能となりました。
    LifeKeeperではiSCSIとNFSに対応しているため今回はiSCSIとNFSをLifeKeeperで保護するところまで構築します。

    2. Amazon NetApp ONTAP ボリュームの保護手順

    今回は実際にAmazon FSx for NetApp ONTAPで作成したボリュームをLifeKeeperにて保護してみました。インスタンスの作成、LifeKeeperのインストール、Amazon FSx for NetApp ONTAPによるボリューム作成、LifeKeeperによるファイルシステムの保護の順で行います。今回はボリュームの作成とLifeKeeperによる保護について詳しく記載します。

    2-1. システム構成の概要

    構成図は以下の通りです。
    同一VPC内に異なるAZに2つのインスタンスを作成しました。
    動作検証に使用した環境は以下のとおりです。

    項目内容
    クラウド環境AWS
    インスタンスタイプt3.small
    リージョンバージニア北部(us-east-1)
    OSRed Hat Enterprise Linux 9.6.0
    ディスクサイズ10GiB(OS起動用)
    LifeKeeperバージョンv10.0.1

    動作検証環境

    Amazon FSx for NetApp Ontap作成によってのiSCSIエンドポイントが各サブネット内に、NFSエンドポイントがVPCのネットワーク内に作成され、接続が可能となる構成となっています。
    今回は一つのファイルシステムの中にNFS用とiSCSI用のボリュームを作成しました。

    2-2. LifeKeeperのインストール

    はじめにLifeKeeperのインストールを含めた、インスタンスの作成を行います。
    LifeKeeperにてAmazon FSx for NetApp ONTAPのファイルシステムを保護する場合、iSCSIの場合DMMP(Device-Mapper-MultiPath) Recovery Kitを、NFSの場合は
    NAS Recovery Kitをインストールする必要があります。

    特にiSCSIの使用にDMMP Recovery Kit導入が必須なのはAWS上でAmazon FSx for NetApp ONTAPを使用する場合のみです。
    LifeKeeperの事前準備として2本のコミュニケーションパスとIPリソースを作成しておきます。

    2-3. ボリュームの作成

    次にAmazon FSx for NetApp ONTAPでボリュームを作成します。
    ファイルシステムを作成を押すと、使用するファイルシステムのタイプを選択できるので、Amazon FSx for NetApp ONTAPを選択して下さい。

    次にファイルシステムの詳細を指定します。
    Amazon FSx for NetApp ONTAPを選択し、次へ進みます。

    今回はスタンダード作成を選択し、以下のパラメータを使用しました。
    作成が完了すると、ファイルシステム、ストレージ仮想マシン、ボリュームが作成されます。

    カテゴリパラメータ設定値
    ファイルシステムの詳細ファイルシステム名任意
    デプロイタイプマルチ AZ 2
    SSD ストレージ容量1,024 GiB(最小容量)
    プロビジョンド SSD IOPS自動
    スループットキャパシティ推奨されるスループット容量
    ネットワークとセキュリティVirtual Private Cloud (VPC)
    推奨サブネットプライマリーノードに指定したサブネットのうち
    スタンバイサブネットバックアップノードに指定したサブネット
    VPC ルートテーブル1つ以上のVPCルートテーブルを選択し、ファイルシステムとLifeKeeperクラスターが接続できるようルートテーブルを追加
    ネットワークタイプIPv4
    エンドポイント IPv4 アドレス範囲VPC から未割り当ての IPv4 アドレス範囲
    暗号化暗号化キーaws/fsx(デフォルト)
    ファイルシステム管理パスワードパスワードを指定(後に利用します)
    デフォルトのストレージ仮想マシン設定ストレージ仮想マシン名任意
    SVM 管理パスワード指定しない
    ボリュームのセキュリティスタイルUnix(Linux)
    Active DirectoryActive Directory に参加しない
    デフォルトのボリューム設定ボリューム名任意
    ボリュームスタイルFlexVol(推奨)
    ボリュームサイズ12GiB(任意)
    ボリュームタイプRead-Write(RW)
    ジャンクションパス任意
    ストレージ効率無効
    スナップショットポリシーDefault
    デフォルトのボリュームストレージの階層化容量プールでの階層化ポリシースナップショットのみ
    階層化ポリシーの冷却期間31(デフォルト値)
    デフォルトのボリューム SnapLock 設定SnapLock 設定無効
    バックアップとメンテナンスオプション変更なし
    タグオプション変更なし

    ファイルシステム作成パラメータ

    なおそれぞれを確認したい場合は以下の公式ドキュメントをご確認下さい。

    2-4. 共有ディスクの設定

    続いて作成したボリュームとLifeKeeperのノードで共有ディスクをiSCSI、NFSとして認識できるよう設定します。
    ここからはLifeKeeper公式ドキュメントAWS公式ドキュメントを参考にして下さい。

    iSCSIプロトコルで使用する場合

    AWS公式ドキュメントとLifeKeeper公式ドキュメントに従ってONTAPのiSCSIを設定します。
    ここではRHEL9.6.0 で以下を前提に説明します。
    作成後、はじめにエンドポイントを確認します。
    ファイルシステム内のネットワークとセキュリティのエンドポイントを確認して下さい。

    Filesystem
    管理エンドポイント -DNS 名
    management.fs-aaaa.fsx.us-west-2.amazonaws.com
    管理エンドポイント -IP アドレス
    10.1.255.204
    SVM
    管理 DNS 名
    svm-aaaa.fsx.us-west-2.amazonaws.com
    iSCSI DNS 名
    iscsi.svm-aaaa.fsx.us-west-2.amazonaws.com
    管理 IP アドレス
    10.1.255.232
    iSCSI IP アドレス
    10.1.1.175, 10.1.2.141

    各クラスターノードにiSCSIパッケージをインストールする。
    この時、イニシエーター名を確認しておきます。

    # dnf install device-mapper-multipath iscsi-initiator-utils
    # mpathconf --enable --with_multipathd y
    # systemctl restart iscsid
    # cat /etc/iscsi/initiatorname.iscsi
    iqn.1994-05.com.redhat:3034e7ffb0e
    
    ONTAP File System 管理サーバーにログインする

    lun create、 lun igroup createを実行します。このとき各クラスターノードのイニシエーター名を-initiatorオプションで指定します。

    -vserver オプションには仮想ストレージマシンの名前が、-pathには“/vol” + ボリューム名 + lunの名前が入ります。lunの名前とigroup名はここで決めて下さい。
    仮想ストレージ名とボリューム名が分からない場合はfsxadminに接続後、volume show コマンドを実行し確認してください。

    # ssh fsxadmin@management.fs-aaaa.fsx.us-west-2.amazonaws.com
    ::> lun create -vserver fsx -path /vol/vol1_l/lun_001 -size 1G -ostype linux -space-allocation enabled
    ::> lun show
    Vserver Path State Mapped Type Size
    --------- ------------------------------- ------- -------- -------- --------
    fsx /vol/vol1_l/lun_001 online unmapped linux 1GB
    ::> lun igroup create -vserver fsx -igroup igroup_001_l -initiator iqn.1994-05.com.redhat:3034e7ffb0e,iqn.1994-05.com.redhat:303eb2a3e0 -protocol iscsi -ostype linux
    ::> lun igroup show
    Vserver Igroup Protocol OS Type Initiators
    --------- ------------ -------- -------- ------------------------------------
    fsx igroup_001_l iscsi linux iqn.1994-05.com.redhat:3034e7ffb0e
    iqn.1994-05.com.redhat:303eb2a3e0
    

    lun mapping で igroup_001_1 が lun 001 にアクセスできるようにします。

    ::> lun mapping create -vserver fsx -path /vol/vol1_l/lun_001 -igroup igroup_001_l -lun-id 001
    ::> lun show -path /vol/vol1_l/lun_001
    Vserver Path State Mapped Type Size
    --------- ------------------------------- ------- -------- -------- --------
    fsx /vol/vol1_l/lun_001 online mapped linux 1GB
    ::> network interface show -vserver fsx
    Logical Status Network Current Current Is
    Vserver Interface Admin/Oper Address/Mask Node Port Home
    ----------- ---------- ---------- ------------------ ------------- ------- ----
    fsx
    iscsi_1 up/up 10.1.1.175/24 FsxId0212ef1b4803190af-01 
    e0e true
    iscsi_2 up/up 10.1.2.141/24 FsxId0212ef1b4803190af-02
    e0e true
    nfs_smb_management_1 
    up/up 10.0.255.232/26 FsxId0212ef1b4803190af-01 
    e0e true
    2 entries were displayed.
    ::> exit
    
    各クラスターノードで iSCSI の設定を行う。
    # ターゲット iSCSI ノードを検出します。
    # iscsiadm --mode discovery --op update --type sendtargets --portal 10.1.1.175
    10.1.1.175:3260,1032 iqn.1992-08.com.NetApp:sn.BBBB:vs.4
    10.1.2.141:3260,1031 iqn.1992-08.com.NetApp:sn.BBBB:vs.4
    
    # オプション、8セッションで接続する場合
    # iscsiadm --mode node -T iqn.1992-08.com.NetApp:sn.BBBB:vs.4 --op update -n node.session.nr_sessions -v 8
    
    #ターゲットイニシエーターにログインします。iSCSI LUN は、使用可能なディスクとして表示されます。
    # iscsiadm --mode node -T iqn.1992-08.com.NetApp:sn.BBBB:vs.4 --login
    # multipath -ll

    プライマリーノードでパーティションを作成します。

    # parted /dev/mapper/3600XXXX --script 'mklabel gpt quit'
    # parted /dev/mapper/3600XXXX --script 'mkpart Disk1_part1 0% 100% print quit'
    

    バックアップノードでパーティションが見えるようにします。

    # parted /dev/mapper/3600XXXX --script 'print quit'

    プライマリーノードで /diskiscsi1 にマウントします。

    # mkdir -p /diskiscsi1
    # mkfs.xfs /dev/mapper/3600XXXX; mount /dev/mapper/3600XXXX /diskiscsi1
    

    NFS 経由で使用する場合

    ボリュームの Linux クライアントへのマウントに従って ONTAP のNFSを設定します。

    NFS DNS 名
    svm-aaaa.fsx.us-west-2.amazonaws.com
    NFS IP アドレス
    10.1.255.232
    ジャンクションパス
     /vol1_l
    

    共有するディレクトリー /disknfs1 を ONTAP ファイルシステムに作成します。

    # mount -t nfs svm-aaaa.fsx.us-west-2.amazonaws.com:/vol1_l /mnt
    # mkdir /disknfs1 /mnt/disknfs1
    # umount /mnt
    

    プライマリーノードで、ファイルシステムリソースを作成します。

    # mount -t nfs svm-aaaa.fsx.us-west-2.amazonaws.com:/vol1_l/disknfs1 /disknfs1

    2-5. LifeKeeperで保護する

    共有ディスクを作成できたので最後にLifeKeeperでリソースを作成して保護すれば完了です。以下の手順で行います。
    2ノード構成でコミュニケーションパスの設定まで完了している前提です。

    最初に簡易的なパラメータ表をまとめておきます。

    パラメータ設定値
    オペレーションリソース階層の作成
    サーバーip-10-0-2-22.ec2.internal
    Application Recovery KitFile System
    マウントポイント/diskiscsi1
    ファイルシステム
    リソースタグ
    /diskiscsi1
    スイッチバック
    タイプ
    INTELLIGENT
    プライマリー
    プライオリティ
    1
    スタンバイサーバーip-10-0-4-4.ec2.internal
    スタンバイ
    プライオリティ
    10
    File System
    リソースタグ
    /diskiscsi1

    LifeKeeper リソース作成パラメータ(iSCSI)

      1. 始めにオペレーションからリソース階層の作成を押しリソース作成画面へ移ります。


      2. 作成するサーバーとARKはFile Systemを選択します。


      3. 先に稼働系で設定した、マウントポイントを指定します。

               
      4. ファイルシステムリソースのタグ名を設定し、スイッチバックタイプはデフォルトのINTELLIGENTに設定します。

      5. 設定を確認し、実行を押す。
      6. 実行されるので、成功後リソース階層の拡張を押す。

      7. 拡張先のスタンバイサーバーとプライオリティーを設定します。

      8. 拡張前チェックが行われるので、次へを押す。

         
      9. File Systemリソースタグとマウントポイントを確認し、次へを押す。

      10. 最後に内容を確認して実行を押す。

      11. リソース作成が成功し、作成画面を閉じるとリソースが作成されています。以下はiSCSI、NFSどちらも作成した状態です。

    2-6. 保護できているか検証

    プライマリーノードにてディスクにテキストデータを作成し、閲覧できるか確認します。
    現在Node1がプライマリーノードでNode2がバックアップノードとなっている状態です。
    この時Node1で保護したファイルシステム配下にテキストを作成します。
    両系からアクセスできるかを確認するとNode1からはアクセスでき、Node2からはアクセスができない状態です。

    [Node1]# date > /diskiscsi1/test.txt
    [Node1]# cat /diskiscsi1/test.txt
    Tue Apr 14 07:01:37 AM UTC 2026
    
    [Node2]# cat /diskiscsi1/test.txt
    cat: /diskiscsi1/test.txt: No such file or directory

    続いてスイッチオーバーを行い、再度各ノードからアクセスを確認します。
    スイッチオーバーをしたため、Node1がバックアップノード、Node2がプライマリーノードとなっています。
    そのため今回はNode1からはアクセスできず、Node2からアクセスできる状態となり、ちゃんと保護できていることが分かります。

    [Node1]# cat /diskiscsi1/test.txt
    cat: /diskiscsi1/test.txt: No such file or directory
    
    [Node2]# cat /diskiscsi1/test.txt
    Tue Apr 14 07:01:37 AM UTC 2026

    3. 最後に

    以上が LifeKeeper にてAmazon FSx for NetApp ONTAPの共有ストレージを保護する方法となります。
    LifeKeeper でストレージを保護する場合従来はDataKeeperでの保護限定でしたが共有ストレージの保護も加わり、より柔軟な構成を作ることが可能となりました。
    特に既にFSx for ONTAPを使用している方については同じ感覚で使用・管理ができ、クラウドへの移行がよりスムーズに行えそうです。

    詳細については AWS 公式サイトや、弊社ドキュメントをご確認下さい。