基于CentOS 7的Hadoop-2.7.7集群搭建手册

文章目录

    • 1 基于 VMware workstations 的CentOS7安装
      • 1.1 安装虚拟机
      • 1.2 安装CentOS7操作系统
    • 2 Linux系统配置
      • 2.1 上传安装包
      • 2.2 配置时钟同步
        • 2.2.1 查看时间
        • 2.2.2 时间不一致的解决办法
      • 2.3 配置主机名
        • 2.3.1 命令设置主机名永久有效
        • 2.3.2 配置文件
      • 2.4 关闭防火墙
        • 2.4.1 关闭防火墙
        • 2.4.2 禁止firewall开机启动
        • 2.4.3 查看状态
      • 2.5 配置网络
      • 2.6 配置hosts
      • 2.7 安装jdk
        • 2.7.1 新建目录
        • 2.7.2 解压安装包
        • 2.7.3 配置环境变量
        • 2.7.4 测试
      • 2.8 免密钥登陆配置
        • 2.8.1 master节点
        • 2.8.2 slave节点
        • 2.8.3 验证免密钥登录
    • 3 hadoop 配置部署
      • 3.1 解压Hadoop安装包
      • 3.2 修改配置文件
        • 3.2.1 hadoop-env.sh
        • 3.2.2 yarn-env.sh
        • 3.2.3 core-site.xml
        • 3.2.4 hdfs-site.xml
        • 3.2.5 yarn-site.xml
        • 3.2.6 marpred-site.xml
        • 3.2.7 slaves文件
      • 3.3 复制主从点
    • 4 启动Hadoop集群
      • 4.1 配置环境变量
      • 4.2 格式化文件系统
      • 4.3 启动hadoop集群
      • 4.4 验证Hadoop集群是否成功
        • 4.4.1 jps
        • 4.4.2 通过web页面
        • 4.4.3 Pi

1 基于 VMware workstations 的CentOS7安装

1.1 安装虚拟机

  1. 打开VMware,文件->新建虚拟机,出现如下界面,
    选择“自定义(高级)”选项,下一步
    基于CentOS 7的Hadoop-2.7.7集群搭建手册_第1张图片
  2. 此步骤默认,下一步继续:
    基于CentOS 7的Hadoop-2.7.7集群搭建手册_第2张图片
  3. 在出现下面界面,选中“稍后安装操作系统”选项,下一步继续:
    基于CentOS 7的Hadoop-2.7.7集群搭建手册_第3张图片
  4. 在出现如下界面,客户机操作系统选择“Linux”,版本选择“CentOS 64位”,下一步继续:

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第4张图片

  1. 出现如下界面,输入自定义虚拟机名称,这里是“node1”,指定虚拟机位置,这里是“E:\VirtualMachines\CentOS 64位\node1“,然后下一步继续:
    基于CentOS 7的Hadoop-2.7.7集群搭建手册_第5张图片
  2. 出现下面界面,选择处理器数量和每个处理器核心数量,这里分别是2和2,下一步继续:
    基于CentOS 7的Hadoop-2.7.7集群搭建手册_第6张图片
  3. 出现如下界面,指定虚拟机占用内存大小,这里是2048M,下一步继续:

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第7张图片
8. 出现如下界面,选择网络连接类型,这里选择“使用NAT模式”,各位安装虚拟机过程根据需要自行选择,安装向导中已经针对各种模式进行了比较规范的说明,这里补充说明如下:
1) 使用桥接网络:虚拟机ip与本机在同一网段,本机与虚拟机可以通过ip互通,本机联网状态下虚拟机即可联网,同时虚拟机与本网段内其他主机可以互通,这种模式常用于服务器环境架构中。
2) 使用网络地址转换(NAT):虚拟机可以联网,与本机互通,与本机网段内其他主机不通。
3) 使用仅主机模式网络:虚拟机不能联网,与本机互通,与本机网段内其他主机不通。下一步继续:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第8张图片
9. 默认,下一步继续:

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第9张图片
10. 默认、下一步继续:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第10张图片
11. 默认,下一步继续:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第11张图片
12. 出现下面界面,输入虚拟机磁盘大小,这里设置虚拟机磁盘大小为30G,下一步继续:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第12张图片
13. 默认,下一步继续:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第13张图片
14. 默认、点击“完成”结束虚拟机创建:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第14张图片
退出安装向导后,我们可以在虚拟机管理界面左侧栏看到刚刚创建的虚拟机,右侧栏可以看到虚拟机详细配置信息:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第15张图片

  1. 上图界面中点击“编辑虚拟机设置”选项,出现如下界面:

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第16张图片
16. 挂载光盘,然后点击确定,按照上述设置后界面如下图所示:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第17张图片

1.2 安装CentOS7操作系统

