Hadoop(CDH4发行版)集群部署(四)
#现在可以尝试关闭一台datanode,然后把刚才的测试文件拉取出来,再算一次MD5看是否一样
09
sudo -u hdfs hdfs dfs -get /tmp/test_10G_file /tmp/
10
md5sum /tmp/test_10G_file
三、yarn集群开启
hadoop除了hdfs用于大数据的分布式存储,还有更重要的
组件,分布式计算(mapreduce)。现在我们来把mapreducev2 yarn集群启动
1.在主服务器把resourcemanager服务起来(192.168.1.1)
1
/etc/init.d/hadoop-yarn-resourcemanager start
2.把所有nodemanager服务启动
1
#还是登陆saltstack master,执行
2
salt -v "dn*" cmd.run "/etc/init.d/hadoop-yarn-nodemanager start"
3.查看yarn 任务追踪界面(http://192.168.1.1:9081/),看是否所有nodes都已加入
4.hadoop自带有基准测试的mapreduce实例,我们利用它来测试yarn环境是否正常
01
#TestDFSIO测试HDFS的读写性能,写10个文件,每个文件1G.
02
su hdfs -
03
hadoop jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-client-jobclient-2.0.0-cdh4.2.1-tests.jar TestDFSIO -write -nrFiles 10 -fileSize 1000
04
#Sort测试MapReduce
05
##向random-data目录输出数据
06
hadoop jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar randomwriter random-data
07
##运行sort程序
08
hadoop jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar sort random-data sorted-data
09
##验证sorted-data 文件是否排好序
10
hadoop jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-client-jobclient-2.0.0-cdh4.2.1-tests.jar testmapredsort -sortInput random-data \
11
Hadoop集群的管理
一、datanode & nodemanager 节点加入
1.修改hosts表,譬如有节点192.168.1.103需要加入
1
vim /opt/hadoop_scripts/share_data/resolv_host
2
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
3
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
4
192.168.1.1 nn.dg.hadoop.cn
5
192.168.1.2 nn2.dg.hadoop.cn
6
192.168.1.100 dn100.dg.hadoop.cn
7
192.168.1.101 dn101.dg.hadoop.cn
8
192.168.1.102 dn102.dg.hadoop.cn
9
192.168.1.103 dn103.dg.hadoop.cn
2.修改hostname,同步脚本目录,并执行部署
1
mkdir –p /opt/hadoop_scripts
2
rsync –avz 192.168.1.1::hadoop_s /opt/hadoop_scripts
3
sh /opt/hadoop_scripts/deploy/CreateDatanode.sh
4
sh /opt/hadoop_scripts/deploy/AddHostname.sh
3.开启服务
1
/etc/init.d/hadoop-hdfs-datanode start
2
/etc/init.d/hadoop-yarn-nodemanager start
二、修改hadoop配置文件
一般在一个hadoop集群中维护一份hadoop配置,这份hadoop配置需要分发到集群中各个成员。这里的做法是 salt + rsync
1
#修改namenode主服务器的hadoop配置文件 /etc/hadoop/conf/,然后执行以下命令同步到集群中所有成员
2
sync_h_conf
3
#脚本目录也是需要维护的,譬如hosts文件/opt/hadoop_scripts/share_data/resolv_host,修改后执行以下命令同步到集群中所有成员
4
sync_h_script