hadoop系列之三:Hadoop2.x安装与实验

1.       下载并解压Hadoop2.x

1)     在本地下载压缩包,用rz上传。

 

2)     解压:sudo tar xfvz Hadoop-2.10.1.tar.gz

 

2.       配置伪分布式Hadoop服务

1)       配置etc/hadoop/core-site.xml

 

2)       配置etc/hadoop/hdfs-site.xml

最后,创建我们配置文件里的目录。

 

3)       配置JAVA_HOME

进入文件hadoop-env.sh

加入路径。

验证结果。

 

遇到的问题如下图:

可能是由于安装openjdk时的路径和各种教程不太一样。这里在加入路径时验证出现问题。观察报错信息,是这个文件不存在,自己cd一下确实。这里的路径是我用echo$JAVA_HOME直接复制的。看来不能直接用。

 

然后根据前面写的查找java路径老老实实查完再放到文件里。还是报错,发现路径后面重复了两次/bin/java。Ok,那我配置路径时把这两个删掉,然后,就成功了!

 

4)       配置免密登录。

过程和我配置本机免密登录虚拟机一样

可以看到authorized_keys多了一个wxy@vitrual_machine。(上面是我的本机用户名starmon)

 

验证成功。

保险起见,再来一波权限。

 

小插曲,这里已经给自己的虚拟机换了名字。

 

3.       启动并验证Hadoop服务

1)       格式化数据节点

 

遇到的问题:

第一次遇到问题,是hdfs-site的格式问题,检查该文件解决。

 

第二次遇到不能创建节点的问题:

 

不能创建目录。查看权限,都在root,而现在我的用户是wxy。

 

修改赋予权限。之后就成功了。

 

 

2)       启动Hadoop服务

 

3)       访问hadoop端口

 

4)       关闭Hadoop服务

 

如果启动时遇到类似的反馈:

 

就用sbin/stop-dfs.sh先停止再重启。

如果依然无法启动,删除/tmp,重新赋予权限,重新格式化再来一遍。

4.       HDFS操作

1)       配置变量

 

2)       查看hdfs根文件夹结构

这里的报错主要参考了该文:Hadoop: 主节点9000端口拒绝访问Call From hadoop3/192.168.91.132 to hadoop1:9000 failed on connection exception

出现了问题后,先检查防火墙,之前已经设置禁止开机启动了,发现其实没什么问题。然后检查core-site.xml文件,因为我在中途改了一下主机名,推测是这个原因,修改原来的localhost为我的主机。

 

 

嗯,还是报错,好吧。查找是不建议用这种下划线命名,直接编辑为ip好了。但之后还是乖乖把主机名改成了短线“-”。

 

之后再尝试,查看,这时候文件夹里什么都没有

 

3)       创建文件夹/data 或 /tmp/data

4)       用-ls查看创建结果

 

5)       将本地文件/data/smalllog.txt上传至hadoop系统下/data/smalllog.txt

6)       用-ls查看刚刚创建的hadoop文件

本地文件在/home/wxy/myfile文件夹下。

 

上传文件用put,与copyFromLocal一样。

 

7)       查看该文件的最后1KB内容

 

8)       重命名该文件为/data/oldlog.txt

用mv,文件到文件夹是移动,文件到文件是重命名。

 

9)       将该文件下载到本地/data/oldlog.txt

用get,与之相对应的就是copyToLocal

 

10)   删除hadoop文件/data/oldlog.txt

使用rm删除,加-skipTrash跳过回收站删除文件

 

11)   删除hadoop文件夹/data

删除文件夹类似,这里是建议我用rm -r哈哈。

 

12)   删除本地文件/data/oldlog.txt

 

posted @ 2021-12-18 13:54  piukaty  阅读(171)  评论(0编辑  收藏  举报