点击开启虚拟机进入CentOS7操作系统安装过程。
1.虚拟机控制台出现界面,选择Install CentOS Linux 7,点击回车键继续:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第18张图片

2.根据提示点击回车键继续:

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第19张图片
3.如下界面默认选择English,点击Continue继续:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第20张图片

3.CentOS7安装配置主要界面如下图所示,根据界面展示,这里对以下3个部分配置进行说明:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第21张图片

*Localization和software部分不需要进行任何设置,其中需要注意的是software selection选项,这里本次采用安装含图形界面安装,至于其他组件,待后期使用通过yum安装即可。
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第22张图片

4.点击“Installation Destination”,进入如下界面,选中30g硬盘,点击左上角done进行磁盘分区规划:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第23张图片
5.点击“DATE&TIME”配置时间
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第24张图片
6. 完成磁盘规划后,点击network & host name选项中修改主机名(默认主机名为 localhost.localdomain),这里 node1修改为master,node2修改为slave,然后点击done完成主机名配置,返回主配置界面:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第25张图片
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第26张图片
7.右下角“Begin Installation”按钮已经从原本的灰色变成蓝色,这说明已经可以进行操作系统安装工作了,点击“Begin Installation”进行操作系统安装过程。
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第27张图片
8.在用户设置中需要做的是修改root用户密码和创建普通用户。

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第28张图片
点击“root password”,设置密码,如果密码安全度不高,比如我这里的密码为“rootroot”,那么可能需要点击2次确定才可以。
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第29张图片
分别在node1和node2创建普通用户yao
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第30张图片
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第31张图片
9.在下图,操作系统安装已经完成,点击reboot重启操作系统。
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第32张图片

安装完成,通过普通用户yao登录:

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第33张图片
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第34张图片
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第35张图片

2 Linux系统配置

2.1 上传安装包

1.将jdk-8u144-linux-x64.tar.gz分别上传到两台虚拟机的/soft目录下

sftp> pwd
/soft
sftp> put E:/study2019/software/jdk-8u144-linux-x64.tar.gz

master:
在这里插入图片描述
slave:

在这里插入图片描述
2.将hadoop-2.7.7.tar.gz上传到master:

sftp> put E:/study2019/software/hadoop-2.7.7.tar.gz

在这里插入图片描述

3.查看是否上传成功
在这里插入图片描述
在这里插入图片描述

2.2 配置时钟同步

2.2.1 查看时间

在这里插入图片描述
在这里插入图片描述

2.2.2 时间不一致的解决办法

  • 方法一:通过timedatectl命令修改
    基于CentOS 7的Hadoop-2.7.7集群搭建手册_第36张图片
    基于CentOS 7的Hadoop-2.7.7集群搭建手册_第37张图片
    使用指南 timedatectl -h
    查看当前系统时间 timedatectl status
    设置当前时间
    timedatectl set-time “YYYY-MM-DD HH:MM:SS”
    timedatectl set-time “YYYY-MM-DD”
    timedatectl set-time “HH:MM:SS”
    查看所有可用的时区
    timedatectl list-timezones
    timedatectl list-timezones | grep -E “Asia/S.*”
    设置时区
    timedatectl set-timezone Asia/Shanghai
    设置硬件时间
    timedatectl set-local-rtc 1 # 默认UTC
    启动自动同步时间
    timedatectl set-ntp yes # yes或no,1或0

  • 方法二:同步网络时间
    1.同步mater

[root@master ~]# ntpdate time.nuri.net
13 Mar 17:32:29 ntpdate[26372]: adjust time server 211.115.194.21 offset -0.263924 sec

2.同步slave

[root@master ~]# ntpdate time.nuri.net
13 Mar 17:32:41 ntpdate[26372]: adjust time server 211.115.194.21 offset -0.263924 sec

2.3 配置主机名

2.3.1 命令设置主机名永久有效

[root@master ~]# hostnamectl set-hostname master

2.3.2 配置文件

[root@master ~]# vim /etc/hostname

在这里插入图片描述
在这里插入图片描述

2.4 关闭防火墙

直接关闭防火墙

2.4.1 关闭防火墙

[root@master ~]# systemctl stop firewalld.service

2.4.2 禁止firewall开机启动

[root@master ~]# systemctl disable firewalld.service

2.4.3 查看状态

[root@master ~]# systemctl status firewalld

在这里插入图片描述
在这里插入图片描述
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第38张图片

2.5 配置网络

  • 查看IP
虚拟机名称 Hostname IP Address
node1 master 192.168.16.199
node2 slave 192.168.16.200
  • master:

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第39张图片
slave:
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第40张图片
如果没有显示IP使用setup设置

2.6 配置hosts

注意,要同时在两个节点配置
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第41张图片
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第42张图片

2.7 安装jdk

2.7.1 新建目录

[root@master ~]# mkdir /usr/java/

2.7.2 解压安装包

将JDK文件解压,放到/usr/java目录下

