表明。hadoop-env.sh文件所在的目录,并对hadoop-env.sh文件做一些修改。图11--core-site.xml文件中需要配置的内容。_阿里云伪分布式hadoop集群搭建过程">
赞
踩
各位大佬、热爱大数据开发的朋友们:大家好!在上篇我已详细介绍了如何在阿里云ECS实例上搭建Hadoop伪分布式环境的前几步:JDK的安装、JDK环境变量的配置、Hadoop的安装与Hadoop环境变量的配置,下篇将重点讲解和分享Hadoop相关文件配置及SSH免密登录的配置,最终带你踏上启动Hadoop的成功之路。
在测试验证Hadoop安装成功之后,就可以对Hadoop相关文件进行配置。那么,首先,需要修改Hadoop配置文件core-site.xml。当然想要修改它之前,就应该清楚core-site.xml文件位于服务器哪个目录下?这里这个文件是在我的阿里云ECS "/opt/hadoop-3.3.1/etc/hadoop/core-site.xml"这个路径下,如下图所示:
(图9--core-site.xml文件的目录)
(1) 然后,需要执行以下命令,进入编辑页面。
vim /opt/hadoop-3.3.1/etc/hadoop/core-site.xml ,具体可参考图10
(图10--进入core-site.xml的编辑页面)
(2)输入i
,进入编辑模式。
(3)在<configuration></configuration>
节点内,插入如下内容。具体可参考图11
<property>
<name>hadoop.tmp.dir</name>
<value>file:/opt/hadoop-3.3.1/etc/hadoop/tmp</value>
<description>location to store temporary files</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
(图11--core-site.xml文件中需要配置的内容)
(4)按Esc
,退出编辑模式,并输入:wq
保存并退出。
其次,需要修改Hadoop配置文件hdfs-site.xml。
(1)执行以下命令,进入编辑页面。(具体的编辑页面如图12所示)
vim /opt/hadoop-3.3.1/etc/hadoop/hdfs-site.xml
(图12--hdfs-site.xml文件的编辑页面)
(2)输入i
,进入编辑模式。
(3)在<configuration></configuration>
节点内,插入如下内容。(如图13所示)
(图13--对namenode,datanode进行配置)
(4)按Esc
,退出编辑模式,并输入:wq
后保存并退出。到此,Hadoop的相关文件的配置就完成了。
再次,还需要配置SSH免密登录。
(1)
执行以下命令,创建公钥和私钥。
ssh-keygen -t rsa
(2)因为,咱们的目标是实现SSH免密登录,因此,只需要一路回车(连密码都无需输入,直接按Enter就会默认为空密码);当回显信息如下所示,表示创建公钥和私钥成功。(具体详见图14)
(图14--创建公钥和私钥的过程)
(3)执行以下命令,将公钥添加到authorized_keys文件中。请注意!!!要将公钥添加到authorized_keys文件中的话,得保证你的服务器上有这个文件,我这里先去查找了一下,如下图所示:
(图15--验证服务器上相应的目录是否有authorized_keys文件)
最后,也是极为关键的一步:启动Hadoop。
(1)执行以下命令,初始化namenode
。
hadoop namenode -format
(2)依次执行以下命令,启动Hadoop。
start-dfs.sh
很不幸,突然报错了,具体报错的代码提示如下:
有句古话说的好,叫“咱不惹事,但也不怕事”,所以,遇到问题一定要冷静思考。接下来我来分析一下出现这6个ERROR 的原因及解决的办法,结合第1和第2个ERROR后面的英文提示信息:正在试图用root 用户对hdfs 的name节点进行操作,但那里却没有定义一个hdfs 的name节点的用户。看到这里应该不难理解是需要在hadoop-env.sh文件里,配置一下相关参数即可。具体的操作步骤如下图:
(1)找到hadoop-env.sh文件所在的目录。
(2)查看hadoop-env.sh文件所在的目录,并对hadoop-env.sh文件做一些修改。
保存完对hadoop-env.sh文件的配置后,重新返回命令行模式并再次执行"hadoop namenode -format" ,我们可以看一下输出的INFO里面的内容提示,当看到下图中的" 2024-01-06 15:31:34,348 INFO common.Storage: Storage directory /opt/hadoop-3.3.1/etc/hadoop/tmp/dfs/name has been successfully formatted."---->表明name node已被成功地初始化。
<!-----未完待续,请大家继续关注后续内容,谢谢!>
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。