一、创建虚拟机
1、从网上下载一个Centos6.X的镜像(http://vault.centos.org/)
2、安装一台虚拟机配置如下:cpu1个、内存1G、磁盘分配20G(看个人配置和需求,本人配置有点低所以参数有点低)
3、虚拟机安装建议去挑战minidesktop,分区自己创建有/boot(300)、swap(300)、/(分配全部空间)。
二、集群环境配置
1.准备Linux环境
设置一个IP地址,先将虚拟机的网络模式选为NAT模式,对应vmnet1和vmnet8,保证能ping通VMNet8和网络 例:www.baidu.com
修改主机名
#vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME= hadoop01
修改IP
两种方式:
第一种:通过Linux图形界面进行修改
进入Linux图形界面 -> 右键点击右上方的两个小电脑 -> 点击Edit connections -> 选中当前网络System eth0 -> 点击edit按钮 -> 选择IPv4 -> method选择为manual -> 点击add按钮 -> 添加IP:192.168.35.100 子网掩码:255.255.255.0 (网关:192.168.1.1) -> apply
第二种:修改配置文件方式
#vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static"
ONBOOT="yes"
TYPE="Ethernet"
IPADDR="192.168.35.100"
NETMASK="255.255.255.0"
修改主机名和IP的映射关系
#vim /etc/hosts 192.168.35.100 hadoop01 192.168.35.101 hadoop02
关闭linux的防火墙
#查看防火墙状态 service iptables status #关闭防火墙 service iptables stop #查看防火墙开机启动状态 chkconfig iptables --list #关闭防火墙开机启动 开启防火墙 on chkconfig iptables off
关闭window的防火墙
进入到windows的控制面板-> 找到window防火墙 -> 点击关闭windwos防火墙,全部关闭
开启或关闭linux服务器的图形界面:
vi /etc/inittab
重启Linux : reboot
2.安装JDK
上传JDK (上传工具 wincp ,securecrt ,vmtools)
解压jdk
tar -zxvf jdk-7u80-linux-x64.tar.gz -C /usr/local (一般在linux里放公共的系统使用的文件)
将java添加到环境变量中
vim /etc/profile
#在文件最后添加
export JAVA_HOME=/usr/local/jdk1.7.0_80
export PATH=$PATH:$JAVA_HOME/bin
#刷新配置
source /etc/profile
Java -sersion验证一下
三、Hadoop环境搭建(在这里我将HDFS和YARN的配置信息放在了一起)
1、安装hadoop2.8.5
创建一个目录mkdir /bigdata,先上传hadoop的安装包到服务器上去/bigdata,解压hadoop工具到/bigdata文件中,tar -zxvf hadoop-2.6.4.tar.gz -C /bigdata
注意:hadoop2.x的配置文件$HADOOP_HOME/etc/hadoop
伪分布式需要修改5个配置文件
2、配置hadoop核心文件
1 <!--第一个:hadoop-env.sh->
2 vim hadoop-env.sh
3 #第27行
4 export JAVA_HOME=/usr/local/jdk1.7.0_80
5 <!--第二个:core-site.xml->
6 <!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 -->
7 <property>
8 <name>fs.defaultFS</name>
9 <value>hdfs://hadoop01:9000</value>
10 <!--必须配置了hosts,要不然就是ip-?
11 </property>
12 <!-- 指定hadoop运行时产生文件的存储目录 -->
13 <property>
14 <name>hadoop.tmp.dir</name>
15 <value>/bigdata/hadoop-2.6.4/data</value>
16 </property>
17 <!--第三个:hdfs-site.xml->
18 <!-- 指定HDFS副本的数量 -->
19 <property>
20 <name>dfs.replication</name>
21 <value>1</value> 3
22 </property>
23 <!--第四个:mapred-site.xml 系统没有直接提供,需要修改模板文件 mv mapred-site.xml.template mapred-site.xml vim mapred-site.xml ->
24 <!-- 指定mr运行在yarn上 -->
25 <property>
26 <name>mapreduce.framework.name</name>
27 <value>yarn</value>
28 </property>
29 <!-- 第五个:yarn-site.xml->
30 <!-- 指定YARN的老大(ResourceManager)的地址 -->
31 <property>
32 <name>yarn.resourcemanager.hostname</name>
33 <value>hadoop01</value>
34 </property>
35 <!-- reducer获取数据的方式 -->
36 <property>
37 <name>yarn.nodemanager.aux-services</name>
38 <value>mapreduce_shuffle</value>
39 </property>
将hadoop添加到环境变量
1 vim /etc/proflie
2 export JAVA_HOME=/usr/local/jdk1.7.0_80
3 export HADOOP_HOME=/bigdata/hadoop-2.6.4
4 export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
刷新配置文件
source /etc/profile
格式化namenode(是对namenode进行初始化) 格式化文件系统
hdfs namenode -format(历史命令 hadoop namenode -format)
启动hadoop
先启动HDFS
sbin/start-dfs.sh
再启动YARN
sbin/start-yarn.sh
验证是否启动成功
使用jps命令验证
27408 NameNode
28218 Jps
27643 SecondaryNameNode
28066 NodeManager
27803 ResourceManager
27512 DataNode
通过网页验证
http://192.168.35.100:50070 (HDFS管理界面)
http://192.168.35.100:8088 (MR管理界面)
3、配置ssh免登陆
#生成ssh免登陆密钥
#进入到我的home目录
cd ~/.ssh
ssh-keygen -t rsa (四个回车)
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
将公钥拷贝到要免密登陆的目标机器上
ssh-copy-id localhost
到此HDFS和MapReduce搭建完成,有任何出错或疑问可以私信留言也可以关注微信公众号;关于Hadoop的后续还会陆续给大家一一讲解,谢谢阅读。