Ubuntu14.04全分布式安装hadoop2.7.2(二)下载安装+ssh免密码登陆

前端之家收集整理的这篇文章主要介绍了Ubuntu14.04全分布式安装hadoop2.7.2(二)下载安装+ssh免密码登陆前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

前文回顾:

三台电脑,一台做主机,两台做从机。主机名分别是
master,slave1,slave2,ip分别是192.168.235.1~3
系统:ubuntu14.04
jdk:1.8.0_91
hadoop: 2.7.2 (stable)
用户名:hadoop

从零开始的安装步骤:
1 创建Hadoop用户
2 下载jdk,hadoop,ssh,eclipse等等,
3 实现几台机之间的ssh无密码登陆
4 配置环境(jdk,hadoop单机)
5 改host和hostname文件
6 在主机上修改和配置
7 把修改好的hadoop文件夹整个复制到从机上
8 主机上格式化namenode,并开始运行整个工程
9 jps查看运行状态
10 主机上关闭整个工程


上一篇,本文讲第二和第三个步骤:
*下载安装各种必须的东西,如jdk,hadoop,ssh等
* 实现几台机之间的ssh无密码登陆

1 下载jdk
写这篇博客的时候最新版jdk是1.8.0_111,最新版的eclipse 似乎必须用jdk1.8以上,hadoop3 开始只能用jdk1.8以上,so……
jdk1.8下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
据说旧版hadoop用jdk1.8无法编译,但是目前装配阶段未发现jdk1.8+hadoop2.7.2有问题,以防万一可以多下载个jdk1.7备用(个人觉得默认1.8会好点)
jdk1.7下载地址(开始难找了):
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

2 下载hadoop
hadoop最近出了最新版的3,2.7中最新版是2.7.3,不过为了稳定点选了2.7.2(括号stable稳定版)
所有版本都有source(源码)和binary(已编译)版本,我选了后者,直接解压可用
2.7.2 binary 下载地址:
http://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-2.7.2/hadoop-2.7.2.tar.gz

3 下载ssh
Ubuntu已经默认安装了SSH client,所以只要再安装一下SSH server即可.

$sudo apt-get install openssh-server

安装完成后可以测试登录本机

$ssh localhost

提示输入本机密码,没其他什么报错就是成功了

4 下载eclipse
在eclipse的官网上找最新版下载就好。要看清楚是installer,ee,web还是完整版
另外eclipse操作hadoop需要hadoop插件,网上能够找得到。
由于暂时未用到本人跳过了这部分,以后会再补充。

5 主从机之间ssh无密码登陆
因为hadoop运行过程中需要主从机很频繁地用ssh登陆,如果没有无密码登陆会需要一直输入密码,(rp如我输多了还可能挂)

以下用A机称呼主机,BC机称呼从机(怪我懒,懂就好)

(1)现在所有新用户文件夹下都是空的,至少要生成.ssh文件夹。所以在所有机下生成公钥/私钥对。

$ssh-keygen -t rsa -P ''

-P表示密码,-P ” 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车。
它在/home/hadoop下生成.ssh目录,.ssh下有id_rsa和id_rsa.pub。

(2).把A机下的id_rsa.pub复制到B,C机下,在B机的.ssh/authorized_keys文件里,我用scp复制。BC机暂时没打算让它们登A机,若要,同理。

$scp id_rsa.pub hadoop@192.168.235.2:/home/hadoop/master_key.pub
The authenticity of host '192.168.235.2 (192.168.235.2)' can't be established. ECDSA key fingerprint is fa:e5:b2:84:fa:3d:48:e8:ad:ac:e2:c3:8b:dc:56:91. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.235.2' (ECDSA) to the list of known hosts. hadoop@192.168.235.2's password: 
id_rsa.pub                                    100%  395     0.4KB/s   00:00

由于还没有免密码登录的,所以要输入密码。

(3).BC机把从A机复制的id_rsa.pub添加到.ssh/authorzied_keys文件里。

$cat master_key.pub >> .ssh/authorized_keys
$chmod 600 .ssh/authorized_keys

authorized_keys的权限要是600。

(4)在(2)中可以看到,ssh登陆提示The authenticity of host can’t be established,可能会一直要你输入yes/no。
修改/etc/ssh/ssh_config文件的配置,最后面添加

StrictHostKeyChecking no

可以不再提示

(5).A机登录BC机。

$ssh hadoop@192.168.235.2

如果看到以下就是成功了

Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 3.16.0-45-generic x86_64)

Documentation: https://help.ubuntu.com/
438 packages can be updated. 
260 updates are security updates.

PS:免密码登陆是分用户的(跟.ssh文件夹在用户文件夹下有关),如果机上有多个用户,如abc和hadoop,记得scp和ssh的时候用hadoop用户,另一个用户需要登陆的话需要重新从(1)开始生成密钥。

下一篇继续。

原文链接:/ubuntu/355854.html

猜你在找的Ubuntu相关文章