LoginSignup
12
12

More than 5 years have passed since last update.

Hadoop + Yarn Docker on SoftLayer by Rancher

Last updated at Posted at 2016-06-30

HADOOP SUMMIT 2016 SAN JOSEに合わせて、RancherというDockerコンテナ管理ツールを使って、SoftLayer上にHadoop、Yarnのクラスタ環境を簡単に構築してみた記録です。

まずは、それぞれの概要を記します。

Rancher

racger.png
Rancherは、Dockerイメージとして配布されているコンテナやクラスタの管理をWebUIで簡単に行えるオープンソースのツールです。

SoftLayer、GCP、AWS、Azure、DigtalOcean、rackspaceといった、各種クラウドとのコンテナ連携が可能です。

2016年3月にバージョン1.0になり、Kubernetes、DockerSwarm、Mesos等のクラスタ環境管理機能が追加されました。

公式サイト:http://rancher.com/

Hadoop and Yarn

Hadoop

hadoop.jpg
大規模データの蓄積、分析を並列分散処理によって、実現するオープンソースのミドルウェアです。Apacheプロジェクトとして、Hortonworks米YahooCloudera等の企業によって開発が続けられています。

公式サイト:http://hadoop.apache.org/

参考サイト:http://www.slideshare.net/hamaken/hadoop-cloudera-world-tokyo-2014

Yarn

Yarnは、”Yet-Another-Resource-Negotiator”を意味し、Hadoopクラスタのリソース管理や、Hadoop上で動作するアプリケーションのスケジューリングを可能にするフレームワークです。

公式サイト:http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YARN.html

SoftLayer

SoftLayer.jpg

SoftLayerは、IBMが提供する、高いパフォーマンスとセキュリティーを兼ね備えた企業向けのパブリック・クラウドです。

他のクラウドベンダーと主に違うところは、ベアメタルサーバが利用(最短30分)できるというところです。

公式サイト:http://www.ibm.com/cloud-computing/jp/ja/SoftLayer.html

Docker

docker.png

ソフトウェアコンテナ内のアプリケーションのデプロイメントを自動化するオープンソースソフトウェアです。

公式サイト:https://www.docker.com/

参考サイト:http://www.slideshare.net/cyberblackvoom/linaction-theme-docker


HadoopとYarnの環境を物理サーバで構築となると大変ですが、Rancher、Docker、SoftLayerを使って簡単に構築して、試してみましょう!!

SoftLayer上にRancherを構築

RacherでHadoop + Yarn環境を構築するには、以下3個のホストが必要となります。

  • Rancherのマネージャ用ホスト
  • Hadoop + Yarn用ホスト1
  • Hadoop + Yarn用ホスト2

3個の仮想サーバをSoftLayer上に作成します。
スペックは以下となります。
Hdoop + Yarnのホストには8GB以上のRAMが必要となります。

Rancherのマネージャ用ホスト
※表にない項目は全てデフォルト設定としてください。

項目 設定内容 備考
Data Center SJC01 - San Jose San Joseサミット中ということで!
Computing Instance 2 x 2.0 GHz Cores -
RAM 4GB -
Operating System Ubuntu Linux 16.04 LTS Xenial Xerus Minimal Install (64 bit) -

Hadoop + Yarn用ホスト1と2
※表にない項目は全てデフォルト設定としてください。

項目 設定内容 備考
Data Center SJC01 - San Jose San Joseサミット中ということで!
Computing Instance 2 x 2.0 GHz Cores -
RAM 8GB -
Operating System Ubuntu Linux 16.04 LTS Xenial Xerus Minimal Install (64 bit) -

SoftLayerだけでなくAWS、Azure等、他のクラウドでも同等の仮想サーバを作成することでRacher環境は構築できます。

Rancher マネージャ用ホストの作成

SoftLayer上に作成したマネージャ用ホストにSSHでログインし、以下のコマンド操作を実施します。

1.パッケージの最新化を行います。

コマンド
# apt-get update

2.wgetコマンドをインストールします。

コマンド
# apt-get install wget

3.最新のDockerパッケージをインストールします。

コマンド
# wget -qO- https://get.docker.com/ | sh

4.Dockerが正しくインストールされていることを確認します。

コマンド
# docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.

上記内容が表示されればDockerが正しくインストールされています。

5.Rancherマネージャコンテナを実行します。

コマンド
# docker run -d -p 8080:8080 rancher/server

