JindoFS external client を使用すると、E-MapReduce クラスター外部のアプリケーションが、ブロックストレージモードで JindoFS データにアクセスできます。
概要
JindoFS external client は、E-MapReduce クラスター外部から JindoFS クラスターへのアクセスを提供します。この外部クライアントはブロックストレージモードのみをサポートします。ネイティブ OSS セマンティクスと互換性のあるキャッシュモードを使用する場合は、標準の OSS クライアントをご利用ください。
ユースケース
JindoFS external client は Hadoop 分散ファイルシステム (HDFS) インターフェイスを実装しています。ご利用の E-MapReduce クラスター内の JindoFS Namespace Service に接続可能なアプリケーションであれば、外部クライアントを利用して JindoFS データにアクセスできます。ただし、外部クライアントはクラスターのデータキャッシング機能を利用できないため、クラスター内からのアクセスと比較してパフォーマンスが低下します。
外部クライアントの設定
作業を開始する前に、JindoFS の名前空間がブロックストレージモードで構成されていることを確認してください。詳細については、「JindoFS block storage mode」をご参照ください。
-
Bigboot パッケージを入手します。
Bigboot パッケージは、ご利用の E-MapReduce クラスターの /usr/lib/bigboot-current ディレクトリにあります。
説明 Bigboot パッケージにはネイティブコードが含まれています。 -
環境を構成します。
BIGBOOT_HOME 環境変数を Bigboot のルートインストールディレクトリに設定します。また、ext サブディレクトリおよび lib サブディレクトリのパスを、Hadoop や Spark などのビッグデータコンポーネントの classpath に追加します。
- E-MapReduce クラスター上の /usr/lib/bigboot-current/conf/bigboot.cfg.external 設定ファイルを、クライアントマシン上の Bigboot インストールディレクトリ内の conf/bigboot.cfg パスにコピーします。
-
Namespace Service を構成します。
client.namespace.rpc.port:JindoFS Namespace Service のリッスンポートです。client.namespace.rpc.address:JindoFS Namespace Service のリッスンアドレスです。説明 これらのパラメーターは、E-MapReduce クラスター上の設定ファイルにデフォルトで事前構成されています。
-
データアクセスパラメーターを構成します。
client.namespaces.{YourNamespace}.oss.access.bucket:OSS バケット名です。client.namespaces.{YourNamespace}.oss.access.endpoint:OSS エンドポイントです。client.namespaces.{YourNamespace}.oss.access.key:OSS アクセス用の AccessKey ID です。client.namespaces.{YourNamespace}.oss.access.secret:OSS アクセス用の AccessKey Secret です。説明 上記のパラメーターにおいて、{YourNamespace}はアクセス対象の名前空間を示すプレースホルダーです。以下の例ではtestを使用しています。以下に設定例を示します。
client.namespace.rpc.port = 8101 client.namespace.rpc.address = {RPC_Address} client.namespaces.test.oss.access.bucket = {YourOssBucket} client.namespaces.test.oss.access.endpoint = {YourOssEndpoint} client.namespaces.test.oss.access.key = {YourOssAccessKeyID} client.namespaces.test.oss.access.secret = {YourOssAccessKeySecret}
構成の検証
クライアントの構成後、次のコマンドを実行してセットアップを検証します。
- 名前空間へのアクセスを検証するには、次のコマンドを実行します。
hdfs dfs -ls jfs://test/ - データのアップロードおよびダウンロードが可能であることを検証するには、次のコマンドを実行します。
hdfs dfs -put /etc/hosts jfs://test/ hdfs dfs -get jfs://test/hosts