ファイル・ストレージとの間のデータの転送

Oracle Cloud Infrastructure (OCI)File Storageの一般的なユース・ケースの多くには、大量のデータの転送が含まれます。データ転送の起点、宛先、方向に基づいて、転送を行う最適な方法は異なる場合があります。

次の表に、オンプレミス・データの移行、リージョン間でのファイル・ストレージ・データのコピー、リージョン内のファイル・ストレージ・データのコピー、オブジェクト・ストレージへのファイル・ストレージ・データのコピーなど、一般的なファイル・ストレージ・データ転送シナリオの推奨事項を示します。

OCIとオンプレミス・データの間のプライベート接続に関する一般情報は、FastConnectおよびサイト間VPNを参照してください。

ファイル・ストレージのデータ転送シナリオ
データの転送元... 目的... 推奨される方法 前提条件および考慮事項
オンプレミス・ストレージ OCI上のファイル・ストレージ

Linuxユーザーは、インスタンス間ストリーミングおよびfpsyncツールを使用できます。

Windowsユーザーは、Windowsオンプレミス・ファイル共有を共通インターネット・ファイル・システム(CIFS)共有としてOCI Oracle Linuxインスタンスにマウントし、fss-parallel-toolsfpsyncなどのコピー・ツールを使用してデータを転送できます。

詳細は、オンプレミス・データのファイル・ストレージへの転送を参照してください。

ソース・インスタンスと宛先インスタンス間でネットワーク接続が確立されていることを確認します。

OCI ファイル・ストレージ 別のリージョンのファイル・ストレージ

ユース・ケースの詳細に応じて、次のいずれかの方法を使用します:

  1. ファイル・システム・レプリケーションを使用します。詳細は、データ転送のためのレプリケーションの使用を参照してください。
  2. インスタンス間ストリーミングおよびfpsyncツールを使用します。詳細は、インスタンス間ストリーミングを使用したファイル・ストレージ・データの転送を参照してください。

レプリケーションを使用する場合は、レプリケーションの制限事項と考慮事項を参照してください。

インスタンス間ストリーミングを使用する場合は、ソース・インスタンスと宛先インスタンス間でネットワーク接続が確立されていることを確認します。

OCI ファイル・ストレージ 同じ可用性ドメイン内のファイル・ストレージ

ユース・ケースの詳細に応じて、次のいずれかの方法を使用します:

  1. ファイル・システム・レプリケーションを使用します。詳細は、データ転送のためのレプリケーションの使用を参照してください。
  2. パラレル・ツール・スイートのparcpコマンドを使用して、データを転送します。

    ファイル・ストレージのパラレル・ツールの使用parcp使用例、特にrsyncの有効な代替としてparcpを使用する方法を参照してください。

レプリケーションを使用する場合は、レプリケーションの制限事項と考慮事項を参照してください。

parcpを使用する場合は、ソース・ファイル・システムと宛先ファイル・システムの両方がインスタンスにマウントされていることを確認します。

OCI ファイル・ストレージ OCI オブジェクト・ストレージ

rcloneを使用します。詳細は、rcloneを使用したオブジェクト・ストレージへのスナップショットのバックアップを参照してください。

インスタンスはObject Storageバケットに接続できる必要があります。

オンプレミス・データのファイル・ストレージへの転送

大量のデータをオンプレミス・ストレージからOCIファイル・ストレージに転送する場合、LinuxおよびWindowsユーザーに対して次のシナリオが有効であることが実証されています。これらは、すべての環境に適用したり、すべての要件を満たすわけではありません。

Linuxユーザー向け

fpsyncツールを使用して、オンプレミス・データをOCIファイル・ストレージに初期コピーします。fpsyncではソースに存在しない宛先のファイルおよびフォルダを削除できないため、rsyncを使用して増分データ変更を同期できます。

fpsyncツールは、rsyncのパラレル・ラッパーです。Linuxユーザーは、yumリポジトリからfpsyncをダウンロードできます。コマンドは、Linuxのバージョンによって異なります。

  1. リポジトリからダウンロードします。

    Linux 7ユーザーは、次のコマンドを使用してツールをインストールできます。

    sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    

    Linux 8ユーザーは、次のコマンドを使用してツールをインストールできます。

    sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
    
  2. ツールをインストールします。
    sudo yum install fpart -y

データ転送を開始する前に、次の前提条件を完了してください。

  • オンプレミス・データ・ソースとOCIの間のネットワーク接続が確立されていることを確認します。FastConnectまたはサイト間VPN接続を使用して、SSHを介してインスタンス間高速ストリーミングを有効にします。
  • OCIでOracle Linuxインスタンスを作成します。
  • オンプレミスのストレージ共有をLinuxサーバーに接続またはマウントします。専用インスタンスをお薦めします。

