ssh协议与免密码登陆

接下来,我们回到初始设定的文件夹 /itcast/hadoop-2.2.0/ 然后ls一下,看一眼,有如下几个

bin  etc  include  lib  libexec  logs  sbin  share  tmp

我们上一节启动JPS里各种节点的start-all.sh,start-dfs.sh,start-yarn.sh的启动命令是在哪个包里的?对,在sbin里面,因此我们关闭它,也要选择sbin那个包  cd sbin/

之后


选择stop-all.sh,用./执行,同样,出现了不推荐这样做,建议分开关闭,不过好在还可以关闭。在关闭的过程中,可以清晰地看到逐个关闭namenode,datanode,并且每次都让你输入密码


再次输入jps,就只能看到jps自己了,别人都已经被停了


HDFS主要完成的功能:存储海量数据

YARN主要完成的功能:可以运行一些计算框架【mapreduce,spark】,对海量数据进行分析计算(数据来自HDFS或其他介质)

接下来,就要用ssh方法来免输每次都要输的密码了。ssh的全称是secure shell

先回自己家 ssh itcast01 需要输一次密码,相当于”回家拿钥匙“


其次,再创建一个新的虚拟机,命名为itcast02  用:vim /etc/sysconfig/network-scripts/ifcfg-eth0   来编辑修改ip为99,修改onboot,修改BOOTPROTO

一台机器给另一台机器发送指令【ssh协议】ssh 192.168.8.99 mkdir /itcast0106   在8.99上的那台机器上创建一个目录


在这里用SSH协议的目的:让一台机器发送命令,让其他小弟都行动起来


提示让你输入8.99机子的密码

之后我这里显示连接不上,我暂时还不知道原因【试过把防火墙关了,可是不起效果】




之后我百度了下,貌似是我要连接的8.99机子上的某些设定造成的,解决方法是,在8.99机子上,打开如下文件并修改:

修改/etc/hosts.allow文件,加入 sshd:ALL


vim /etc/hosts.allow


之后再从8.88利用ssh来传输,就成功了,成功的时候,发来一条消息,说是you have new mail in /var/mail/root  就是你进入了别的系统,给你发个邮件提示下,这个也可以关闭,在其他博客上已经看到了。不过暂时对我来说还不用管它。


好了,话说回来。刚刚了解了ssh协议,现在要配置ssh免登陆,方法是,配制一对密钥,一个公钥,一个私钥:ssh-keygen -t rsa

-t表示使用what加密算法,我们用RSA加密算法

ssh协议与免密码登陆_第1张图片

生成了一个类似二维码的东西,和一个公钥id_rsa.pub

打开看一眼 more id_rsa.pub,得到一堆码


我要自己到自己免登陆。私钥是我自己保存的。我要把公钥拷给我自己:cp id_rsa.pub authorized_keys 把我当前的公钥拷贝到“已认证的”钥匙里,就行了

ls一下发现底下多了个authorized_key

之后我用ssh访问我自己,就不需要输密码了



之后,进入hadoop也不需要输密码了:cd /itcast/hadoop-2.2.0/sbin/ 进入开启hadoop的地方,然后:./start-dfs.sh【之前说了不要用start-all】


可以用ssh连接第二台机子:ssh 192.168.8.99


可以把我当前的公钥拷贝到第二个机子:ssh-copy-id 192.168.8.99


综上:如果你想免登陆到另一台机器上,你只需要——在这台机器上生成一对钥匙,然后把公钥拷贝到另一台机器上


但是,这只限于配置的8.88到8.99免登陆,不代表可以互登。99到88还是要输密码


最后,附上两主机互通流程图

ssh协议与免密码登陆_第2张图片


你可能感兴趣的:(ssh协议与免密码登陆)