【mesos:3】mesosのクラスタ化
はじめに
殆ど、情報がなかった。多分、rpmでインストールしたせいと思う。
巷にあふれてる、mesos.confは、間違いなので、きをつけること。
尚、まだまだ、変わる気がする。。。
一応、動いていると思うけど、まだ、検証不足な状態。
環境
物理サーバ 3台 (x86_64)
Centos 6.4 (6.2から、yum updateで、バージョンアップ)
mesos_0.14
- 1台 master + slave
- 2台 slave
Open JDK 6
CDH4.2.1
- 1台 namenode + second namenode + JobTracker + datanode
- 2台 datanode
- replica 1
Client 端末から、サーバの名前解決可能。*1
インストール
- master のIPを設定する。*2 (2台にコピー)
- slave のIP設定をする。(2台にコピー)
- slave,masterの環境設定をする。(2台にコピー)
インストールログ
vi /usr/local/var/mesos/deploy/masters [root@uldata14 ~]# cat /usr/local/var/mesos/deploy/masters 10.29.254.14
vi /usr/local/var/mesos/deploy/slaves [root@uldata14 ~]# cat /usr/local/var/mesos/deploy/slaves 10.29.254.14 10.29.254.15 10.29.254.16
[root@uldata14 ~]# scp /usr/local/var/mesos/deploy/masters root@10.29.254.15:/usr/local/var/mesos/deploy/masters masters 100% 13 0.0KB/s 00:00 [root@uldata14 ~]# scp /usr/local/var/mesos/deploy/slaves root@10.29.254.15:/usr/local/var/mesos/deploy/slaves slaves 100% 26 0.0KB/s 00:00 [root@uldata14 ~]# scp /usr/local/var/mesos/deploy/masters root@10.29.254.16:/usr/local/var/mesos/deploy/masters masters 100% 13 0.0KB/s 00:00 [root@uldata14 ~]# scp /usr/local/var/mesos/deploy/slaves root@10.29.254.16:/usr/local/var/mesos/deploy/slaves slaves 100% 26 0.0KB/s 00:00
[root@uldata14 ~]# cp /usr/local/var/mesos/deploy/mesos-slave-env.sh.template /usr/local/var/mesos/deploy/mesos-slave-env.sh [root@uldata14 ~]# cat /usr/local/var/mesos/deploy/mesos-slave-env.sh # This file contains environment variables that are passed to mesos-slave. # To get a description of all options run mesos-slave --help; any option # supported as a command-line option is also supported as an environment # variable. # You must at least set MESOS_master. # The mesos master URL to contact. Should be host:port for # non-ZooKeeper based masters, otherwise a zk:// or file:// URL. export MESOS_master=10.29.254.14:5050 export MESOS_hadoop_home=/usr/lib/hadoop # Other options you're likely to want to set: export MESOS_log_dir=/var/log/mesos export MESOS_work_dir=/var/run/mesos # export MESOS_isolation=cgroups [root@uldata14 ~]# scp /usr/local/var/mesos/deploy/mesos-slave-env.sh root@10.29.254.15:/usr/local/var/mesos/deploy/mesos-slave-env.sh [root@uldata14 ~]# scp /usr/local/var/mesos/deploy/mesos-slave-env.sh root@10.29.254.16:/usr/local/var/mesos/deploy/mesos-slave-env.sh
[root@uldata14 ~]# vi /usr/local/var/mesos/deploy/mesos-master-env.sh [root@uldata14 ~]# cat /usr/local/var/mesos/deploy/mesos-master-env.sh# This file contains environment variables that are passed to mesos-master. # To get a description of all options run mesos-master --help; any option # supported as a command-line option is also supported as an environment # variable. # Some options you're likely to want to set: export MESOS_log_dir=/var/log/mesos
試し
mesos cluster start
[root@uldata14 ~]# mesos-start-cluster.sh [root@uldata14 ~]# ps aux | grep mesos-master root 17594 0.0 0.0 1393800 13764 ? Sl Oct03 0:39 /usr/local/sbin/mesos-master root 22204 0.0 0.0 107456 936 pts/1 S+ 14:25 0:00 grep mesos-master [root@uldata14 ~]# ps aux | grep mesos-slave root 17633 0.0 0.0 1393632 11620 ? Sl Oct03 0:15 /usr/local/sbin/mesos-slave root 22206 0.0 0.0 107456 940 pts/1 S+ 14:25 0:00 grep mesos-slave [root@uldata15 ~]# ps auxw | grep /usr/local/sbin/mesos-slave root 9425 0.0 0.0 1393632 11648 ? Sl Oct03 0:13 /usr/local/sbin/mesos-slave root 10715 0.0 0.0 107456 944 pts/0 S+ 14:25 0:00 grep /usr/local/sbin/mesos-slave [root@psdata16 ~]# ps aux | grep /usr/local/sbin/mesos-slave root 10645 0.0 0.0 1393632 11636 ? Sl Oct03 0:13 /usr/local/sbin/mesos-slave root 12168 0.0 0.0 107456 944 pts/0 S+ 14:26 0:00 grep /usr/local/sbin/mesos-slave
[root@uldata14 ~]# su - hadoop [hadoop@uldata14 ~]$ /usr/lib/hadoop/bin/start-hadoop-pssh.sh /usr/lib/hadoop/bin/start-hadoop-pssh.sh: line 4: /usr/lib/hadoop/bin/hadoop-config.sh: そのようなファイルやディレクトリはありません Starting Hadoop namenode: [ OK ] starting namenode, logging to /var/log/hadoop-hdfs/hadoop-hdfs-namenode-uldata14.hadoop.local.out Connection to uldata14.hadoop.local closed. Starting Hadoop secondarynamenode: [ OK ] starting secondarynamenode, logging to /var/log/hadoop-hdfs/hadoop-hdfs-secondarynamenode-uldata14.hadoop.local.out Connection to uldata14.hadoop.local closed. Starting Hadoop jobtracker daemon (hadoop-jobtracker): starting jobtracker, logging to /var/log/hadoop-0.20-mapreduce/hadoop-hadoop-jobtracker-uldata14.hadoop.local.out Connection to uldata14.hadoop.local closed. [ OK ] [1] 14:35:13 [SUCCESS] uldata14.hadoop.local Starting Hadoop datanode:[ OK ] starting datanode, logging to /var/log/hadoop-hdfs/hadoop-hdfs-datanode-uldata14.hadoop.local.out [2] 14:35:13 [SUCCESS] uldata15.hadoop.local Starting Hadoop datanode:[ OK ] starting datanode, logging to /var/log/hadoop-hdfs/hadoop-hdfs-datanode-uldata15.hadoop.local.out [3] 14:35:13 [SUCCESS] psdata16.hadoop.local Starting Hadoop datanode:[ OK ] starting datanode, logging to /var/log/hadoop-hdfs/hadoop-hdfs-datanode-psdata16.hadoop.local.out [1] 14:35:15 [SUCCESS] uldata14.hadoop.local Starting Hadoop tasktracker daemon (hadoop-tasktracker): starting tasktracker, logging to /var/log/hadoop-0.20-mapreduce/hadoop-hadoop-tasktracker-uldata14.hadoop.local.out [2] 14:35:15 [SUCCESS] uldata15.hadoop.local Starting Hadoop tasktracker daemon (hadoop-tasktracker): starting tasktracker, logging to /var/log/hadoop-0.20-mapreduce/hadoop-hadoop-tasktracker-uldata15.hadoop.local.out [3] 14:35:15 [SUCCESS] psdata16.hadoop.local Starting Hadoop tasktracker daemon (hadoop-tasktracker): starting tasktracker, logging to /var/log/hadoop-0.20-mapreduce/hadoop-hadoop-tasktracker-psdata16.hadoop.local.out
Hadoop のJob をスタート
[hadoop@uldata14 ~]$ hadoop jar /usr/lib/hadoop-0.20-mapreduce/hadoop-examples.jar pi 3 100
WebUI の説明は、ここ。Mesos - Cluster & Framework Mgmt