Hadoop >

目次

ビルド環境の構築

概要

  1. ビルドには主に以下のソフトウェアが必要となります。セットアップの詳細については、それぞれのドキュメントをご参照ください。
    1. Oracle JDK
    2. ApacheMaven
    3. ProtocolBuffers
  2. その他にもネイティブライブラリ(圧縮用、OSリソースアクセス用、タスクまたはコンテナ起動用)をビルドする場合には追加のソフトウェアが必要となります。なお、(最近は32bitビルド済ライブラリのみが同梱されているようですが)環境に合致しない場合ネイティブライブラリのビルドは必須となるでしょう。

Chefレシピ

info.png参考までに、これはビルド環境を構築するためのChefレシピ(ロール)です。ディストリビューションのパッケージで済むものは、hadoop::build レシピが自動でインストールしますが、JDK、ApacheMavenProtocolBuffers については、ビルド対象のHadoopのバージョンに応じてそれらのバージョンを調整します。

  • cake.pnggrid-chef-repo:/roles/hadoop-build.rb
    1. name 'hadoop-build'
    2. description 'Hadoop Build Environment.'
    3.  
    4. run_list(
    5.   'role[apt]',
    6.   'recipe[hadoop::build]',
    7.   'role[java]',  # default: Oracle JDK installation.
    8.   'role[maven]',
    9.   #'role[protobuf-compiler]',  # default: package installation.
    10.   'recipe[protobuf-compiler]',
    11. )
    12.  
    13. default_attributes(
    14.   'hadoop' => {
    15.     'version' => '2.1.0-beta'
    16.   },
    17.   'java' => {
    18.     'jdk_version' => '6'
    19.   },
    20.   'maven' => {
    21.     'install_flavor' => 'apache',  # tarball installation.
    22.     'version' => '3.0.5'
    23.   },
    24.   'protobuf-compiler' => {
    25.     'install_flavor' => 'google',  # source build installation.
    26.     'version' => '2.5.0'
    27.   },
    28. )

ネイティブライブラリのビルド

概要

info.pngビルド方法については、各セットアップドキュメントをご参照ください。

  1. ビルドが必要となる実行ファイルや共有オブジェクトには、主に以下のようなものがあります。
    1. libhadoop.so: 圧縮(パフォーマンス的にほぼ必須)、OSリソースアクセス用(JniBasedUnixGroupsMapping?等、セキュア環境では必須)
    2. libhdfs.so: HDFSアクセス用のCライブラリ
    3. task-controller: 1.x系のタスク制御実行ファイル(セキュア環境では必須)
    4. container-executor: 2.x系のコンテナ起動実行ファイル(同上)

ドキュメントリソース

  1. Native Libraries Guide
    1. 1.2.1
    2. 2.1.0-beta
  2. C API libhdfs
    1. 1.2.1
    2. 2.1.0-beta
  3. Using the LinuxTaskController?
    1. 1.2.1
  4. LinuxContainerExecutor?
    1. 2.1.0-beta

参考リソース


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2013-08-31 (土) 13:59:03 (1929d)