16,Hadoop运行环境变量设置
$ cd /etc/hadoop
$ sudo vi hadoop-env.sh
将export JAVA_HOME=/usr/lib/jvm/java-6-sun注释掉(前面加#),其后添加一行
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386/
17, 在/etc/hadoop目录下添加hadoop云计算系统设置文档-> core-site.xml
$ sudo vi core-site.xml
内容如下:
<?xml version="1.0"?>
<!-- core-site.xml -->
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hdp1:9000</value>
</property>
</configuration>
18, 在/etc/hadoop目录下添加HDFS分布式文档系统设置文档-> hdfs-site.xml
赋予hadoop访问/var/run目录的权限
$ sudo usermod -a -G root hadoop (注: hadoop加入root组, 也可用gpasswd -a hadoop root命令,均需注销再登录后生效)
$ sudo chmod g+w /run /var/run (注: 不要加-R选项, /run/sshd目录的属性更改后会导致ssh无法连接, 另本命令需在每次机器重启后执行一次, 可通过在/etc/init.d/rc.local文件中添加该命令自动进行 )
创建目录
$ mkdir -p ~/hadoop/dfs/data (注:无须创建~/hadoop/dfs/name,在格式化HDFS文档系统时会自动创建,否则格式化会失败)
再创建文档
$ sudo vi hdfs-site.xml
内容如下:
<?xml version="1.0"?>
<!-- hdfs-site.xml -->
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/home/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoop/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
19, 在/etc/hadoop目录下添加Map/Reduce程序设置文档-> mapred-site.xml
$ sudo vi mapred-site.xml
内容如下:
<?xml version="1.0"?>
<!-- mapred-site.xml -->
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>hdp1:9001</value>
</property>
</configuration>
注:以下各步创建及创建其他主机
20,复制VDI文件创建其他主机
1)关闭hdp1
2)复制hdp1.vdi为hdp2.vdi, hdp3.vdi
3)更改虚拟硬盘之UUID:
> cd "\Program Files\Oracle\VirtualBox"
> VBoxManage internalcommands sethduuid g:\vbox\hdp2.vdi
> VBoxManage internalcommands sethduuid g:\vbox\hdp3.vdi
4)启动virtualbox创建虚拟主机,分别选择已存在的硬盘hdp2.vdi和hdp3.vdi,网络配置应和hdp1一样。
21,启动所有虚拟主机,配置hdp2和hdp3的第二块网卡的静态IP,配置hostname
注:以下启动云计算系统
22,格式化hadoop云计算系统
$ hadoop namenode -format (若已存在~/hadoop/dfs/name目录,该步可能出错)
$ sudo chown -R hadoop:hadoop /home/hadoop/dfs/name/current/
23,启动云计算系统
$ start-all.sh
24,使用浏览器查看hadoop运行状况
:50070/ (NameNode运行状况,点击其中的“Live Nodes”可查看各DataNode的运行状况)
:50030/ (查看JobTracker的运行状况)
25,关闭云计算系统
$ stop-all.sh