すべてのプロダクト
Search
ドキュメントセンター

E-MapReduce:JindoFuse での JindoFSx の使用

最終更新日:Jan 11, 2025

JindoFuse は、コンピューティングクラスターのアイドル状態のストレージリソースにデータをキャッシュして、データコンピューティングを高速化できます。 これにより、コンピューティングクラスターが過剰な帯域幅を占有するのを防ぎ、コアクラスターに十分な帯域幅を確保できます。 JindoFuse は、oss:// 形式のアドレスを使用して、JindoFS ファイルをオンプレミスファイルシステムにマウントします。 この方法では、オンプレミスファイルに対する操作を実行するのと同じ方法で、JindoFS ファイルに対する操作を実行できます。

前提条件

説明

この例では、EMR V3.42.0 のクラスターを使用しています。

手順

  1. 手順 1: クライアントを構成する

  2. 手順 2: JindoFuse をマウントする

  3. 手順 3: JindoFuse にアクセスする

  4. 手順 4: JindoFuse をアンマウントする

手順 1: クライアントを構成する

  1. SSH モードでクラスターにログオンします。 詳細については、クラスターへのログオンをご参照ください。

  2. 次のコマンドを実行して、構成ファイルのディレクトリに移動します。

    cd /etc/ecm/jindosdk-conf/
  3. 次のコマンドを実行して、jindosdk.cfg 構成ファイルを編集します。

    vim jindosdk.cfg

    次のコードは、構成ファイルで構成する必要がある項目を示しています。

    [common]
    logger.dir = /tmp/fuse-log
    
    [jindosdk]
    // 使用する OSS または OSS-HDFS バケットのエンドポイント。
    fs.oss.endpoint= <yourEndpoint>
    // OSS または OSS-HDFS サービスにアクセスするために使用する AccessKey ID と AccessKey シークレット。 Alibaba Cloud アカウントには、すべての API 操作を呼び出す権限があります。 Alibaba Cloud アカウントの AccessKey ペアが漏洩した場合、データは高いセキュリティリスクにさらされる可能性があります。 API 操作の呼び出しや日常的な O&M の実行には、RAM ユーザーを使用することをお勧めします。 RAM ユーザーは、Resource Access Management(RAM)コンソールで作成できます。
    fs.oss.accessKeyId = <yourAccessKeyId>
    fs.oss.accessKeySecret = <yourAccessKeySecret>
    // Namespace Service のアドレス。
    fs.jindofsx.namespace.rpc.address = <hostname>:<port>
    // データキャッシュを有効にします。
    fs.jindofsx.data.cache.enable = true
    // メタデータキャッシュを無効にします。
    fs.jindofsx.meta.cache.enable = false
    // 一時ファイルを保存するために使用されるディレクトリの名前。
    fs.jindofsx.tmp.data.dir = /tmp

手順 2: JindoFuse をマウントする

  1. 次のコマンドを実行して、マウントポイントを作成します。

    mkdir -p <mount_point>
  2. 次のコマンドを実行して、JindoFuse をマウントします。

    jindo-fuse <mount_point> -ouri=<oss_path/jindo_path> -oxengine=jindofsx

    -ouri は、マップする OSS パスに設定する必要があります。 パスは、バケットのルートディレクトリまたはサブディレクトリにすることができます。 コマンドを実行すると、バックグラウンドのデーモンプロセスが起動し、oss_path パラメーターで指定された OSS パスが、オンプレミスファイルシステムの mount_point パラメーターで指定されたマウントポイントにマウントされます。 jindo://<ip>:<port>/<mountpoint> など、統合名前空間のパスに OSS パスをマウントすることもできます。

手順 3: JindoFuse にアクセスする

OSS をオンプレミスディレクトリにマウントする場合、次のコマンドを実行して、JindoFuse で関連操作を実行できます。 この例では、OSS は /mnt/oss/ にマウントされています。

  • /mnt/oss/ 内のすべてのディレクトリを一覧表示する

    ls /mnt/oss/
  • ディレクトリを作成する

    mkdir /mnt/oss/dir1
  • ファイルにデータを書き込む

    echo "hello world" > /mnt/oss/dir1/hello.txt
  • ファイルからデータを読み取る

    cat /mnt/oss/dir1/hello.txt

    hello world が表示されます。

  • ディレクトリを削除する

    rm -rf /mnt/oss/dir1/

手順 4: JindoFuse をアンマウントする

次のコマンドを実行して、マウントポイントをアンマウントします。

umount <mount_point>

-oauto_unmount パラメーターを構成して、マウントポイントをアンマウントすることもできます。 -oauto_unmount パラメーターを構成した後、killall -9 jindo-fuse コマンドを実行して、jindo-fuse プロセスに SIGINT を送信できます。 これにより、プロセスが終了する前に JindoFuse が自動的にアンマウントされます。