このシナリオでは、初期コピーでfpsyncを使用することをお薦めします。fpsyncには--deleteオプションがないため、後で増分同期ではrsyncが使用されます。

  1. Oracle Linuxインスタンスにファイル・システムをマウントします
  2. ソース共有がアタッチまたはマウントされているオンプレミスLinuxサーバーから次のコマンドを実行して、初期コピーを実行します。
    fpsync -vv -n `nproc` -f 2000 -o "-arxH --progress --log-file fpsync.log -e ssh" /<source>/ <user>@<oci_linux_instance>:/file_storage_destination/
  3. (オプション)特定の日付まで増分同期を実行する必要がある場合は、次のrsyncコマンドをcronジョブとしてスケジュールできます:
    rsync -arxH --delete --progress --log-file rsync.log -e ssh" /source/ <user>@<oci_linux_instance>:/file_storage_destination/
fpsyncオプションの詳細は、fpsyncのマニュアルページを参照してください。

Windowsユーザーの場合

ファイル・ストレージへの大規模なデータ・コピーにWindowsコピー・ユーティリティを使用しないでください。かわりに、OCI Linuxインスタンスを使用して、OCI Linuxインスタンスに付属のパラレル・ツールを使用して大規模なコピーを実行します。Windows共有を共通インターネット・ファイル・システム(CIFS)共有としてマウントし、parcpfpsyncなどのコピー・ツールを使用してデータを転送します。

SMBプロトコルとファイル・ストレージで使用されるNFSプロトコルには互換性がないため、NFSファイル・システムとSMB共有の両方をマウントできるインスタンスは、それらの間のブリッジを作成するために使用されます。

  1. Oracle Cloud Infrastructureで、ファイル・ストレージ・ファイル・システムとWindows SMB共有の両方へのネットワーク・アクセスがあるLinuxインスタンスを識別または作成します。
  2. インスタンスでターミナルを開きます。
  3. 次のように入力してCommon Internet File System (CIFS)ユーティリティをインストールし、そのインストールを確認します:

    $sudo yum install -y cifs-utils
    $rpm -qa|grep cifs
  4. Windows SMB共有をCIFS共有としてマウントします

    1. マウント・ポイント・ディレクトリを作成します。例:

      sudo mkdir /mnt/win_share
    2. CIFS共有をマウントします:

      sudo mount -t cifs -o username=<win_share_user> //<win_IP_address/hostname>/<share_name> /mnt/<win_share_dir>

      例:

      $sudo mount -t cifs -o username=opc //win2012/c /mnt/win_share
  5. ファイル・ストレージのパラレル・ツール・スイートのparcpユーティリティまたはfpsyncを使用して、CIFS共有からマウント済ファイル・システムにファイルをコピーします。parcpに関するインストール情報は、ファイル・ストレージのパラレル・ツールの使用を参照してください。fpsyncについては、fpsyncのマニュアルページを参照してください。

    例:

    parcp -P 32 /mnt/win_share /mnt/MyFilesystem
    fpsync -v -n 8 -f 101 -o "-lptgoD -v --numeric-ids -e ssh" /mnt/win_share /mnt/MyFilesystem

インスタンス間ストリーミングを使用したファイル・ストレージ・データの転送

fpsyncツールは、rsyncのパラレル・ラッパーです。fpsyncおよびインスタンス間ストリーミングを使用して、マウントされたファイル・ストレージ・ファイル・システム間でデータを転送できます。

fpsyncをインストールするには、次のようなコマンドを使用して、OCIインスタンスでfpsyncユーティリティを含むOracle Linux開発者リポジトリを有効にします。コマンドは、使用中のOracle Linuxのバージョンによって異なります。

yum --enablerepo ol7_developer_EPEL install -y fpart
yum --enablerepo ol8_developer_EPEL install -y fpart

ツールをインストールしたら、次のようなインスタンス間ストリーミング・コマンドを使用して、データをストリーミングします:

fpsync -o "-e ssh --progress" /<fss_src_region>/test <ssh_user>@<remote_ip>:/<fss_dest_region>/

詳細とオプションについては、fpsyncのマニュアルページを参照してください。

2つのアプローチのパフォーマンスの違いを示す例を次に示します:

# date; time fpsync -o "-e ssh --progress --log-file ~/speedtest.log" /fss_src_bom/test root@DR_hyd:/fss_dest_hyd/ ; date
Sun Mar 13 15:22:58 GMT 2022

real 0m1.467s
user 0m0.111s
sys 0m0.075s
Sun Mar 13 15:23:00 GMT 2022

# ls -ltrd test
drwxr-xr-x. 2 root root 1 Mar 13 15:22 test
# du -sh test
1001M test
# cp -r test test1

# date; time fpsync -o "--progress --log-file ~/speedtest1.log" /fss_src_bom/test1 /fss_dest_hyd/ ; date
Sun Mar 13 15:25:16 GMT 2022

real 1m28.847s
user 0m3.688s
sys 0m1.439s
Sun Mar 13 15:26:44 GMT 202