[root@master java]# tar zxvf jdk-8u144-linux-x64.tar.gz

在这里插入图片描述
解压后:
在这里插入图片描述

2.7.3 配置环境变量

切换到普通用户

[root@master ~]# su yao
[yao@master root]$ cd ~
[yao@master ~]$ vi .bash_profile
PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

export JAVA_HOME=/usr/java/jdk1.8.0_144
export PATH=$JAVA_HOME/bin:$PATH
export HADOOP_HOME=/home/yao/hadoop-2.7.7
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

2.7.4 测试

在这里插入图片描述
在这里插入图片描述

注意,如果主机名是后配的,以上操作完成以后需要重启

[root@slave java]# reboot

2.8 免密钥登陆配置

切换到普通用户下操作

2.8.1 master节点

1.在终端生成密钥

[yao@master root]$ ssh-keygen -t rsa

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第43张图片
2.复制公钥文件

[yao@master .ssh]$ cat ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys

3.修改authorized_keys文件的权限

[yao@master .ssh]$ chmod 600 ~/.ssh/authorized_keys 

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第44张图片
4.将authorized_keys复制到slave节点

[yao@master .ssh]$ scp ~/.ssh/authorized_keys yao@slave:~/

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第45张图片

2.8.2 slave节点

1.在终端生成密钥

[yao@slave root]$ ssh-keygen -t rsa

2.将authorized_keys文件移动到.ssh目录

[yao@slave ~]$ mv authorized_keys ~/.ssh/

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第46张图片

2.8.3 验证免密钥登录

在master机器上执行

[yao@master .ssh]$ ssh slave

在这里插入图片描述

3 hadoop 配置部署

Hadoop配置部署要在普通用户下操作:

3.1 解压Hadoop安装包

[yao@master ~]$ tar -xzvf hadoop-2.7.7.tar.gz

在这里插入图片描述

3.2 修改配置文件

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第47张图片

3.2.1 hadoop-env.sh

[yao@master hadoop]$ vim hadoop-env.sh 

在这里插入图片描述

3.2.2 yarn-env.sh

[yao@master hadoop]$ vim yarn-env.sh 

在这里插入图片描述

3.2.3 core-site.xml

[yao@master hadoop]$ vim core-site.xml 

修改内容:

<configuration>
<property> 				# 修改项
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/yao/hadoopdata</value>
</property>
</configuration>

3.2.4 hdfs-site.xml

[yao@master hadoop]$ vim hdfs-site.xml

修改内容:

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

3.2.5 yarn-site.xml

[yao@master hadoop]$ vim yarn-site.xml 

修改内容:

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:18040</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:18030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:18025</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:18141</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:18088</value>
</property>

3.2.6 marpred-site.xml

[yao@master hadoop]$ cp mapred-site.xml.template mapred-site.xml
[yao@master hadoop]$ vim mapred-site.xml

修改内容

<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

3.2.7 slaves文件

[yao@master hadoop]$ vi slaves

3.3 复制主从点

[yao@master hadoop]$ cd ~ 
[yao@master ~]$ scp -r hadoop-2.7.7 yao@slave:~/

4 启动Hadoop集群

4.1 配置环境变量

[yao@master ~]$ vi .bash_profile 
export HADOOP_HOME=/home/yao/Hadoop-2.7.7
export PATH=$HADOOP_HOME/bin:$ HADOOP_HOME/sbin:$PATH

在这里插入图片描述

[yao@master ~]$ source .bash_profile

4.2 格式化文件系统

[yao@master ~]$ hdfs namenode –format

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第48张图片
此处有一个报错,原因是配置文件core-site.xml中的一个路径出错了,更改后,需要手动将slave中的core-site.xml也一并修改为正确版。删掉/home/yao/hadoop-2.7.7/logs下的全部文件,因为格式化的过程中,它已经记录日志了。再删掉/home/yao/hadoopdata目录。重新格式化
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第49张图片

4.3 启动hadoop集群

[yao@master ~]$ start-all.sh

基于CentOS 7的Hadoop-2.7.7集群搭建手册_第50张图片

4.4 验证Hadoop集群是否成功

4.4.1 jps

jps的一个打印启动的进程的命令,可以用来测试Hadoop集群是否连接成功。
在master节点上有4个进程:
在这里插入图片描述
在slave节点上有3个进程:
在这里插入图片描述

4.4.2 通过web页面

1.在地址栏输入master:18088
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第51张图片

2.在地址栏输入master:50070
基于CentOS 7的Hadoop-2.7.7集群搭建手册_第52张图片

4.4.3 Pi

这是hadoop自带的一个小例子,pi是一个参数,可以用来验证Hadoop集群是否成功。

[yao@master ~]$ hadoop jar hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar pi 5 5

你可能感兴趣的:(Linux,Hadoop,安装文档)