欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

程序员文章站 2022-05-17 08:14:16
...

1、前言

此教程是在虚拟机中安装及配置单机伪分布式Hadoop,虽说是保姆级,但是太基本的也不会写出来,不然太费精力了。

本教程所涉及的重要信息:

  • jdk版本:jdk1.8.0_221
  • jdk路径:/usr/java/jdk1.8.0_221
  • Hadoop版本:hadoop-2.7.7
  • Hadoop路径:/usr/hadoop/hadoop
  • IP地址:192.168.3.132

2、准备工作

(Putty 和 flashfxp如果是安装桌面版的,可以装VM提供的tools,来实现复制、粘贴及文件拖拽传输)

  • Putty (免安装,ssh连接虚拟机,可以使用鼠标右键粘贴) 点击下载
  • FlashFXP(免安装,传输文件至虚拟机中) 点击下载

3、安装ContOS 7

安装教程可以点击下面连接,跳转到我另一个教程中
VMware虚拟机安装系统(ContOS 7)教程

4、联网及使用Putty连接虚拟机系统

完成后,接下来就需要联网了,由于是最小安装,所以,联网还需要点操作,具体点击下面链接
修改网卡信息及安装net-tools

下载前文提到的 Putty 工具,解压进入文件夹,双击图示.exe文件运行Putty
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)
这里的IP根据自己虚拟机ContOS的IP来填写
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)
点击open后,会弹出一个窗口,点击“是”就可以了。(无图)
接下来输入账号密码登录,如下图
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)Putty可以在win系统复制后,鼠标右键粘贴

5、安装vim编辑器

安装之前最好先更新一下yum,命令如下:

$ yum -y update 

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

可以需要等待比较久一点,耐心等待。完成后,再执行vim安装,命令如下:

$ yum install vim

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

6、修改节点名称,添加域名映射

将节点名称写入/etc/hostname,如果没有装vim,使用vi编辑器就可以了

$ vim /etc/hostname

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)
编辑文件的方式都是这样,后面不再详细叙述

将节点的 IP 地址与主机名写入/etc/hosts 中,完成域名映射的添加

$ vim /etc/hosts

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

例如:192.168.3.132 Master
(IP 地址可通过 ip addr 命令或ifconfig 查询)
男默女泪系列:Hadoop保姆级安装教程(ContOS 7):wq保持并退出后,重启虚拟机
关机后,putty自然会强制退出,重新连接上去就可以了。可以看到机器名字已经改了。
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

7、设置SSH免密登录

在之后操作集群的时候我们需要经常登录主机和从机,所以设置SSH免密登录时有必要的。

安装 SSH

$ yum install openssh-server

如果没有就等待它安装就可以了,如果有询问,输入y回车即可。
如果出现如下图,说明已经安装了。
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)安装后,可以使用如下命令登陆本机ssh localhost
输入如下代码:

$ ssh localhost

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)但这样登陆是需要每次输入密码的,我们需要配置成SSH 无密码登陆比较方便。
首先退出刚才的 ssh,就回到了我们原先的终端窗口,然后利用 ssh-****** 生成**,并将**加入到授权中,命令如下:

$ exit
$ ssh-****** -t rsa

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)这样就可以生成**对:id_rsa和id_rsa.pub,默认存储在~/.ssh目录下。

接下来:把id_rsa.pub追加到授权的key里面去。

$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)
这样就完成了ssh的配置。

8、上传JDK和Hadoop

下载前面提到的FlashFXP工具,然后解压。
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)同样的把hadoop文件传输到刚创建的hadoop文件夹下

9、安装java环境

点击以下链接,跳转到我另一篇博文中:
JDK配置教程

10、安装及配置Hadoop

解压hadoop文件

$ cd /usr/hadoop/                 #进入到hadoop目录下
$ ls                              #查看是否有hadoop-2.7.7.tar.gz文件
$ tar -zxvf hadoop-2.7.7.tar.gz   #解压文件

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)
进入hadoop文件夹,查看文件是否正确

