替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提示下键入下面的命令:
- sshpenguin.example.netls/usr/share/doc
使用scp命令
scp命令可以用来通过安全、加密的连接在机器间传输文件。它与rcp相似。
把本地文件传输给远程系统的一般语法是:
- scplocalfileusername@tohostname:/newfilename
localfile指定源文件,username@tohostname:/newfilename指定目标文件。
要把本地文件shadowman传送到你在penguin.example.net上的账号内,在shell提示下键入(把username替换成你的用户名):
- scpshadowmanusername@penguin.example.net:/home/username
这会把本地文件shadowman传输给penguin.example.net上的/home/username/shadowman文件。
把远程文件传输给本地系统的一般语法是:
- scpusername@tohostname:/remotefile/newlocalfile
remotefile指定源文件,newlocalfile指定目标文件。
源文件可以由多个文件组成。譬如,要把目录/downloads的内容传输到远程机器penguin.example.net上现存的uploads目录,在shell提示下键入下列命令:
- scp/downloads/*username@penguin.example.net:/uploads/