HADOOP介绍
1.简介
请百度。
2.HADOOP1.x和2.x的区别
为什么先写和区别,是我个人是看着1.2的学习视频,使用的却是2.5的版本,有好多的不一样,我暂时遇到的先在这里做个总结(有个博客总结的蛮多的,先贴个链接:https://www.cnblogs.com/notepencil/p/7444609.html?utm_source=debugrun&utm_medium=referral):
1)2.x 没有snn了,在1.x当中有masters文件来配置secondary NameNode,但是在2.x中都放到了hdfs-site.xml文件当中去设置了,暂时这个snn是干嘛的我也还不是很理解,需要在学习,所以在这里就不多介绍,主要是讲安装的坑。
2)2.x多了个yarn,好像是代替了1.x的jobtracker具体这个我也不知道干嘛的,先写着。
3)启动文件放的位置貌似改了,启动的脚本都放到了sbin这个目录下,1.x是都放在/bin的目录下。
4)占个位置
3.安装过程
ps:我是用的vm+centos6.5+hadoop2.5.2+jdk1.8,建立三个虚拟机为node1,node2,node3。可以先安装一个然后镜像,也可以建完3个虚拟机之后,scp传输文件,反正别跟我这个小白一样,一个个配。
1)原材料:VMware Workstation
hadoop-2.5.2.tar.gz
jdk-8u151-linux-x64.tar.gz
CentOS-6.5-x86_64-bin-DVD1(ps:这些东西的获取一定难不倒想要学习大数据的你:-)
2)centos的安装
打开mv,左上角点击文件--》
新建虚拟机--》
典型--》
选择你下载的centos安装包(不想写了,比较傻瓜这个。。。。其实是我已经把安装包删了。。。)。--》
名字啥的你们看着办--》
安装位置默认就行吧--》
分配大小也随你开心--》反正最后大概是这样--》
然后安装大概你们可能就会遇到:)
是的!打开你的安装路径--》
看我选中的这个文件:
打开, 看到这个属性了没?改成“FALSE”=.= 讲道理,应该可以打开界面了。
3)jdk的安装。
百度。
4)网络的处理
ps1:我选的这个centos安装包,好像自带了ssh,所以如果没有ssh,请百度。
选择右上角虚拟网络编辑器--》
点击更改设置--》我用的NAT来连接的,这些vmnet其实相当于一个个的分线盒,NAT模式下,大概是可以帮你的虚拟机们建立一个内部网络,链接外网则是通过本机进行,选择桥接和其他的模式,大概是可以通过本机分配到外网IP这个意思吧(希望有人会的,留言给我讲清楚)--》
第一个多选框勾选之后,本机的网络中会多一个这样的网络链接--》
点击属性---更改设置--》IP地址之后在虚拟机中需要处于同一个网段(ps:有人可以告诉我vmnet设置的子网ip是干嘛用的嘛)
===》vi /etc/sysconfig/network-scripts/ifcfg-eth0 编辑这个文件IPADDR前三位要和本机设置的一样哦。
重复三次:
192.168.1.10---------------------------------node1
192.168.1.20---------------------------------node2
192.168.1.30---------------------------------node3
重启网络:service network restart
关闭防火墙:service iptables stop
ping一下应该是通滴!=====》 大家可以试着把主机名改一改 也不是很难呢!--------------》
之后就是设置免密码登录 :
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa //在.ssh文件下生成公钥 id_dsa.pub。
cat id_dsa.pub >> .ssh/authorized_keys //在本机可以免密码登录(顺便生成authorized_keys文件)。
在node1利用scp 命令 将id_dsa.pub文件 传输到node2,在node2上执行cat命令,则node2得到了node1的公钥(以此类推)。
5)hdfs系统的启动
解压hadoop安装包--》
进入/hadoop/etc/hadoop下,编辑core-site.xml和hdfs-site.xml
fs.defaultFS属性指定node1为namenode(ps:在1.x中次属性为fs.default.name; hadoop.tmp.dir 基础文件夹,大量文件的配置为${hadoop.tmp.dir} 默认是一个机器重启就格式化的文件夹,所以需要手动更改,文件夹不一定存在,因为在配置完之后我们也要格式化文件夹,会自动创建。
这个含义写的还蛮明显的,就不多bb了。
---------->好像还有hadoop-env.sh
这个地方不能是${JAVA_HOME},要指定。
到这里node1 应该是配完了,因为要保证机器的环境相同,所以我们在node2和node3上创建相同的文件路径通过scp命令将hadoop文件夹统一。
sa
进入sbin文件下运行start-dfs.sh文件则启动了集群的hdfs文件系统。---》jps查看运行程序(ps:图懒得截了)