
Hadoop 部分
启动命令: start-all.sh
停止命令: stop-all.sh
Hadoop 运行
增加集群的存储量 / 节点
如果只增加集群的存储量,建议增加 Hadoop datanode节点。
步骤:
1、停掉集群包括 Hadoop 和 hbase,当然也可以不停掉,直接在 hadoop namenode的配置文件 Slave 里添加
新节点的 host,别忘了在 host 文件里也要添加新添加的 host 名。
2、执行 bin/start-all.sh 启动集群
3、以下选择一种
1) 如果不手动作平衡,插入的数据将会放在新添加的节点上。以趋于平衡。
2) 如果手动平衡,则 start-balancer.sh 和调用 bin/sHadoop balancer 命令相似,也可加参数 -threshold 5
( threshold 是平衡阈值,默认是 10% ,值越低各节点越平衡,但消耗时间也更长)。 在使用
start-balancer.sh时,如果在 hdfs-site.xml 里面没有配置 dfs.balance.bandwidthPerSec,那么集群 hdfs 内
部 默 认 使 用 1M/S 的 速 度 移 动 数 据 (so slowly...) , 我 们 可 以 通 过 在 hdfs-site.xml 里 面 配 置
dfs.balance.bandwidthPerSec 来加快 balance 的速度。 最开始我们配置的是 20m/S ,然后结果是导致
job 运行变得不稳定, 出现一些意外的长 map 单元,某些 reduce 时间处理变长 (整个集群负载满满的情
况下,外加 20m/s 的 balance),在前天的中国 hadoop 年会上听淘宝调整的为 10m/s,需要调整后实验,
看看情况如何。 另外再修改 dfs.balance.bandwidthPerSec 参数后,需要在 namenode上运行 stop-dfs.sh
start-dfs.sh 重启 hdfs 生效。我们可以通过 stop-balancer.sh 停掉平衡任务。作完平衡后,启动 hbase,
正常。 果 cluster 设置的副本数不为 3(默认),需要先运行命令 hadoop fs –setrep [-R] <path> ;
进行设置一个文件的副本系数。如果默认为 3 则不必。如果执行完平衡以后才改变副本数,会将新加
入到新节点上的所有数据删除。 dfs.replication 设置的副本系数只在文件系统写入时有效,并不影响
在新添加节点时,平衡时的副本数;
另外:由于还有 hbase 数据库,因此,在运行完平衡以后, 将 hbase下的 .META. 文件删除(防止出错) ,
启动 hbase,执行 hbase org.jruby.Main add_table / 表名 来进行 hbase表恢复;
Hadoop1 升级
1. 运行 dfsadmin -upgradeProgress status 检查是否存在备份 如果是第一次升级 就不存
在备份 ( 在升级 Hadoop 前,如果已经存在备份,需要先结束 finalize 它。 )
2. 备份 dfs.namenode.dir 下文件 ,同时要备份下 hdfs 的文件目录的元数据信息 :
bin/hadoop fsck / -files -blocks -locations > dfs-v-old-fsck-1.log