Asakusa Frameworkのインストールのメモ。
「Asakusa Frameworkのインストール」と言った場合、2通りの意味が考えられる。
環境の構築は、0.6.0より前はMavenを使って行っていた。
0.6.0以降はGradleを使って行う。
EclipseプラグインのShafuを使うと、Gradleの操作が隠蔽される。
開発環境の構築は、UNIXの場合はJinrikishaを使うのが便利。
(EclipseのインストールやAsakusaFWの実行環境の構築まで行ってくれる)
Asakusaプロジェクト(Asakusaアプリケーションを作る為のソース群)を作るには、Shafu(Eclipseプラグイン)を使うのが便利。
必要な設定ファイル類だけ存在する空プロジェクトや、サンプルプロジェクトを作ることが出来る。
フロー(JobFlowやFlowPart)のテストを実行する為には、開発環境上にAsakusaFWの実行環境が必要となる。
(テスト実行用の環境を作ることを「開発環境へのAsakusaFWのインストール」と呼ぶこともある)
(フローのテストを実行するにはHadoopが必要だった(のでWindowsではテストの実行が困難だった)が、0.7.1以降はスモールジョブ実行エンジン、0.9以降はVanillaを使うことにより、Windowsでもテストを実行することが出来る
。[/2020-04-07])
AsakusaFWの実行環境はGradleを使って作成できる。(Shafuの「Asakusa Frameworkのインストール」で作成することも出来る)
UNIX | Windows |
---|---|
$ cd プロジェクト $ ./gradlew installAsakusafw |
> cd プロジェクト > gradlew installAsakusafw |
運用環境上でAsakusaアプリケーションを実行できる状態にすることを「デプロイする」と言う。
開発環境上でデプロイ用のアーカイブ(デプロイメントアーカイブ)を作り、運用環境のサーバー(Hadoopクラスターのマシン(Hadoopクライアント、大抵はマスターノード
)やM3BP用のマシン)でアーカイブを展開する。[/2020-04-07]
これにより、YAESSを使ってAsakusaアプリケーションを実行できる。
$ cd Asakusaアプリの開発環境ディレクトリー
$ ./gradlew assemble
$ ls build/asakusafw*.tar.gz ←アーカイブファイルの確認
$ mkdir -p $ASAKUSA_HOME $ tar xf アーカイブファイル -C $ASAKUSA_HOME/
AsakusaFW 0.10.0より前 $ find $ASAKUSA_HOME -name "*.sh" | xargs chmod +x
AsakusaFW 0.10.0(→デプロイメントアーカイブのセットアップ) $ java -jar $ASAKUSA_HOME/tools/bin/setup.jar
Windowsでtarファイルを作ると各ファイルの(UNIXの)実行権限が消えてしまう為、解凍後にシェルに実行権限を付ける必要がある。[2017-12-09]
ただ、AsakusaFW 0.10.0ではasakusaコマンド等の拡張子がshでない実行ファイルが加わった為、"*.sh"に対して実行権限を付けるだけでは足りない。
このため、setup.jarが用意された。
個別のバッチだけリリースしたい場合は、バッチのコンパイルだけ行い、そのバッチだけ配置するという方法もある。[2015-07-04]
(YAESSは$ASAKUSA_HOME/batchappsの下から実行対象のバッチを探すので、そこだけ配置し直す)
$ cd Asakusaアプリの開発環境ディレクトリー
$ ./gradlew compileBatchapp
$ ls build/batchc/ ←バッチの確認
build/batchc/バッチ1
」に対し、Hadoopクライアントマシン上の「$ASAKUSA_HOME/batchapps/バッチ1
」という状態になるようにする)