エンジニア的な技術的なブログ

webエンジニアの開発の知見を書きます。PHP、javascript、postgres、mysql、あと多少のインフラ周りとか。

apache sparkをローカルのvm環境にインストール

とりあえずインストール手順まで

前提

virtual boxはインストール済み
vagrantはインストール済み

環境

mac osX

vm環境

centOS6.5

全体の全体の流れ

  • vm環境の立ち上げ

hostsの設定
javaインストール
apache sparkインストール

vm環境の立ち上げ

vagrantcentosのbox取得して初期設定 (cent65のとろは好きな名前つけられる)
mkdir spark
cd spark
vagrant box add cent65 https://github.com/2creatives/vagrant-centos/releases/download/v6.5.3/centos65-x86_64-20140116.box
vagrant init cent65
ローカルIPをvm環境に割り当て
vi Vagrantfile

# この行のコメントアウトを外す
config.vm.network "private_network", ip: "192.168.33.10"


Vagrantfileを保存して、リロードする
vagrant reload


vm環境にログインして、javaインストール

vagrant ssh

#以下vm環境

#hosts設定 (ホスト名は自分の環境に合わせてね)
vi /etc/hosts
192.168.33.10 vagrant-centos65.vagrantup.com

#hosts閉じる
# wget インストール

sudo yum install wget

# java ダウンロード (バージョンはその時の環境に合わせてね)
cd /tmp/
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u65-b17/jdk-8u65-linux-x64.rpm

# rpmでインストール
sudo rpm -ivh jdk-8u65-linux-x64.rpm

# 必須じゃないと思うが環境変数を設定
# ファイルは新規作成
vi /etc/profile.d/java.sh

export JAVA_HOME=/usr/java/default
export PATH="$JAVA_HOME"/bin:"$PATH"


apache sparkを書きページでブラウザでダウンロード
http://spark.apache.org/downloads.html

Choose a package typeのプルダウンは pre build hadoopの最新にする
そのほかのプルダウンはそのままでDL

ダウンロードファイルをsparkディレクトリに置く
spark/spark-1.5.2-bin-hadoop2.6.tgz

vagrantのフォルダ共有で、先ほどダウンロードしたファイルをvm環境に持っていく

#vm環境で

cd /vagrant/
mv spark-1.5.2-bin-hadoop2.6.tgz /tmp/

#解凍
sudo tar zxvf spark-1.5.2-bin-hadoop2.6.tgz -C /opt/
cd /opt/

# 扱いやすいようにシンボリックリンク(リネームでも良いかも)
sudo ln -s spark-1.5.2-bin-hadoop2.6 spark

# 環境変数
sudo vi /etc/profile.d/spark.sh

export SPARK_HOME=/opt/spark

#閉じて環境変数を読み込み
source /etc/profile

#インストールできたか確認
${SPARK_HOME}/bin/spark-submit --version


${SPARK_HOME}/bin/spark-submit --version
Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  '_/
   /___/ .__/\_,_/_/ /_/\_\   version 1.5.2
      /_/
                        
Type --help for more information.

#こんなのが出ればOK

とまあ、こんな感じです。