linux搭建hadoop环境时,实现linux集群间免密钥登陆

原创 2016年06月01日 11:10:28

  在搭建hadoop环境时,要实现机器间的免登入,我通过网上查资料,差不多熟悉了实现的方法,所以整理一下

 避免自己忘记,也给别人一个参考!

 三台机器的属性:

   name:master      ip:192.168.234.12     operatesystem:centos 6.3    主节点

   name:slave1      ip:192.168.234.13     operatesystem:centos 6.3    子节点1

   name:slave2      ip:192.168.234.14     operatesystem:centos 6.3    子节点2

  三个机器的hadoop用户都为learn,即三台机器操作环境为learn用户

 

 操作前修改一下/etc/hosts文件,将这三个ip都添加进去(三台机器都需要进行这个步骤)

   命令:vi   /etc/hosts

   将一下内容添加进去:

      192.168.234.12  master

      192.168.234.13  slave1

     192.168.234.14  slave2 

 (千万别写错,如果写错,以后的操作会报错)


第一步:

   首先在各个机器中生成id_dsa.pub

   在各个机器中输入以下命令

   ssh-keygen -t  rsa               :生成公共密钥

   之后按三次回车就可以了,

   你查看/home/learn/.ssh目录就会发现多了两个文件,分别为id_rsa, id_rsa.pub


   再将目录中的id_dsa.pub,复制一份并改名为authorized_keys(每台机器都需要)

    命令:cp  /home/learn/.ssh/id_rsa.pub    /home/learn/.ssh/authorized_keys


第二步:

  将slave1节点和slave2节点的authorized_keys 追加到master的authorized_keys

  换句话说就是,将slave1和slave2的authorized_keys里的东西复制粘贴到master的authorized_keys

  master的authorized_keys就有了三个公共密钥

   具体的操作命令:scp  /home/learn/.ssh/authorized_keys  learn@192.168.234.12:/home/learn/authorized_keys1(在节点1的操作)

 scp  /home/learn/.ssh/authorized_keys  learn@192.168.234.12:/home/learn/authorized_keys2(在节点2的操作)

之后你就会发现master的/home/learn/.ssh目录多了两个来自节点1和节点2的公共密钥

   在master上的操作:

   cat  /home/learn/.ssh/authorized_keys1  /home/learn/.ssh/authorized_keys

   cat  /home/learn/.ssh/authorized_keys2  /home/learn/.ssh/authorized_keys

  执行之后master的authorized_keys文件中就有了三个公共密钥了

 

  第三步:

  用master上的/home/learn/.ssh/authorized_keys替换节点1,节点2的authorized_keys文件

 在master上的操作 

 scp  /home/learn/.ssh/authorized_keys learn@192.168.234.13:/home/learn/.ssh/authorized_keys(替换节点1)

scp  /home/learn/.ssh/authorized_keys learn@192.168.234.14:/home/learn/.ssh/authorized_keys(替换节点2)


第四步:

    通过前面的三步你发现,并不能免密码登入,这时候就需要第四步,改权限

      对三台机器都使用下面的命令:

       chmod 600   /home/learn/.ssh/authorized_keys (必须在root用户上进行)


 检验:ssh  192.168.234.13  (我用的是远程登入工具,在master内的操作)

            ssh  192.168.234.14 (这时候你就可以不用输入密码,直接登入)

实现Linux免密钥登陆

我们在一台Linux机器上利用SSH登陆其他Linux机器时,需要我们输入PassWord,以及搭建集群时,节点之间相互通信,都需要输入PassWord。第一,长时间SSH登陆需要反复输入密码;第二,...
  • shaomingliang499
  • shaomingliang499
  • 2016年01月14日 13:40
  • 2244

hadoop 配置集群之间SSH无密码登陆 (重点推荐)

在"Hadoop集群(第1期)"安装CentOS6.0时,我们选择了一些基本安装包,所以我们需要两个服务:ssh和rsync已经安装了。可以通过下面命令查看结果显示如下:   rpm –qa |...
  • jihuanliang
  • jihuanliang
  • 2015年08月31日 00:23
  • 3651

hadoop设置ssh免密码登录

对于需要远程管理其它机器,一般使用远程桌面或者telnet。linux一般只能是telnet。但是telnet的缺点是通信不加密,存在不安全因素,只适合内网访问。为 解决这个问题,推出了通信加密通信协...
  • zwx19921215
  • zwx19921215
  • 2014年02月21日 21:59
  • 15842

Linux下Hadoop2.6.0集群环境的搭建

本文旨在提供最基本的,可以用于在生产环境进行Hadoop、HDFS、Hbase分布式环境的搭建,对自己是个总结和整理,也能方便新人学习使用。...
  • beliefer
  • beliefer
  • 2016年04月11日 11:50
  • 17922

Linux 集群间无密码登录的配置

最近开始学习Hadoop相关的东西,发现无论是Hadoop、Hive、Storm、ZooKeeper等等很多的工具在集群环境下都需要无密码登录 这样在使用时才更方便。所以就需要SSH的密钥登录方式...
  • clarck_913
  • clarck_913
  • 2016年03月13日 21:46
  • 1740

linux hadoop完全分布式集群搭建图文详解

一.前期准备 1.1 Win7官网下载hadoop包 本文使用版本hadoop-2.6.5.tar.gz 1.2 配置jdk jdk1.7:linux jdk安装和配置 1.3 centos...
  • a123demi
  • a123demi
  • 2017年04月24日 19:35
  • 1183

linux服务器之间免秘钥互相访问

1、在其中一台机器里输入ssh-keygen  一路回车就可以了 2、接下来是把公钥拷贝到另外一台机器里并且把公钥添加到authorized_keys,有一种笨方法是拷贝添加; 但是还有一个很...
  • u011410254
  • u011410254
  • 2017年03月18日 21:47
  • 459

linux下多节点之间免密钥访问

说明: 目前安装了4个Redhat linux操作系统,主机名分别为hadoop01,hadoop02,hadoop03,hadoop04 其中hadoop01为主节点hadoop...
  • huanbia
  • huanbia
  • 2016年05月05日 15:35
  • 7026

Ubuntu hadoop 伪分布式环境搭建步骤+ssh密钥(免密码登录)配置

1.关闭防火墙 查看防火墙状态 service iptables status 关闭防火墙 service iptables stop 查看防火墙开机启动状态 chkconfig iptab...
  • s646575997
  • s646575997
  • 2016年04月02日 16:22
  • 2137

SSH简介与Hadoop集群环境搭建之 SSH免密钥登录

关于ssh 简介 SSH(secure shell) 是一种网络服务程序,相对于FTP与Telnet而言,传输数据更加安全与高效。安全是因为SSH会对传输的数据加密,而FTP直接以明文的形式传输用...
  • PENGYUCHENG32109
  • PENGYUCHENG32109
  • 2016年04月15日 11:09
  • 1103
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:linux搭建hadoop环境时,实现linux集群间免密钥登陆
举报原因:
原因补充:

(最多只允许输入30个字)