搭建了很多次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. Hadoop2.0新特性-持续追加【干货】

    1.NAME NODE HA 2.NAME NODE Federation 3.HDFS 快照(目录快照) 4.HDFS 缓存 5.HDFS ACL 6.异构层级存储结构 -------------- ...

  2. openstack分布式安装

    一. keystone安装笔记 初次接触openstack,在尝试过单机部署以后不是很满意,就开始着手分布式部署,主要是按照openstack官网上的安装教程来的,本人安装的是目前最新的 I 版. 以 ...

  3. Windows Azure Platform (一) 云计算的出现

    <Windows Azure Platform 系列文章目录> 最近的一年一直致力于微软云计算技术的推广和研究,对于微软的云计算平台Windows Azure Platform有一定的了解 ...

  4. homework-08 C++课程课后思考与练习

    经过上次晚交作业导致没分以后 我再也不敢晚交作业了 今天就把这次作业先写了 homework Part 1 1. 理解C++变量的作用域和生命周期 a) 用少于10行代码演示你对局部变量的生命周期的理 ...

  5. POJ 1511 Invitation Cards (最短路spfa)

    Invitation Cards 题目链接: http://acm.hust.edu.cn/vjudge/contest/122685#problem/J Description In the age ...

  6. Spring JdbcTemplate Querying examples

    Here are few examples to show you how to use JdbcTemplate query() methods to query or extract data f ...

  7. 修改eclipse默认编码方式

     设置js文件的默认编码格式为UTF-8                在Windows->Preference页面中,选择General->Content Types           ...

  8. IPhone 设备状态、闪光灯状态

    //判断闪光灯状态,修改默认的"CameraFlashOff" 按钮图片.转由 TGCameraFlash.m 控制图标切换    AVCaptureDevice *device ...

  9. C#中Internal class与静态类说明

    C#中的internal访问修饰符表示 访问仅限于当前程序集 但是注意,internal修饰符修饰的类中,可以有public的成员变量和成员方法等 Static 关键字作为修饰符可以用于类.方法和成员 ...

  10. VS~单步调试DLL

    有时我们从第三方下载DLL库之后,在使用VS进行调试时还是很麻烦的,现在我总结一下,在开发过过程中调试DLL的方法,希望对各位在开发中有帮助. 1 VS下载插件.Net Refector 2 引用你的 ...