替hadoop集群安装SSH(ubuntu 11)

为hadoop集群安装SSH(ubuntu 11)

 

<1> hadoop 集群安装 SSH

安装hadoop 集群时,需要专门指定一个服务器作为主节点,这个服务器会常驻 NameNode JobTracker 守护进程,它也将作为一个基站,负责联络并激活所有从节点上的 DataNode TaskTracker 。因此我们要为主节点定义一种手段,使他能够远程的访问到集群中的每个节点。因此, Hadoop 使用了无口令的 SSH 协议。

<2>定义一个公共账号

hadoop-user

<3>SSH的安装

·切换到root 用户    su root 

·安装SSH                sudo apt-get install ssh

· ubuntu服务器上生成私钥和公钥           ssh-keygen

显示:Enter file in which to save the key (/root/.ssh/id_rsa): 

这里是问你 私钥和公钥 存放在什么地方,回车表示默认

显示:Created directory '/root/.ssh'.

这里是让你设置密码,输入自己的密码,一定要记住啊。(4 位以上)

显示:Enter same passphrase again

再次输入密码,然后回车

显示:

Your identification has been saved in /root/.ssh/id_rsa.

你的私钥存放位置/root/.ssh/id_rsa.

Your public key has been saved in /root/.ssh/id_rsa.pub.

你的公钥存放位置/root/.ssh/id_rsa.pub

然后地下就是密码的信息。

此时SSH安装完成。

      <4>SSH命令

ssh命令可以用来在远程机器上不经shell提示登录而执行命令。它的语法格式是:sshhostnamecommand。譬如,如果你想在远程 主机penguin.example.net上执行ls/usr/share/doc命令,在shell提示下键入下面的命令:

  1. sshpenguin.example.netls/usr/share/doc 

使用scp命令

scp命令可以用来通过安全、加密的连接在机器间传输文件。它与rcp相似。

把本地文件传输给远程系统的一般语法是:

  1. scplocalfileusername@tohostname:/newfilename 

localfile指定源文件,username@tohostname:/newfilename指定目标文件。

要把本地文件shadowman传送到你在penguin.example.net上的账号内,在shell提示下键入(把username替换成你的用户名):

  1. scpshadowmanusername@penguin.example.net:/home/username 

这会把本地文件shadowman传输给penguin.example.net上的/home/username/shadowman文件。

把远程文件传输给本地系统的一般语法是:

  1. scpusername@tohostname:/remotefile/newlocalfile 

remotefile指定源文件,newlocalfile指定目标文件。

源文件可以由多个文件组成。譬如,要把目录/downloads的内容传输到远程机器penguin.example.net上现存的uploads目录,在shell提示下键入下列命令:

  1. scp/downloads/*username@penguin.example.net:/uploads/