1

Google Compute Engine で Oryx を起動して実行しようとしています。新しいインスタンスを作成し、次の方法で Oryx をインストールしました。

git clone https://github.com/cloudera/oryx.git
cd oryx
mvn -DskipTests install

このインストールを Google Compute Engine にイメージとして保存しました ("oryx-image")。

Oryx と Google ファイル システム ( Hadoop 2.4.1 および Hadoop 用の Google Cloud Storage コネクタ) に関する問題の検索 私は hdfs:// をデフォルトのファイル システムとして使用しています。

Google Compute Engine で起動されたデフォルトの Hadoop パッケージに関する問題 (たとえば、デフォルトのOryx 構成に必要な Snappy ライブラリがない) を見つけたので、次の手順に従って Snappy を含む独自の Hadoop 2.4.1 tarball を作成してみました:方法Google Compute Engine の Hadoop クラスターで Snappy/Snappy Codec を有効にします (補足: ここで説明する jdk バージョンは oryx に十分ですか?)。次に、保存したイメージを oryx をインストールして使用しました ("oryx-image"):

./bdutil --bucket <some-bucket> --image oryx-image -n $number \
    --env_var_files hadoop2_env.sh --default_fs hdfs

保存した Hadoop tarball:

# File: hadoop2_env.sh
HADOOP_TARBALL_URI="gs://<some-bucket>/hadoop-2.4.1.tar.gz"

Hadoop 2.4.1 (Snappy を使用) クラスター (デフォルトのファイル システムは hdfs://) を Google Compute Engine にデプロイします。まだ運がありません。

GCE でテスト Hadoop ジョブを正常に実行し、GCE で Snappy 実装をテストし ( 2 番目のリンクを参照)、GCE で Oryx ジョブをマスター ノードからローカルでテストできます。

# File: oryx.conf
model.local-data = true
model.local-computation = true  

唯一の問題は、hdfs:// または gs:// のデータを使用して Google Compute Engine で Oryx を正常に実行することです。

環境変数の変更などに関する多くのさまざまな指示を見つけましたが、どれが必要で、どれがより多くの問題を引き起こす可能性があるかわかりません。GCE での oryx のインストール/実行に関するドキュメントがあるかどうか疑問に思っていました。おそらく、誰かがすでに同じプロセスを経ており、指示を提供したり、少なくともインストールが成功したことを確認したりできますか?

GCE に Snappy を使用して Hadoop 2.4.1 をインストールするための手順 ( 2 番目のリンクにあります) はすばらしいものでした。oryx を GCE でゼロから動作させるために必要なすべての手順について、そのレベルの詳細を備えたものを見つけたいと思っていました。

ありがとう!

4

2 に答える 2

0

この問題に対するあまりエレガントではない「解決策」を見つけました。Google Compute Engine提供する標準問題の Hadoop-2.4.1 には、実際にはスナッピーなライブラリがありましたが、それらは「適切な」場所にありませんでした。そのため、snappy ライブラリ ファイルをすべてデフォルトの場所 (/usr/lib/) から Java ライブラリ ディレクトリにコピーしました。明らかに、これらの行の 1 つだけが必要ですが、どれが正しいものかを見つけるのに時間がかかりませんでした:

sudo cp /usr/lib/lib* /usr/local/lib
sudo cp /usr/lib/lib* /usr/java/jdk1.7.0_55/lib/amd64/jli
sudo cp /usr/lib/lib* /usr/java/jdk1.7.0_55/lib/amd64
sudo cp /usr/lib/lib* /usr/java/jdk1.7.0_55/lib

もちろん、これは解決策ではなく、回避策です。snappy ライブラリ ディレクトリを正しいパスに追加しても機能すると思います。

于 2014-10-29T20:38:20.593 に答える