赞
踩
目录
步骤四:查看"/home/hadoop/"下是否有".ssh"文件夹,且".ssh"文件下是否有两个刚生产的无密码密钥对。
4. 执行以下命令修改 hadoop-env.sh 配置文件
Master: 192.168.11.66
slave1: 192.168.11.77
slave2: 192.168.11.88
设置服务器的主机名称
关闭防火墙 systemctl stop firewalld
查看防火墙的状态 systemctl status firewalld
永久关闭防火墙 systemctl diable firewalld
JDK安装包需要在Oracle官网下载,下载地址为: https://www.oracle.com/java/technologies/javase-jdk8-downloads.html,本教材采用的Hadoop 2.7.1所需要的JDK版本为JDK7以上,这里采用的安装包为jdk-8u152-linuxx64.tar.gz。
卸载相关服务,键入命令
Hadoop 2.7.1 要求 JDK 的版本为 1.7 以上,这里安装的是 JDK1.8 版 (即JAVA 8)。
安装命令如下,将安装包解压到/usr/local/src 目录下 ,注意/opt/software目录 下的软件包事先准备好。
解压
在 Linux 中设置环境变量的方法比较多,较常见的有两种:
一是配置 /etc/profile 文件,配置结果对整个系统有效,系统所有用户都可以使用;
二 是配置~/.bashrc 文件,配置结果仅对当前用户有效。这里使用第一种方法。
Apache Hadoop 各 个 版 本 的 下 载 网 址 : https://archive.apache.org/dist/hadoop /common/。本教材选用的是 Hadoop 2.7.1 版本,安装包为 hadoop-2.7.1.tar.gz。需要先下载 Hadoop 安装包,再上传到 Linux 系统的/opt/software 目录。
安装命令如下,将安装包解压到/usr/local/src/目录下
查看hadoop的目录
bin:此目录中存放 Hadoop、HDFS、YARN 和 MapReduce 运行程序和管理 软件。
etc:存放 Hadoop 配置文件。
include: 类似 C 语言的头文件
lib:本地库文件,支持对数据进行压缩和解压。
libexe:同 lib
sbin:Hadoop 集群启动、停止命令
share:说明文档、案例和依赖 jar 包。
出现上述 Hadoop 帮助信息就说明 Hadoop 已经安装好了。
上述安装完成的 Hadoop 软件只能让 root 用户使用,要让 hadoop 用户能够 运行 Hadoop 软件,需要将目录/usr/local/src 的所有者改为 hadoop 用户。
/usr/local/src 目录的所有者已经改为 hadoop 了。
创建数据文件data.txt,将要测试的数据内容输入到data.txt文件中。
运行结果保存在~/output 目录中(注:结果输出目录不能事先存在),命令执行后查看结果:
文件_SUCCESS表示处理成功,处理的结果存放在 part-r-00000 文件中,查看该文件。
#Slave1
#Slave2
根据实验环境下集群网络 IP 地址规划(根据自己主机的ip即可):
master :
IP 地址是“192.168.11.66”
掩码是“255.255.255.0”;
slave1 :
IP 地址“192.168.11.77”
掩码是“255.255.255.0”;
slave2:
IP 地址是“192.168.11.88”
掩码是“255.255.255.0”。
分别修改主机配置文件“/etc/hosts”
实现 SSH 登录需要 openssh 和 rsync 两个服务,一般情况下默认已经安装(如没有自行安装),可以通过下面命令查看结果。
#master
#slave1
#slave2
#master
#slave1
#slave2
使用root用户登录,修改SSH配置文件"/etc/ssh/sshd_config"的下列内容,需要将该配置字段前面的#号删除,启用公钥私钥配对认证方式。
#master
#slave1
#slave2
在Hadoop用户下验证能否嵌套登录本机,若可以不输入密码登录,则本机通过密钥登录认证成功。
hadoop 用户登录 slave1 和 slave2 节点,执行命令。
可以看到Master节点 authorized_keys文件中包括master、slave1、slave2 三个节点的公钥。
可以看到 Slave 节点 authorized_keys 文件中包括 Master、当前 Slave 两个节点的公钥。
hadoop用户登录master节点,执行SSH命令登录slave1和slave2节点。可以观察到不需要输入密码即可实现SSH登录。
#master
#slave1
#slave2
#master
#slave1
#slave2
将NameNode上的数据清零,第一次启动HDF时要进行格式化,以后启动无需再格式化,否则会缺失DataNode进程。另外,只要运行过HDFS,Hadoop的工作目录(本书设置为/usr/local/src/hadoop/tmp)就会有数据,如果需要重新格式化,则在格式化之前一定要先删除工作目录下的数据,否则格式化时会 出问题。
执行如下命令,启动NameNode:
启动完成后,可以使用JPS命令查看是否成功。JPS命令是Java提供的一个显示当前所有Java进程pid的命令。
查看到有NameNode和SecondaryNameNode两个进程,就表明HDFS启动成功。
执行如下命令,查看 Hadoop 工作目录:
可以看出 HDFS 的数据保存在/usr/local/src/hadoop/dfs 目录下,NameNode、 DataNode和/usr/local/src/hadoop/tmp/目录下,SecondaryNameNode 各有一个目 录存放数据。
在浏览器的地址栏输入http://master:50070,进入页面可以查看NameNode和DataNode信息
在浏览器的地址栏输入http://master:50090,进入页面可以查看SecondaryNameNod信息
可以使用start-dfs.sh 命令启动HDFS。这时需要配置SSH免密码登录,否则在启动过程中系统将多次要求确认连接和输入Hadoop用户密码。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。