最近试着搭建Hadoop集群和Storm集群,先在虚拟机上做个实验。
Storm的安装步骤见Github上提供的安装文档: https://github.com/nathanmarz/storm/wiki/Setting-up-a-Storm-cluster
各系统版本:
VMwareWorkstation 9.0.0
Ubuntu-12.04.1-desktop-i386
hadoop-1.0.4
zookeeper-3.4.3.
zeromq-2.1.4
jdk1.6.0_27
Storm-0.7.0
Python 2.6.6
推荐阅读:
一、利用VM搭建起3个节点的平台
分别命名:nimbus,supervisor1,supervisor2 (nimbus为主节点,在hadoop,zookeeper,storm的配置中都要用到)
在VM中每个节点的Network Adaper都设置为NAT,自动为其分配IP
安装Ubuntu 12.04时,用户名都设置为hadoop
P.S. 事实上,应该尽量将可以安装的东西安装完成后再对虚拟机进行复制,以减少工作量。
二、配置Host(更改两个文件hostname,hosts)
$sudo gedit /etc/hostname,每个虚拟机节点分别改为nimbus,supervisor1,supervisor2
$ifconfig分别获取每个虚拟机的ip信息
nimbus:192.168.128.144
supervisor1:192.168.128.146
supervisor2:192.168.128.145
$sudo gedit /etc/hosts
文件内容中加入
192.168.128.144 nimbus
192.168.128.146 supervisor1
192.168.128.145 supervisor2
三、实现SSH免密码登录
安装ssh,$sudoapt-get install ssh
设置免密码登录,以下是从nimbus到supervisor1,2的无密码登录
$ssh-keygen –t dsa,在.ssh文件夹下创建两个文件id_dsa及id_dsa.pub
把公钥追加到授权的key里面去
$cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys
将公钥复制到其他节点上
在namenode中 cd到.ssh文件夹下输入以下命令:
scp id_dsa.pub supervisor1:~/.ssh/
在supervisor1上执行:cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
supervisor2同上
查看是否成功,ssh supervisor1
四、安装JDK1.6
解压到/usr/lib/Java/jdk1.6.0_27
$sudo gedit/etc/environment
将/usr/lib/java/jdk1.6.0_27加入到PATH当中,用:与之前的隔开
CLASSPATH=..:/usr/lib/java/jdk1.6.0_27/lib
JAVA_HOME=/usr/lib/java/jdk1.6.0_27
五、安装hadoop平台
分别修改以下配置文件
conf/core-site.xml:
<Configuration>
<Property>
<name>fs.default.name</name>
<value>hdfs://nimbus:9000</value>
</Property>
<Property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
</Property>
</Configuration>
conf/hdfs-site.xml:
<Configuration>
<Property>
<name>dfs.replication</name>
<value>1</value>
</Property>
</Configuration>
conf/mapred-site.xml:
<Configuration>
<Property>
<name>mapred.job.tracker</name>
<value> nimbus:9001</value>
</Property>
</Configuration>
conf/masters:
nimbus
conf/slaves:
supervisor1
supervisor2