安装Hadoop(二)

本文详细介绍Hadoop集群的搭建过程,包括虚拟机环境准备、JDK安装、SSH免密码配置、Hadoop环境搭建及各组件配置。同时,提供详细的步骤指导和截图,帮助读者快速上手。

安装Hadoop的预备内容

安装Hadoop之前,我们首先要安装以下两个软件

  • VMware Workstation
  • CentOS6.5
    虚拟机安装完成后,我们要在虚拟机中安装以下两个必要程序

1.JDK1.7或更高版本
2.SSH(安全外壳协议),主要用于主机间的免密码登录。Hadoop需要通过SSH来启动Slave列表(Hadoop组件集群中分为Master和Slave两个角色,Master是管理者,Slave是被管理者,是存储数据的主机列表,通常由Master启动Slave。)中各台主机的守护进程,这里推荐OpenSSH。一般默认CentOS已经安装了OpenSSH,所以只需进行SSH配置即可。

第一步、配置静态ip

在Linux系统命令终端,执行命令

cd /etc/sysconfig/network-scripts

切换到该目录并查看该目录下的文件ifcfg-eth0,如图所示。
在这里插入图片描述
在Linx系统命令终端,执行命令
vim ifcfg-eth0,并修改文件的内容。
按“键入编辑内容编译完成后按Esc键退出编译状态,之后执行命令wq,保存并退出。 IPADDR、 NETMASK、 GATEWAY、DNS1的值可以根据自己的本机进行修改,如下所示。

DEVICE="eth0"       #设备名字
BOOTPROTO="static"    #静态ip
HWADDR="00:0C:29:ED:83:F7"      #mac地址
IPV6INIT="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"     #开启自启动
TYPE="Ethernet"   #网络类型
UUID="28354862-67a7-4a5b-9f9a-54561401f614"
IPADDR=192.168.140.128         #IP地址
NETMASK=255.255.255.0         #子网掩码
GATEWAY=192.168.140.2         #网关
DNS1=192.168.140.2            # dns

如何设置IPADDR、NETWASK、GATEWAY、DNS1,使用下面的方法:
单击VMWare WorkStation编辑菜单下的虚拟网络编辑器菜单,打开虚拟网络编辑器窗体。选择VMnet8,如下图所示。
在这里插入图片描述
单击NAT设置按钮显示下图。
在这里插入图片描述
点击DHCP设置按钮显示下图。
在这里插入图片描述
注意:

  • IPADDR是自定义的地址,但是必须和192.168.140.x匹配,x自定义

  • NETMASK在刚才的图片中显示

  • GATEWAY在刚才的图片中显示,DNS1和GATEWAY相同
    配置iP地址完毕之后,在命令终端的任意目录下,执行命令 ifconfig,查看配置效果,如图所示。
    在这里插入图片描述
    注意:执行ifconfig前必须保证网络畅通,如下图所示。
    在这里插入图片描述
    在命令终端的任意目录下重启服务,执行命令

    [root@hadoop network-scripts]# reboot

ping ip地址看是否安装成功,如图所示。
在这里插入图片描述
注意:执行ping前必须保证网络畅通,按ctrl+z退出

修改主机名和域名映射

启动命令终端,在任何目录下执行命令cd /etc/sysconfig,切换到该目录并查看目录下的文件,可以发现存在文件 network,如图所示。在这里插入图片描述
在/etc/sysconfig目录下找到文件 network,然后执行命令 vim network,按“i”进入编辑内容,编译完成后按Esc退出编译状态,之后执行命令wq保存并退出,如下图所示修改了主机名,主机名是我们刚才安装Linux时的主机名(hadoop是我们刚才安装时设置的主机名)。
在这里插入图片描述
修改主机名和IP地址具有映射关系,执行命令vim /etc/hosts,按“i”进入编辑内容,编译完成后按Esc退出编译状态,之后执行命令wq保存并退出,如图所示。
在这里插入图片描述
前面是设置的静态IP地址,后面的是主机名。
一旦修改过主机名和域名映射,重启Linux会显示下图。
在这里插入图片描述

JDK的安装和配置

前面有讲过
地址:JDK的安装和配置

SSH免密码配置

SSH是 Secure Shell的缩写,由IETF的网络工作小组制定。SSH是建立在应用层和传输层上的安全协议,专为远程登录会话和其他网络服务提供安全性的协议。
Hadoop集群的节点之间的通信应该设置为不用密码交互,否则节点之间每次通信都需要输入密码,会给集群运行带来很大麻烦。使用SSH公钥登录可以解决这个问题,省略掉节点通信需要输入密码的步骤。
先在本机上实现SSH免密码登录实质上是使用一对加密字符串,一个称为公钥,另一个称为私钥。公钥对任何人都可见,而私钥仅对拥有者可见。
(1)在Linux系统的终端的任何目录下通过切换cd ~/.ssh,进入到.ssh目录下。

[root@hadoop Desktop]# cd ~/.ssh

~表示当前用户的home目录,通过cd ~可以进入到你的home目录。.开头的文件表示隐藏文件,这里.ssh就是隐藏目录文件。
(2)在Linux系统命令框的.ssh目录下,执行ssh-keygen命令。

[root@hadoop .ssh]# ssh-keygen  -t  rsa

