2.马士兵_hadoop初识

原创
2017/04/08 12:08
阅读数 629

1.namenode启动:hadoop-daemon.sh start namenode,datanode启动:hadoop-daemon.sh start datanode

2.查看namenode状态信息:hdfs dfsadmin -report|more;查看进程:netstat -ntlp;可以打开web页查看集群情况:http://192.168.56.100:50070;其中utilities可以查看目录树block情况,可以查看启动日志,如果出问题了可以看看。

3.默认hadoop会把数据放到tmp目录下面,所以可能会被清理掉。

4.namenode关闭:hadoop-daemon.sh stop namenode,datanode关闭:hadoop-daemon.sh stop datanode

5./usr/local/hadoop/etc/hadoop/slaves 这个文件集中管理着相关的子节点信息。

6.如果考虑管理的datanode节点很多,就要集中式的管理,那么就在/usr/local/hadoop/etc/hadoop/slaves中配置相关datanode节点后,namenode调用后直接发送命令给相应机器即可。命令是:start-dfs.sh,secondaaryNamenode启动就启动吧。

7.每次启动这么多slave机器,自动密码如何设置呢?我们把master生成的公钥传给slave,root用私钥登录后,slave用公钥可以解密成功,那就不需要在输入密码了。

cd ;.ssh;ssh-copy-id slave1/slave2/slave3;ssh slave1直接登录成功。start-dfs.sh,stop-dfs.sh。如果防火墙没开的话应该就可以控制启动关闭了。如果slave数量很大,用shell脚本1次性copy。

8.hdfs就看成一块大硬盘,hadoop fs -ls /,可以查看所有文件系统的。大部分命令和linux使用差不多。如删除文件,hadoop fs -rm /hello.txt。如下面这些常用命令的使用:

9.如何修改文件保存的block数量呢?怎么查这些配置文件呢?

在hadoop的安装包下面有doc可以查看:F:\BaiduNetdiskDownload\hadoop-2.7.3\share\doc\hadoop\index.html,如查询dfs.replication后修改后重启集群,上传新文件就会发现是2块了。

10.下面我们测试如果kill了slave3,那block能否自动复制到slave1上呢,自动冗余?

为了观察方便,我们把master的心跳检查调小点。修改hdfs-site.xml的属性后(dfs.namenode.heartbeat.recheck-interval),重启。stop slave3后,block1节点确实自动从slave2复制到slave1上了。原来是在slave2和slave3上。

实验后发现slave3启动后也没有删掉刚才的块。

总结:

1.hadoop一台机器可以带动上百上千台机器,很容易动态扩展。hdf是主流的,只不过在上的计算框架和引擎竞争比较多。

2.伪分布式程序可以作为单机的java开发测试使用,部署生产效果理论相似。动态扩展只要core-site.xml中指定master地址就能自动发现。

展开阅读全文
打赏
0
1 收藏
分享
加载中
更多评论
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部