title: Hadoop伪分布式集群搭建
date: 2018-11-14 15:17:20
tags: Hadoop
categories: 大数据
点击查看我的博客: Josonlee’s Blog
文章目录
前言准备
Win10上通过VMware12 + Centos7准备好了基本环境,配置虚拟机的子网IP地址(我这里是192.168.17.0),如图通过管理员可配置子网IP,掩码,网关(我这里是192.168.17.2)
下文提到的文件上传到虚拟机中,建议使用WinSCP工具
伪分布式特点
具备Hadoop的所有功能,在单机上模拟一个分布式的环境,需要配置hdfs和yarn框架
- HDFS:主节点:master,从节点:slave 【伪分布式这里也是master】
- Yarn:容器,运行MapReduce程序
- 主节点:ResourceManager
- 从节点:NodeManager
JDK 下载和环境配置
- 下载安装
这里下载Linux版本:http://www.oracle.com/technetwork/java/javase/downloads/index.html ,我这里使用的是 jdk-8u131-linux-x64 版本
首先要把下载的文件上传到centos系统下的随便那个目录下(最好root下),把文件解压缩到/root
目录下
以下操作都是在root管理员权限下操作
cd /root
rpm -ivh [你下载的文件名]
- 环境配置
编辑环境变量,在/etc/profile
文件中添加如下变量
注意,我这里jdk1.8.0_131换成你下载的jdk版本号即可
- 测试
命令行下输入 java -version
,能正确查看到java的版本就表示上面步骤配置成功
配置虚拟机网络环境
首先要知道完全分布式和伪分布式的原理是一样的,都得有master和slave节点,节点之间通信时不可能有DHCP临时随机配置IP,所以要配置虚拟机的固定IP
- 设置静态IP
同样是在/etc
下(这是配置文件所在地)
ls sysconfig/network-scripts/ifcfg-ens*
# 输出结果就是要配置的文件
vi sysconfig/network-scripts/ifcfg-en*
# 进入编辑
改动以下设置
BOOTPROTO=static //改成static
ONBOOT=yes //改成yes
IPADDR=192.168.17.10 //随便设,不过要在子网192.168.17.0下
NETMASK=255.255.255.0 //掩码
GATEWAY=192.168.17.2 //第一步配置时设好的
DNS1=192.168.17.2 //随便写
- 设置主机名
命令行下输入hostname
可查看主机名,一般是localhost,但为了方便重新设置主机名
vi /etc/hostname
删掉原先的,配置主机名(如master,namenode等)
- 绑定IP地址到主机名的映射
vi /etc/hosts
# 追加如下内容
127.168.17.10 master //就是你配置的固定IP和主机名
- 关闭防火墙
我这里是centos,防火墙是firewall,而不是iptables【其他系统有其他关闭方法】。防火墙务必要关闭,否则完全分布式搭建的话无法和其他主机相连
systemctl stop firewalld //停止firewall服务
systemctl disable firewalld //禁止firewall开机启动
然后可以通过systemctl status firewalld
查看防火墙状态
Active: inactive (dead) //这就是关闭了
- 重启网络服务
systemctl restart network
,然后你可以ping以下主机名ping master
,看可以ping通吗,可以的话就OK
配置Hadoop的环境
下载Hadoop
(1) apache hadoop:http://www-us.apache.org/dist/hadoop/common/ 【这个是开源的】
(2) cloudera hadoop(CDH):http://archive-primary.cloudera.com/cdh5/cdh/5/ 【推荐使用】
CDH是hadoop的一个版本,我们老师推荐的,原因没记住是啥
上传并解压安装
我这里是下的hadoop-2.6.0-cdh5.12.1
,一样是上传放在了/root
目录下
tar -zxvf hadoop-2.6.0-cdh5.12.1.tar.gz -C /home/hadoo