Hadoop2.6.0完全分布式筹建-入门向 新手向 详细流程

Hadoop2.6.0完全分布式搭建-入门向 新手向 详细流程

0,一些准备工作

if(!富二代){
    准备自己的虚拟机软件,并根据自己的喜好选择一个Linux发行版安装虚拟机。一个版本的Eclipse和Eclipse的hadoop插件
}else{
    买三台(或更多)电脑。

    虚拟机软件的选择和Linux发行版的选择无所谓,仁者见仁智者见智,关键是要选择自己最熟悉的软件和系统

    我选择的是:
    虚拟机 : Parallels Desktop,
    Linux   : Ubuntu14.04

可能更多人更加熟悉VMWare,使用Mac的同学们不用担心,VMWare也提供了相应Mac版可供下载,不过推荐大家试一下ParallelsDesktop, OS下发热明显比VMWare小,虚拟机更佳流畅,体验很不错.正版购买虽然有点高,不过有某宝存在,这些都不是问题.

虚拟机网络模式:
    虚拟机三种网络模式:NAT,HOST-ONLY,桥接
   这里我选择桥接模式.处于桥接模式的虚拟机,分配静态的IP,在子网中相当于一台独立的主机,对于搭建hadoop来将更能模拟真实性吧.下  面是我的ipv4设置

     hostname IPV4地址 子网掩码 网关
     宿主机    192.168.43.79 255.255.255.0 192.168.43.1
     主节点 master 192.168.43.89 255.255.255.0 192.168.43.1
     从节点1 slave1 192.168.43.90 255.255.255.0 192.168.43.1
     从节点2 slave2 192.168.43.91 255.255.255.0 192.168.43.1


关于如何修改IPV4的ip地址,不同版本的Linux,命令行各有不同,盆友们根据自己的版本自己搜索一下.不清楚这三种虚拟机的网络模式的盆友们请点击这里.看小炒花生米的博客

3,安装vim , ssh

 

1 sudo apt-get install vim
2 sudo apt-get install ssh

如果无法安装,检查一下软件包的安装源,

Ubuntu下:

 如果这个选项是被选中的,那么取消选择这个选项.Ubuntu默认是选中的.

4,配置Java环境变量

1,从oracle或国内网盘下载jdk安装包到虚拟机
2,用cd命令进入jdk的当前目录,利用下面的命令解压缩:
tar -zxvf jdk......(你的jdk压缩包名称)

tar -xzf jdk......(你的jdk压缩包名称)
其中v参数是指定是否在终端回显显示解压的详细过程更多的参数及其作用参见: http://www.2cto.com/os/201207/143935.html 3,利用如下命令将解压后的文件夹剪切到 /usr/local 目录下
sudo mv jdk...(你的jdk压缩包名称) /usr/local
关于为什么是移到/usr/local 目录下,你需要了解Linux系统的文件系统的目录结构及其作用,参见 http://blog.sina.com.cn/s/blog_662234020101ebfd.html 当然,依据自己的理解也可以放在其他路径,例如/opt下也是可以的.
4,配置环境变量
配置环境变量一共有三种方式,我选择"最狠"的一种.修改profile文件
sudo vim /etc/profile
在文件末尾加入下面语句(注意将JAVA_HOME后面的路径改为刚才盆友们自己存放jdk解压后的文件夹的位置)
JAVA_HOME=/usr/local/jdk CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar PATH=$JAVA_HOME/bin:$PATH export JAVA_HOME export CLASSPATH export PATH
最后执行配置文件使配置立即生效
source /ect/profile
其他两种配置环境变量的方式参见:http://www.cnblogs.com/yjhrem/articles/2227680.html

6,配置ssh,实现节点间无密码登陆

原理:
登录的机子可有私钥,被登录的机子要有登录机子的公钥。这个公钥/私钥对一般在私钥宿主机产生。 上面是用rsa算法的公钥/私钥对,当然也可以用dsa(对应的文件是id_dsa,id_dsa.pub)
步骤:
1 [主/从],主节点和从节点下均在命令行执行  1 ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa 
参数rsa指定加密算法,也可以用dsa参数,如果用dsa,就把下面所有写rsa的地方改成dsa.
参数-p是指定密码 -p ''表示空密码
参数-f是指定路径,可以不用指定,因为默认的路径即是~/.ssh/id_dsa
如果不加-p和-f参数,那么需要在执行命令的过程中需要根据提示多按两次回车,来确认是否默认空密码和默认路径
2 [主],主节点进入.ssh文件夹 1 cd ~/.ssh 
cd ~/.ssh 将生成的公钥id_rsa.pub 内容追加到authorized_keys
 1 cat id_rsa.pub >> authorized_keys 
3 [从],从节点:
在slave1中执行命令: 1 scp id_rsa.pub master:~/.ssh/id_rsa.pub.s1 
在slvae2中执行命令: 1 scp id_rsa.pub master:~/.ssh/id_rsa.pub.s2
4 [主],主节点: 1 cat id_rsa.pub.s1 >> authorized_keys; 2 cat id_rsa.pub.s2 >> authorized_keys; 
5 [主],主节点: 1 scp authorized_keys slave1:~/.ssh/; 2 scp authorized_keys slave2:~/.ssh/; 
验证:
验证ssh免密码登录:
输入命令ssh slave1 根据提示输入“yes” 第一次登陆仍然需要输入密码
输入命令exit注销(Logout)
再次输入命令ssh salve1 即可直接登录

8,大功告成

马上要启动集群啦,想想还有点激动呢
1,格式化数据节点:
hadoop namenode -format
注意这里只需格式化一次,如果重新格式化会因为namenodeid/datanodeid不一致的问题而产生异常。如有需求(例如在slave机器上使用jps查看进程时,发现datanode没有正常启动)需要重新格式化,那么请删除master和每个slave中,hadoop下tmp目录,以及/dfs/name和/dfs/data的子目录中的所有内容,然后再重新执行格式化命令。
2,点火发射:
start-all.sh
3,查看启动进程 命令行敲入jps,回车, 看到
 
说明一切测控正常! 你也可以在浏览器输入http://你的主节点IP地址:8088/cluster来检测节点状态
注意:如果看不到TaskTracker,童鞋们也不要惊慌。hadoop2.6下输入jps时看不到TaskTracker的。由于Hadoop2.x采用和hadoop1不同的架构,输入jps,在master看到如上图四个进程,slave中看到三个进程,即证明配置正确。

到此,hadoop完全分布式环境搭建完毕!01:56:31   赶紧睡觉!!!

-->

相关内容推荐