之前学习了一段时间的hadoop,最近想总结一下自己的成果,便用写博客的方式去复习。hadoop入门难就难在搭建集群。初学的开发人员大可不必去研究hadoop安装,可以先往后面学习。所以这里总结hadoop安装步骤供初学者拷贝。
1:hadoop和jdk下载
为了保证之后不出任何因为版本问题,请使用本人选用版本。我选择的jdk1.7和hadoop2.7.2。所以:
首先下载安装包jdk-7u71-linux-i586.tar.gz。
如果不会下载jdk历史版本,请百度搜索“如何下载jdk历史版本”。下载jdk1.7是因为1.7版本以上jdk支持hadoop,选择32位是因为,我之前使用64位后,hadoop安装出现很多错误,spark安装也会出现错误
其次下载安装包hadoop-2.7.2.tar.gz。
进入http://apache.fayea.com/hadoop/common/,点击下载hadoop2.7.2。
2:VMware下安装centOS
下载centOS,我选择的版本是CentOS-6.4-i386-bin-DVD1.iso。
(以上所有工具不会下载者,请加我的百度云好友:鹏少1996)
打开VMware,点击文件->创建虚拟机->下一步->下一步->(找到你的CentOS映像文件后)下一步->输入全名,用户名,密码,确认,这里最好全部用hadoop便于记忆->将虚拟机名称改为hadoop_01,选择一个位置,最好新建一个位置,便于管理如下图。
后面全部默认点击下一步。
后面操作系统便开始安装了。。。。。
如果遇到提示需要按f12,就按f12,进入如下界面,就只要等待即可
出现如下界面点击other,输入root,密码是hadoop
选择图中划线部分,将划线部分设置和我一样,然后点击“NAT设置”-->然后将网关设为192.168.117.2.
进入CentOS,右击屏幕右上角的电脑图标,然后选择Edit Connection
选择IPV4 Settings后选择Method为Manual。
点击add,将address设为192.168.117.41,netmask设为255.255.255.0,gateway设为192.168.117.2,DNSserver设为192.168.117.2。然后关机。
关机后,点击hadoop _01这台虚拟机的网络适配器,选择自定义(U):特定虚拟网络:VMnet8(Net模式)
再次开机
3安装jdk和hadoop
1)安装jdk
1 用鼠标将Windows准备好的jdk安装包直接以拖拉方式拖进hadoop_01的桌面,
2 在hadoop _01桌面右击然后左击open in terminal
3 在终端输入ll,会看见刚刚拖进来的jdk安装包
4 输入cd /root,到达根目录,输入mkdir apps
5 输入cd desktop,到达桌面,输入tar -zxvf jdk-7u71-linux-i586.tar.gz -C /root/apps 解压安装包到/roor/apps
6 输入cd /root/app,输入ll,你会看到解压后的jdk目录,输入mv (现在的jdk目录名) jdk,将目录名重命名为jdk
7 配置环境变量 :输入vi /etc/profile,进入vim编辑器,按下键盘上的 “i”就可以在这个文件中插入数据,按 键盘上的向下方向键到达文件最低部
输入
export JAVA_HOME=/root/apps/jdk
export HADOOP_HOME=/root/apps/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
按下键盘上的esc键,输入 :wq就可以保存并退出编辑(如果想了解vim编辑,可以百度一下)
(为了方便已经将hadoop的环境变量提前配置好)
8输入source /etc/profile 使配置生效, 输入java -version查看是否配置成功。
2)安装hadoop
1 同样的方法将hadoop安装包拖到hadoop_01的桌面。
2 输入cd /root/desktop 到桌面目录,输入tar -zxvf
hadoop-2.7.2.tar.gz -C /root/apps 解压安装包到/roor/apps
3 输入 cd /root/apps ,输入ll会看到hadoop目录 输入 mv
hadoop-2.7.2 hadoop 重命名这个目录
4 cd hadoop/etc/hadoop, 这里是hadoop的配置文件目录,ll 会看见很多配置文件
5接下来修改配置文件即可:
a : vi hadoop-env.sh
将export JAVA_HOME={$JAVA_HOME}改为export JAVA_HOME=/root/apps/jdk (如果这一行前面有"#",将 “#”去掉,因为"#"代表注释 )
b :vi core-site.xml
在
中间插入
fs.defaultFS
hdfs://hadoop_01:9000
hadoop.tmp.dir
/root/apps/hadoop/tmp/
b :vi hdfs-site.xml 同上面一样,配置后如下
c :mv mapred-site.xml.template mapred-site.xml 然后vi mapred-site.xml
mapreduce.framework.name
yarn
d: vi yarn-site.xml
yarn.resourcemanager.hostname
hadoop_
01
yarn.nodemanager.aux-services
mapreduce_shuffle
vi slaves
将localhost 改为:
hadoop _01
hadoop _02
hadoop _03
到目前为止,hadoop就已经配置好了。
4搭建hadoop集群
1 修改主机名:
vi /etc/sysconfig/network
将HOSTNAME=localhost.localdomain改为 HOSTNAME=hadoop_01
2修改网络映射:
vi /etc/hosts
在末尾插入:
192.168.117.41 hdp-ha-01
192.168.117.42 hdp-ha-02
192.168.117.43 hdp-ha-03
192.168.117.44 hdp-ha-04
192.168.117.45 hdp-ha-05
192.168.117.46 hdp-ha-06
192.168.117.47 hdp-ha-07
3关闭图形界面:
vi /etc/inittab
将 id:5:initdefault:改为 id:3:initdefault:
4关闭防火墙
service iptables stop
5关机:
halt
7克隆虚拟出hadoop_02和hadoop_03
在Vmware软件上右击hadoop _01 选择 管理- >克隆->下一步->下一步->选择创建完整克隆,下一步->将虚拟机名称改为hadoop_02->完成
同理克隆出一个hadoop _03
8 因为hadoop _02和hadoop_03克隆来的,所以 ,还要修改他们的主机名,和ip:
克隆完成后打开三台虚拟机
9在hadoop_02开机后输入:setup->Network configuration->Device configuration->eth0(eth0)...
将name和Device都改为eth1,将Ip改为192.168.117.42
然后->OK->Save->Save&Quit->quit
10:重启网络
service network restart
11:vi /etc/sysconfig/network
将HOSTNAME=hadoop_01改为HOSTNAME=hadoop_02
12:重启虚拟机:
reboot
13:同9到12将hadoop_03的,ip改为192.168.117.43主机名改为hadoop_03。
14:等hadoop_02和hadoop_03重启完成后,在hadoop _01上配置到三台主机的免密登录
在hadoop_01上输入ssh-keygen后一直默认回车,结束选择后,输入
ssh-copy-id hadoop_01->输入Y->输入密码hadoop
ssh-copy-id hadoop_02->输入Y->输入密码hadoop
ssh-copy-id hadoop_03->输入Y->输入密码hadoop
5完成hadoop集群
1:格式化hdfs
输入hdfs namenode -format
运行成功后
2:输入start-all.sh,就可以启动hdfs和yarn了
谢谢大家