搭建了很多次hadoop2.2.0了,尝试过很多不同的启动方法、配置参数、位置,其中涉及到到底要不要配置SSH免密码登录的问题

先是搞清楚为什么需要SSH免密码登录


SSH免密码登录操作步骤:

... ...


在hadoop2.2.0中有三种启动方式:

  1. 使用hadoop-daemon.sh和yarn-daemon.sh分别启动每一个守护进程;
  2. 使用start-dfs.sh和start-yarn.sh分开启动不同模块的所有进程;
  3. 使用start-all.sh启动所有模块所有进程。

三种启动方式在实验阶段都可以使用,只不过第一种更适合于生产环境。


第一种不需要配置SSH免密码登录,第二种和第三钟需要,为什么?

第一种是逐一启动每一台机器的每一个进程,就是说如果是完全分布式环境,有多少台机器我就要在每台机器上使用这个命令去启动对应的命令,如在namenode上启动namenode就要使用sbin/hadoop-daemon.sh start namenode这个命令,在datanode上启动datanode,就要使用sbin/hadoop-daemon.sh start datanode这个命令,对应的yarn进程启动也一样,不过是使用yaen-daemon.sh。

而第二种和第三种是一种只在namenode上使用就可以启动整个集群的方便方式,它的原理是根据配置文件启动namenode上的对应进程然后再通过SSH协议登录到slave上启动对应的进程


说到这已经明白了,那么我以前的一种说法或者一种认识就是错的。

因为只需要namenode远程登录到slave中启动对应进程,所以所有slave只需要拥有namenode的公钥就行了,不需要拥有其他slave的公钥。

不过我引出一种猜想,反正namenode和slave的信息是在配置文件中读出来的,所以如果slave能SSH免密码登录namenode,那么是不是就可以在namenode上格式化文件系统,而在某台slave上启动集群?呵呵。


那其他地方不用SSH协议了吗?

答案是不用了,只有启动的时候才用。(我现在的认识)

其他如心跳等是用了RPC协议,web UI使用了HTTP协议,所以在hadoop中RPC协议、HTTP协议远比SSH协议重要的多


琐碎-到底要不要SSH免密码设置的更多相关文章

  1. ssh 免密码设置失败原因总结

    先复习一下设置ssh免密码操作的步骤: 进入主目录 cd 生成公钥 ssh-keygen -t rsa -P '' (注:最后是二个单引号,表示不设置密码) 然后分发公钥到目标机器 ssh-copy- ...

  2. 设置ssh免密码登录脚本(hadoop自动化部署脚本一)

    设置ssh免密码登录脚本(hadoop自动化部署脚本一) 设置ssh免密码登录脚本(飞谷云大数据自动化部署脚本一) 1.#!/bin/sh2.#important note:this script i ...

  3. 在CentOS/RHEL上设置SSH免密码登录

    本文会告诉你怎样在 CentOS/RHEL 上设置 SSH 免密码登录.自动登录配置好以后,你可以通过它使用 SSH (Secure Shell)和安全复制 (SCP)来移动文件. SSH 是开源的, ...

  4. ssh 免密码登陆设置不成功

    记一次centos6设置免密码登陆设置不成功的解决.自己挖的坑自己填. ssh 免密码登陆设置( 正常情况下是这样的,设置成功后登陆主机是不需要密码的) [root@master .ssh]# ssh ...

  5. 配置ssh免密码登录设置后还是提示需要输入密码

    工作之余搭建了一个集群测试,配置了ssh免密码登录以后  ,所有的ssh-copy-id 密钥也都分发了 ,各项配置也没有问题,但是使用ssh进行免密登录时,没有报错,但是要输入被ssh主机的登录密码 ...

  6. 如何配置ssh免密码登录

    [TOC] 如果你在管理一堆unix机器,每次登录都要输入密码是挺烦的事情,一方面为了安全我们一般不会将所有机器的密码都设置成一样,另一方面就算一样每次都输入一遍也很麻烦. 这种情况下我们一般是用ss ...

  7. ssh免密码登陆

    Ssh免密码登陆设置 准备工作:1.确保两个主机里没有id_rsa.pub和authorized_keys的文件(这两个文件会影响实验的结果)# find / -name id_rsa.pub可查看是 ...

  8. linux 配置ssh免密码登录

    1.确保主机名唯一 主机名修改方法: a.修改/etc/sysconfig/network,HOSTNAME=想要设置的主机名称 b.修改/etc/hosts,127.0.0.1   localhos ...

  9. 配置Ssh免密码登录

    配置Ssh免密码登录 一个master节点,两个client节点(client1.client2) 1.所有节点创建hadoop用户,并设置密码 以root账号登录: useradd hadoop p ...

随机推荐

  1. Java-note-字符串转换为基本值

    Integer.parseInt() and Double.parse.double() 例: Integer.parseInt("123") 得到常量123

  2. php pdo

    定义:PDO(PHP Data Object)是PHP5才支持的扩展,它为PHP访问各种数据库定义了一个轻量级的.一致性的接口. PDO是PHP5中的一个重大功能,PHP6中将只默认使用PDO来处理数 ...

  3. Apache Rewrite常用设置说明

    例子: RewriteEngine on 打开引擎 RewriteRule test.html /test.php [L] RewriteRule test.html?$ /tianqi.php?s1 ...

  4. JAVA WEB SQLHelper类的封装

    在这次做项目中,我对自己最满意的就是封装了一下SQLHelper类,我对自己感到骄傲主要是 我是初学者,我刚开始不知道可以这样做,我只是想着试着去这样做了,结果真的可以,所以我 在我的模块就自己封装了 ...

  5. RabbitMQ C# 例子 -摘自网络

    //刚刚接触,如有不对还望不吝指正 public static void StartUp() { #region 前期准备工作 ConnectionFactory factory = new Conn ...

  6. 搭建linux下teamspeak3多人语音服务器

    最近项目中新的需求,需要支持多人在线实时通话.就安装测试一下teamspeak.http://www.teamspeak.com/ 主页有服务器版本和客户端版本供下载安装.软硬件环境: melot@m ...

  7. Linux下文件的权限

    一.Linux下查看文件属性 命令为: [root@localhost ~]# ls -al 结果: ls是『list』的意思,重点在显示文件的文件名与相关属性.而选项『-al』则表示列出所有的文件详 ...

  8. java volatile进阶(一)

    本篇文章继续学习volatile.上篇文章简单的介绍了volatile和synchonized,这篇文章讲一下什么时候可以用volatile. 先看一段代码. package com.chzhao.v ...

  9. JQuery中的AJAX参数详细介绍

    Jquery中AJAX参数详细介绍 参数名 类型 描述 url String    (默认: 当前页地址) 发送请求的地址. type String (默认: "GET") 请求方 ...

  10. Codeforces Round #257 (Div. 1) C. Jzzhu and Apples (素数筛)

    题目链接:http://codeforces.com/problemset/problem/449/C 给你n个数,从1到n.然后从这些数中挑选出不互质的数对最多有多少对. 先是素数筛,显然2的倍数的 ...