【Hadoop】在云服务器上部署Hadoop2.7.1伪分布式集群
创始人
2024-03-05 10:28:02

文章目录

  • 一、准备Hadoop压缩包并安装
    • 1、安装Hadoop
      • (1)准备好hadoop压缩包
      • (2)安装hadoop
      • (3)查看是否安装成功
    • 2、将hadoop添加到环境变量
      • (1)在文件末尾添加以下内容
      • (2)保存文件,刷新配置
  • 二、伪分布式配置文件设置
    • 1、修改 `hadoop-env.sh`
    • 2、修改`core-site.xml`
    • 3、修改`hdfs-site.xml`
    • 4、拷贝`mapred-site.xml.template`文件内容并命名为`mapred-site.xml `
    • 5、修改`mapred-site.xml`
    • 6、修改 `yarn-site.xml`
  • 三、启动Hadoop集群
    • 1、关闭防火墙
    • 2、格式化HDFS(namenode)第一次使用时要格式化
    • 3、启动HDFS
    • 4、启动YARN
    • 5、访问HDFS的WEB管理页面
    • 6、访问YARN的WEB管理页面
    • 7、停止HDFS和YARN服务
  • 四、遇到问题
    • NameNode启动报错:Cannot assign requested address
    • 重新格式化HDFS
          • (1)删除残留文件
          • (2)手动创建配置文件
          • (3)重新格式化

我用到的资源

  • 华为云轻量服务器一台
    img-XoUqom0N-1669783034330
  • CentOS8
  • JDK1.8
  • Haddop-2.7.1.tar.gz
  • SecureCRT(用来远程连接)



一、准备Hadoop压缩包并安装


1、安装Hadoop

(1)准备好hadoop压缩包

image-20221129193925158


(2)安装hadoop

tar -zxvf hadoop-2.7.1.tar.gz -C /usr/local # 将hadoop安装到/usr/local目录下

image-20221129194246510


(3)查看是否安装成功

/usr/local/hadoop-2.7.1/bin/hadoop version # 因为没有设置软链接,所以只能通过bin来查看
Hadoop 2.7.1
Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r 15ecc87ccf4a0228f35af08fc56de536e6ce657a
Compiled by jenkins on 2015-06-29T06:04Z
Compiled with protoc 2.5.0
From source with checksum fc0a1a23fc1868e4d5ee7fa2b28a58a
This command was run using /usr/local/hadoop-2.7.1/share/hadoop/common/hadoop-common-2.7.1.jar

image-20221129200341812



2、将hadoop添加到环境变量

vim /etc/profile

(1)在文件末尾添加以下内容

export HADOOP_HOME=/usr/local/hadoop-2.7.1
# PATH在安装jdk时已经设置,这里需要添加上HADOOP的路径
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

image-20221129210103494


(2)保存文件,刷新配置

# 刷新配置文件
source /etc/profile
# 测试是否生效
hadoop version

image-20221129210243717




二、伪分布式配置文件设置

先进入haoop的配置文件目录

 cd /usr/local/hadoop-2.7.1/etc/hadoop/ #/usr/local/hadoop-2.7.1为我的Hadoop的安装路径

image-20221129195039476


1、修改 hadoop-env.sh

修改文件中的export JAVA_HOME=${JAVA_HOME},将JAVA_HOME设置为你JDK的路径

vim  hadoop-env.sh
export JAVA_HOME=/usr/local/java/jdk1.8.0_341

image-20221129201246376


2、修改core-site.xml

vim core-site.xml

在文件末尾的之间添加以下内容

注意:这里的地址千万别用外网地址,因为云服务器中只有一块内网网卡,外网地址是服务商分配的



fs.defaultFS
hdfs://192.168.0.109:9000



hadoop.tmp.dir
/usr/local/hadoop-2.7.1/tmp

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4Wk8xcZR-1669779228261)(../MDimages/Hadoop%E4%BC%AA%E5%88%86%E5%B8%83%E5%BC%8F%E9%9B%86%E7%BE%A4%E9%83%A8%E7%BD%B2_images/image-20221130105228595.png)]


3、修改hdfs-site.xml

vim hdfs-site.xml

在文件末尾的之间添加以下内容



dfs.replication
1

在这里插入图片描述


4、拷贝mapred-site.xml.template文件内容并命名为mapred-site.xml

# 拷贝
cp mapred-site.xml.template mapred-site.xml

image-20221129204611336


5、修改mapred-site.xml

vim mapred-site.xml

在文件末尾的之间添加以下内容



mapreduce.framework.name
yarn

img-Vo3uimgk-1669779228264


6、修改 yarn-site.xml

vim yarn-site.xml

在文件末尾的之间添加以下内容



yarn.resourcemanager.hostname
192.168.0.109



yarn.nodemanager.aux-services
mapreduce_shuffle

在这里插入图片描述




三、启动Hadoop集群

1、关闭防火墙

# Hadoop启动需要使用很多端口,如果不关闭防火墙会出现无法连接的问题
systemctl stop firewalld

注意:需要root权限才能关闭

在这里插入图片描述



2、格式化HDFS(namenode)第一次使用时要格式化

hadoop namenode -format

image-20221129210901762


3、启动HDFS

# 启动hdfs
start-dfs.sh
#注意在启动过程要多次输入yes和root的密码

在这里插入图片描述

# 查看当前进程
jps

image-20221129225507696


4、启动YARN

# 启动YARN
start-yarn.sh

image-20221129230433932

# 查看当前进程
jps

image-20221129230344998

当DFS和YARN的进程都启动时,应存在5个进程

ResourceManager
SecondaryNameNode
DataNode
NodeManager
NameNode

5、访问HDFS的WEB管理页面

启动Hadoop后,通过访问50070端口可以进入HDFS的管理页面
在这里插入图片描述


6、访问YARN的WEB管理页面

启动Hadoop后,通过访问8088端口可以进入YARN的管理页面
在这里插入图片描述


7、停止HDFS和YARN服务

image-20221129235220382




四、遇到问题


NameNode启动报错:Cannot assign requested address

当我启动HDFS服务后发现少了一个NameNode进程,于是查看日志文件发现报BindException ,通过百度发现,原来是因为我在core-site.xml文件中设置的defaultFS值是外网IP,而云服务器只有一块内网网卡,外网IP是设置在云服务提供商的公网网关的,通过NAT技术映射到内网网卡上,所以NameNode无法访问该地址。
在这里插入图片描述

解决办法:

defaultFS值设置为服务器的内网IP


重新格式化HDFS

NameNode在第一次格式化失败后,需要删除格式化失败残留文件,才能重新进行格式化

(1)删除残留文件
rm -rf /usr/local/hadoop-2.7.1/tmp          # 删除hdfs缓存文件
rm -rf /usr/local/hadoop-2.7.1/dfs/name		# 删除NameNode缓存目录
rm -rf /usr/local/hadoop-2.7.1/dfs/data		# 删除DataNode婚车目录
rm -rf /usr/local/hadoop-2.7.1/logs			# 删除日志文件
(2)手动创建配置文件
mkdir -p /usr/local/hadoop-2.7.1/tmp          	# 创建hdfs缓存文件
mkdir -p /usr/local/hadoop-2.7.1/dfs/name		# 创建NameNode缓存目录
mkdir -p /usr/local/hadoop-2.7.1/dfs/data		# 创建DataNode婚车目录
mkdir -p /usr/local/hadoop-2.7.1/logs			# 创建日志目录
(3)重新格式化
hadoop namenode -format

相关内容

热门资讯

猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...