Apache Spark on Mesos の環境構築(その1
こんにちは。
では、準備も整った(?)ということで、Apache SparkをMesos環境上に構築して動作させる・・・
ということをやっていこうと思います。
http://spark.incubator.apache.org/docs/latest/running-on-mesos.html
のページを読んでみると、Mesos上からApache Sparkを実行するには以下の手順が必要だそうです。
Mesosがどこまで何を管理するかが微妙なのですが、とりあえずHDFS等のストレージ系の
ものについてはMesos管理ではない・・・ということなんでしょう。
クラスタマネージャ、という名前がついている関係上Mesosがどこまでカバーするのが微妙に分かりにくいのが厄介なところですね。
とまぁ、それも実際やってみないとわからないため、構築してみます。
1. 構築する前提環境
今回構築するマシンの構成は以下です。
また、各マシンのスペックは以下の通り。
■ホストマシン
CPU : Core i7 3770K Memory : 32GB HDD : 2TB VMWare ESXi Version : 5.1.0
■仮想マシン(mesos1、mesos2、mesos3)
CPUコア数 : 2 Memory : 8GB HDD : 200GB OS : CentOS6.4 64bit(Basic Server)
・・・正直、クラスタマネージャという位置づけのプロダクトを動作させるには非常に心もとない性能ですが、
実際どうしようもなければ他の対処を考えます^^;
2. 下準備
まず、下準備として以下の3つはやっておきます。
必要ないかもしれませんが、後で不要にはまらないためにするために。
3. Mesosの前提パッケージインストール
http://mesos.apache.org/gettingstarted/ のページに従い、前提パッケージをインストールします。
端的に言うとビルドを行うためのツールをインストールする必要がある・・・という形になります。
あと、ページにあるインストールだけだと足りなかったため、インストールパッケージは追加になっています。
# yum install python26-devel python-devel # yum install cppunit-devel # rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm # yum install libunwind-devel # yum install gcc-c++ # yum install java-1.7.0-openjdk-devel # yum install zlib-devel libz* # yum install libcurl*
4. Mesosのインストール
では、Mesosのダウンロードとビルドを行います。
尚、これでMesos Web UIとZooKeeper(3.3.4)も一緒にインストールされるため、
外部ZooKeeperを使用する場合は別途設定が必要そうです。
# wget http://ftp.tsukuba.wide.ad.jp/software/apache/mesos/0.13.0/mesos-0.13.0.tar.gz # tar xvzf mesos-0.13.0.tar.gz # cd mesos-0.13.0 # ./configure # make
makeコマンドはマシンのスペックにもよりますが、かなり時間がかかります。
#今回の場合、20分近くかかった
ともあれ、これでとりあえずMesos自体のインストールまでは完了です。
次回実際にプロセスを立ち上げて、どういう構成になっているかを確認してみます。