$ cd /usr/hadoop/hadoop-2.7.7/
$ ls

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)
Hadoop 的配置文件位于/usr/hadoop/hadoop-2.7.7/etc/hadoop/ 中,伪分布式需要修改 3 个配置文件 hadoop-env.sh、core-site.xml 和 hdfs-site.xml。(通过vim 或vi编辑配置文件)。

接下来,确保你现在是在此目录下的,因为后面的命令需要在此目录下执行,路径才不会有问题。
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)
① hadoop-env.sh 中配置 JAVA_HOME:

$ vim etc/hadoop/hadoop-env.sh

修改export JAVA_HOME变量的值

export JAVA_HOME=/usr/java/jdk1.8.0_221
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

② 修改 core-site.xml 文件:
这个是核心配置文件我们需要在该文件中加入HDFS的URI和NameNode的临时文件夹位置,这个临时文件夹在下文中会创建。

$ vim etc/hadoop/core-site.xml

在文件末尾的configuration标签中添加代码如下:

<configuration>  
<property>  
    <name>fs.default.name</name>  
    <value>hdfs://Master:9000</value>
</property>  
<property>  
    <name>hadoop.tmp.dir</name>  
    <value>/usr/hadoop/tmp</value> 
    <description>Abase for other temporary directories.</description>
</property>  
</configuration>  

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

③ 修改 hdfs-site.xml 文件:

$ vim etc/hadoop/hdfs-site.xml
<configuration>  
<property>  
    <name>dfs.name.dir</name>  
    <value>/usr/hadoop/hdfs/name</value>
</property>  
<property>  
    <name>dfs.data.dir</name>  
    <value>/usr/hadoop/hdfs/data</value>
</property>  
<property>  
    <name>dfs.replication</name>  
    <value>1</value>  
</property>  
</configuration>  

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

  • 格式化NameNode,只有第一次启动需要格式化
    (确认是在hadoop-2.7.7这个目录下)
$ ./bin/hdfs namenode -format

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

切记,NameNode 格式化成功后下次启动 hdfs 时无需再次格式化,只需执行start-dfs.sh 即可。

  • 启动Hadoop
    (确认是在hadoop-2.7.7这个目录下)
    接下来我们启动Hadoop:
$ ./sbin/start-dfs.sh

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

  • 执行 jps 命令查看服务
$ jps

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

  • 启动 yarn
$ ./sbin/start-yarn.sh

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

  • 执行 jps 命令查看服务
$ jps

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)
到此我们就完成hadoop的配置和启动了。
然后我们到本机的浏览器进入Hadoop的管理页面。

http://192.168.3.132:50070/
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)男默女泪系列:Hadoop保姆级安装教程(ContOS 7)看到这里,可能你就慌了。别慌,问题不大。

11、关闭防火墙

$ systemctl stop firewalld       #关闭防火墙服务
$ systemctl disable firewalld    #关闭防火墙服务开机不启动

男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

12、进入Hadoop管理页面

在本机再次访问以下地址:
访问 http://192.168.3.132:50070/
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)
访问 http://192.168.3.132:8088/cluster
男默女泪系列:Hadoop保姆级安装教程(ContOS 7)

如果依旧有错误,请检查一下这 hadoop-env.sh、core-site.xml、hdfs-site.xml 三个文件的配置是否有误
如果需要修改,修改后,需要重新格式化

$ rm -rf /usr/hadoop/hdfs         #删除旧hdfs文件夹
$ rm -rf /usr/hadoop/tmp          #删除旧tmp临时文件夹
$ rm -rf /usr/hadoop-2.7.7/logs   #删除旧logs日志文件夹
$ cd /usr/hadoop/hadoop-2.7.7     #进入/usr/hadoop/hadoop-2.7.7目录
$ ./bin/hdfs namenode -format	  #格式化
$ ./sbin/start-dfs.sh			  #启动dfs服务
$ ./sbin/start-yarn.sh            #启动yarn

在本机再次访问以下地址:
http://192.168.3.132:50070/