前回はこちら
はじめに
本日は、実際にsparkの分散処理の手順を追いたいと思います。
準備
Virtual Boxのインストールをする
Vagrantのインストールをする
仮想環境を構築する
$ mkdir vagrant_test
$ cd vagrant_test
$ vagrant init
Vagrantfileの編集をする
こんなんでいいはず。
Vagrant.configure(2) do |config|
config.vm.box = "opscode-centos-6.6"
end
動かしてみる
エラーがでなければおk。
$ vagrant up
仮想サーバにssh接続してみる
$ vagrant ssh
その他の細かいことはvagrantタグで調べると良い。
基本的なことはこの記事を参考にした。
OSの設定を変更
この辺はプロビジョニングツールを使ったので説明を省略します。
yum update
したり、ツール入れたりしました。
いいようにやってください。
Spark環境をを仮想環境下に導入
Java JDKのインストール
-
ここから
jdk-8u65-linux-x64.rpm
ってやつをダウンロードする -
ダウンロードしたファイルを
Vagrantfile
のディレクトリに移動
$ mv Downloads/jdk-8u65-linux-x64.rpm vagrant_test
-
vagrant ssh
をして、仮想環境下にJava JDKをインストール
$ sudo yum localinstall /vagrant/jdk-8u65-linux-x64.rpm
Python
- pythonは既にインストールされてるのでそのまま使用
python --version
- pipだけいれとけば便利かも(僕は今回入れてないです><)
Sparkをインストール
-
Java JDKと同様にダウンロードしたファイルをVagrantfileと同じディレクトリに移動
-
あとはこれと同じように解凍して使えばよい。
-
解凍したら適当な場所に移動
$ sudo mv spark-1.5.2/ /etc/spark
- 必要に応じてSparkの設定を調整する
Sparkを動かしてみる
動かし方はSparkドキュメントのSpark Standalone Modeを参照する.
今回は、localをmaster
、vmをslave
として動かしてみる
- masterサーバを動かす
$ sudo ./sbin/start-master.sh
- slaveを動かす
引数にはmasterのURLを渡す。
$ ./sbin/start-slave.sh <master-spark-URL>
- http://localhost:8080/ に接続すると色々情報は見れる。
masterのURLや現在のslaveの状況などが見れる。
ここに接続してslaveが動いていることを確認する
- あとは普通に
spark-shell
などを実行し、処理をコマンドで叩けば良い。
その時に引数としてmasterのURLを渡す
$ ./bin/spark-shell --master <master-spark-URL>