码迷,mamicode.com
首页 > 其他好文 > 详细

hadoop初步环境搭建,ssh无密码通信

时间:2015-07-11 18:20:28      阅读:609      评论:0      收藏:0      [点我收藏+]

标签:

一、初步环境搭建

1在Windows 7上安装VMware虚拟机(VMware-workstation-full-9.0.2),VMware Workstation下载地址:

https://my.vmware.com/cn/web/vmware/details?downloadGroup=WKST-902-WIN&productId=293&rPId=3526

技术分享
注意:不要安装到C盘,找一个磁盘剩余空间较大的盘安装。

2在VMvare中装三台Ubuntu机器(我们使用的是ubuntu-14.10-desktop),每台机器分配1G的内存,Ubuntu下载地址:

http://www.ubuntu.org.cn/download/desktop/alternative-downloads

在虚拟机中分别安装这三台机器

技术分享

技术分享

技术分享

技术分享

技术分享

3分别在三台Ubuntu机器中设置root用户机器密码,以后每次登录的时候都是用root用户登录,具体设置方式如下:

sudo -s进入 root用户权限模式

技术分享

安装vim

输入命令apt-get install vim

设置root登陆

sudo vim /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf

技术分享

技术分享

在弹出的编辑框里输入:

greeter-show-manual-login=true 保存关闭

技术分享

接着在终端中输入:sudo passwd root

技术分享

三台机器修改后,再次登录系统的时候用root用户登录:

技术分享

4在三台Ubuntu机器上安装Java,在这里我们使用的是jdk1.7.0_67(下载地址http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html )

技术分享

下载tar.gz文件

打开终端,建立新目录“/usr/lib/java”,如下图所示:

技术分享

把下载的JDK文件移到刚刚创建的目录中

技术分享

解压JDK文件

技术分享

解压完成的文件目录如下图所示:

技术分享

修改环境变量

技术分享

进入配置文件,点i进入INSERT模式,在配置文件的最后加入如下代码,完成后ESC,:wq(保存并退出)

技术分享

执行source命令使配置文件生效:

技术分享

验证JAVA是否安装成功

输入命令,java –version

技术分享

三台Ubuntu机器分别出现上述信息就表明Java安装正确。

5配置三台机器的/etc/hosts和/etc/hostname并安装ssh设置三台机器之间的无密码登录

安装ssh

Hadoop集群之间是通过ssh进行通信的,此时我们需要设置密码为空,从而免去每次通信时输入密码,安装如下

技术分享

输入y继续,等待安装完成

技术分享

注意:安装ssh若遇到如下错误

E: Package has no installation candidate

解决方法:

输入

sudo apt-get install update

如果问题依然没有解决,则输入

sudo apt-get install upgrade

接着输入sudo apt-get install

最后输入sudo apt-get install ssh即可

安装ssh完成后启动服务

/etc/init.d/ssh start

技术分享

查看ssh是否正常启动

技术分享

设置免密码登陆,生成私钥公钥

ssh–keygen –t rsa –P “”

技术分享

在/root/ssh中生成两个文件:id_rsa和id_rsa.pub,id_rsa为私钥,id_rsa.pub为公钥

技术分享

我们将公钥id_rsa.pub追加到authorized_keys中,因为authorized_keys用于保存所有允许当前用户身份登录到ssh客户端用户的公钥内容:

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

技术分享

现在查看是否能够进行ssh免密码登陆

技术分享

输入yes继续

技术分享

表明登陆成功,可以使用exit命令退出localhost

技术分享

再次登陆进入localhost就不需要密码了

技术分享

安装rsync

技术分享

三台机器分别安装ssh并且设置完成后,分别修改三台机器的主机名称。

在master上,进入/etc修改hostname文件

技术分享

将主机名ubuntu修改为master,保存后退出

技术分享

重启master,查看主机名是否修改成功

重启命令为sudo reboot

技术分享

查看主机名

技术分享

在slave1上,进入/etc修改hostname文件

技术分享

将主机名ubuntu修改为slave1,保存后退出

技术分享

重启slave1,查看主机名是否修改成功

重启命令为sudo reboot

技术分享

查看主机名

技术分享

在slave2上,进入/etc修改hostname文件

技术分享

将主机名ubuntu修改为slave2,保存后退出

技术分享

重启slave2,查看主机名是否修改成功

重启命令为sudo reboot

技术分享

查看主机名

技术分享

设置三台机器的IP对应关系,使得三台机器互相之间能够无密码通信

首先,分别查看三台的IP地址:(ifconfig)

master:如下可知master对应的ip为192.168.252.128

技术分享

slave1: 如下可知slave1对应的ip为192.168.252.129

技术分享

slave2:如下可知slave2对应的ip为192.168.252.130

技术分享

分别修改三台机器的/etc/hosts文件,将上述IP和机器名的对应关系进行配置

以mater上的修改为例子:

vim /etc/hosts

技术分享

技术分享

将三台机器的IP和机器名对应关系添加进去,保存并退出

技术分享

配置完成后,使用ping命令查看三台机器是否正常通信

master ping slave1和slave2

技术分享

slave1 ping master和slave2

技术分享

slave2 ping slave1和master

技术分享

查看通信无误之后,我们开始设置三台机器的无密码通信

在前面的步骤以及完成了各台机器自己的公钥私钥生成,现在需要将公钥私钥进行共享

首先,我们将slave1和slave2上的公钥都copy到master节点上:

技术分享

技术分享

现在可以看到master下面汇集了master自己的公钥、slave1的公钥、slave2的公钥

技术分享

接下来将三个公钥都追加到authorized-keys中:

技术分享

将matser的公钥信息authorized-keys复制到slave1和slave2的~/.ssh下

复制完成后,在master上通过ssh登陆slave1

技术分享

在master用ssh登陆slave2

技术分享

用slave1登陆master和slave2,用slave2登陆master和slave1也是同理。

由此我们完成了对三台机器的无密码通信。

hadoop初步环境搭建,ssh无密码通信

标签:

原文地址:http://www.cnblogs.com/dmyu/p/4639067.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!