6.2分程後にブラウザを起動して、http://マネージャ用ホストのIPアドレス:8080/ にアクセスすると以下の画面が表示されます。

rancher01.png

7.このままでは誰でもアクセスできるため、GitHubのOAuth連携設定を行います。
上部メニューの「ADMIN」-「Access Control」を選択します。

rancher02.png

8.「click here」をクリックします。

rancher03.png

9.GitHubのログイン画面が表示されます。ログインします。
※GitHubのアカウントを持っていない場合は作成しましょう。

rancher04.png

10.「Register a new Application」ボタンをクリックします。
rancher05.png

11.赤枠箇所を入力し、「Register application」ボタンをクリックします。

rancher06.png

12.「Client ID」および「Client Secret」が払い出されます。

rancher07.png

13.GitHubから払い出された「Client ID」および「Client Secret」を入力します。

rancher08.png

14.「Authenticate with GitHub」ボタンをクリックします。

rancher09.png

15.新たにウィンドウが開きます。[Authorize application]ボタンをクリックします。ウィンドウは自動的に閉じます。

rancher10.png

16.Rancher側の画面が切り替わり「GitHub is enabled」と表示されます。

rancher11.png

Rancher Hadoop + Yarn用ホスト1と2の作成

SoftLayer上に作成したHadoop + Yarn用ホストにSSHでログインし、以下のコマンド操作を実施します。

※2台とも同じ手順なので、1台ずつ行ってください。

1.パッケージの最新化を行います。

コマンド
# apt-get update

2.wgetコマンドをインストールします。

コマンド
# apt-get install wget

3.最新のDockerパッケージをインストールします。

コマンド
# wget -qO- https://get.docker.com/ | sh

4.Dockerが正しくインストールされていることを確認します。

コマンド
# docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.

上記内容が表示されればDockerが正しくインストールされています。

5.「Add Host」ボタンをクリックします。

rancher12.png

6.画面が遷移し、赤枠のコマンドを右クリックでコピーします。

rancher13.png

7.Hadoop + Yarn用ホストでコマンドを実行します。

コマンド
# docker run -d --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.0.2 http://RancherマネージャーホストのIPアドレス:8080/v1/scripts/D1D9CDBBC4FA3ED0BDE7:1467284400000:bwATRBPI6sILlbvHhRXQG7dFbw

8.Rancherの画面に戻り、「close」ボタンをクリックします。

rancher14.png

9.上部メニュー「INFRASTRUCTURE」-「Hosts」を選択します。

rancher14.png

10.Hadoop + Yarn用ホストがマネージャ用ホストの管理下に入りました。

rancher15.png

Hadoop + Yarn 環境の構築

1.上部メニュー「CATALOG」を選択します。

2.「Hadoop + Yarn」の「View Details」ボタンをクリックします。

rancher16.png

3.「Launch」ボタンをクリックします。

rancher17.png

4.約5分ほど待つと環境が構築されます。

rancher18.png

5.ブラウザから「Hadoop_namenode-primary_1」があるホストのIPアドレスにポート50070を指定してアクセスします。HDFS managerを確認することができます。

rancher19.png

6.ブラウザから「Hadoop_yarn-resourcemanager_1」があるホストのIPアドレスにポート8088を指定してアクセスします。Yarn Resource managerを確認することができます。

rancher20.png

7.ブラウザから「Hadoop_yarn-nodemanager_1」があるホストのIPアドレスにポート8042を指定してアクセスします。Node Managerを確認することができます。

rancher21.png

8.ブラウザから「Hadoop_jobhistory-server_1」があるホストのIPアドレスにポート19888を指定してアクセスします。Job Historyを確認することができます。

rancher22.png


以上でHadoop + Yarn Docker on SoftLayer by Rancherは完了となります。

Hadoop + Yarn環境をまともに構築すると大変ですが、手っ取り早く環境を構築して試してみるにはRancherが非常に便利です。

また、SoftLayerにはAWSのECS、GCPのGKE、Azure Container Serviceのようなコンテナサービス体系はないので、Rancherのようなコンテナ管理ツールが役立ちます。

Rancherは、kubernetes、Docker Swarm、Mesosといったコンテナクラスタ機能も簡単に構築できる点も非常に良いところです。

Rancherで環境構築をスムーズに行い、あらゆるOSSを試してみましょう!!


参考サイト

12
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
12