在这里插入图片描述
(连续按三次回车)执行完上面命令后,会生成两个id_rsa(私钥)、id_rsa.pub(公钥)两个文件,如图所示。
在这里插入图片描述
(3)授权SSH免密码

[root@hadoop .ssh]# ssh-copy-id  hadoop

相当于该主机给自己设置免密码登录,hadoop是刚才设置的主机名。根据提示输入yes并输入访问主机所需要的密码。
在这里插入图片描述
在这里插入图片描述
(4)执行ssh Hadoop命令,发现不需要密码就能使用ssh命令连接Hadoop主机了。

[root@hadoop .ssh]# ssh  hadoop

在这里插入图片描述
如图所示,注意hadoop是刚才设置的主机名。
注意一旦执行ssh命令后,需要使用exit命令注销ssh连接。
如果没有执行步骤(3),会显示下面的信息,如下图所示。
在这里插入图片描述

Hadoop环境的搭建

Hadoop的组件配置,均可以利用XML文件进行配置,有以下的5个配置文件,具体配置作用见表3.1。这些文件都存储在hadoop安装目录下的etc/hadoop子目录中。

配置文件名配置文件功能
etc/hadoop/hadoop-env.sh配置JAVA_HOME
core-site.xml配置通用属性
hdfs-site.xml配置HDFS的属性
mapred-site.xml配置MapReduce属性
yarn-site.xml配置YARN属性
  1. 启动 Linux命令终端

    [root@hadoop Desktop]# mkdir/usr/hadoop

    [root@hadoop Desktop]# cd /usr/hadoop
    切换到该目录下,把Hadoop文件上传到该目录下

  2. 然后对/usr/hadoop目录下的Hadoop压缩文件hadoop-2.6.5.tar.gz

    [root@hadoop hadoop]# tar -zxvf hadoop-2.6.5.tar.gz -C /usr/hadoop
    -C是指解压压缩包到指定位置

    [root@hadoop hadoop]# ls
    hadoop-2.6.5 hadoop-2.6.5.tar.gz
    解压缩后的目录为hadoop-2.6.5,这个目录是$HADOOP_NAME。

  3. 切换到$HADOOP_NAME/etc/hadoop 目录下并查看该目录下的包。

    [root@hadoop hadoop]# ls
    在这里插入图片描述

  4. 在$HADOOP_NAME/etc/hadoop目录下

    [root@hadoop hadoop]# vim hadoop-env.sh
    按“i”键进入编辑内容,在文件中修改如下内容。
    # The java implementation to use.
    export JAVA_HOME=${JAVA_HOME}
    修改为
    export JAVA_HOME=/usr/java/jdk1.8.0_181
    修改完成后,按ESC退出编辑状态,之后执行命令wq保存并退出。
    在这里插入图片描述
    5.一共修改4个配置文件
    在$HADOOP_NAME/etc/hadoop目录下执行命令vim core-site.xml,并修改配置文件core-site.xml
    在这里插入图片描述
    在$HADOOP_NAME/etc/hadoop目录下执行命令vim hdfs-site.xml,并修改配置文件hdfs-site.xml
    在这里插入图片描述
    在$HADOOP_NAME/etc/hadoop目录下查看是否有配置文件mapred-site.xml。目录下默认情况下没有该文件,可通过执行命令,修改一个文件的命名
    在这里插入图片描述
    在$HADOOP_NAME/etc/hadoop目录下执行命令vim yarn-site.xml,并修改配置文件yarn-site.xml
    修改信息为
    在这里插入图片描述
    执行命令vi /etc/profile,把Hadoop的安装目录配置到环境变量中,如图在这里插入图片描述
    然后让配置文件生效,执行命令

    [root@hadoop Desktop]# source /etc/profile

格式化namenode。在任意目录下(配置Hadoop环境变量的情况下)执行命令

[root@hadoop Desktop]# hdfs namenode  -format 

或者

[root@hadoop Desktop]# hadoop namenode  -format

实现格式化。
启动Hadoop进程,首先启动HDFS系统,在$HADOOP_NAME/sbin目录下

[root@hadoop sbin]# ./start-dfs.sh

然后用jps查看进程,如图
在这里插入图片描述
启动YARN,在$HADOOP_NAME/sbin目录下,执行命令

[root@hadoop sbin]#  ./start-yarn.sh

然后用jps查看进程,如图
在这里插入图片描述
注意:执行hadoop代码时,有时会产生下面的异常:

18/12/18 06:56:44 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

需要修改
$HADOOP_HOME/etc/hadoop/log4j.properties文件,添加以下内容。

log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR

测试HDFS和YARN,首先在浏览器地址栏中输入http://192.168.140.128:50070 下面显示HDFS管理界面,如下图所示。
在这里插入图片描述
在浏览器的地址栏输入http://192.168.140.128:8088
下面显示MapReduce的管理页面,如下图所示。
在这里插入图片描述

注意:上面的IP地址必须是第二章2.4.1设置的本地IP。
关闭HDFS系统,在$HADOOP_NAME/sbin目录下,执行命令

[root@hadoop sbin]#  ./stop-dfs.sh

关闭YARN系统,在$HADOOP_NAME/sbin目录下,执行命令

[root@hadoop sbin]#  ./stop-yarn.sh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值