最重要的前提就是:集群中的所有机器的用户名和用户组必须一样

一般做法都是在每台机器上新建用户组和用户名。

比如:sudo addgroup sparks 新建用户组sparks;

   sudo adduser spark sparks 在新建用户组sparks中添加用户spark

   sudo adduser spark sudo 添加sudo权限

补充说明:

   ubuntu默认root是不能使用,这一点个人感觉不如cntos方便,命令经常要加sudo

继续说ssh的事情,步骤:

   1.首先确认每台机器都安装了openssh-server,ubuntu默认安装了openssh-client

     查看方法:ps -e |grep ssh

         1028 ?        00:00:00 sshd     已安装

         如果没有,执行sudo apt-get install openssh-server安装即可

   2.分别先在每台机器执行 ssh-keygen -t rsa ,当然rsa只是一种方式,也可以用别的,比如dsa

     具体ssh-keygen 可以查看help

     会在~/ 目录下生成 .ssh文件,原来是没有cd ~/.ssh 可以看到id_rsa.pub(公钥)和id_rsa(私钥)

   3.主从式集群结构master和slave

将每台slave的公钥拷贝到master

     例如:在slave1机器上

scp ~/.ssh/id_rsa.pub spark@master:~/.ssh/pub1

在slave2机器上

scp ~/.ssh/id_rsa.pub spark@master:~/.ssh/pub2

…………………

   4.在master的~/.ssh下,将pub1,pub2等等追加到authorized_keys文件

      authorized_keys该文件默认是不存在(除非以前配过ssh)

直接cat pub1 pub2 >> authorized_keys

5.    将包含所有机器公钥的authorized_keys在分发给所有的slave,即可

     scp ~/.ssh/authorized_keys spark@slave1:~/.ssh/

以上演示主要是说明原理,实际工作均用脚本化完成!     

然后就可以在任意机器无密码访问别的机器

ssh slave1

如果出现:

     Agent admitted failure to sign using the key

   执行ssh-add即可!

     

ubuntu集群下ssh配置总结的更多相关文章

  1. Ubuntu 14.10 下SSH配置

    安装Hadoop时候需要设置SSH ,故将此过程记录下来   推荐安装 OpenSSH , Hadoop 需要通过 SSH 来启动 Slave 列表中各台主机的守护进程,因此 SSH 是必需安装的.虽 ...

  2. 如何解决quartz在集群下出现的资源抢夺现象

    Quartz是一个开源的作业调度框架,它完全由Java写成,并设计用于J2SE和J2EE应用中.它提供了巨大的灵活性而不牺牲简单性.你能够用它来为执行一个作业而创建简单的或复杂的调度,简单的说就是可以 ...

  3. Linux下Ganglia集群监控安装、配置笔记

    http://www.blogjava.net/henry14/archive/2011/12/17/ganglia.html 枪声依旧 Linux下Ganglia集群监控安装.配置笔记 Gangli ...

  4. 3-3 Hadoop集群完全分布式配置部署

    Hadoop集群完全分布式配置部署 下面的部署步骤,除非说明是在哪个服务器上操作,否则默认为在所有服务器上都要操作.为了方便,使用root用户. 1.准备工作 1.1 centOS6服务器3台 手动指 ...

  5. CEPH集群操作入门--配置

      参考文档:CEPH官网集群操作文档   概述 Ceph存储集群是所有Ceph部署的基础. 基于RADOS,Ceph存储集群由两种类型的守护进程组成:Ceph OSD守护进程(OSD)将数据作为对象 ...

  6. hadoop-2.6.0集群开发环境配置

    hadoop-2.6.0集群开发环境配置 一.环境说明 1.1安装环境说明 本例中,操作系统为CentOS 6.6, JDK版本号为JDK 1.7,Hadoop版本号为Apache Hadoop 2. ...

  7. Jenkins集群下的pipeline实战

    关于Jenkins集群 在<快速搭建Jenkins集群>一文中,我们借助docker快速搭建了Jenkins集群,今天就在这个集群环境中创建pipeline任务,体验Jenkins集群下的 ...

  8. KingbaseES R6 集群修改ssh端口执行sys_backup.sh备份案例

    数据库环境:** test=# select version(); version ---------------------------------------------------------- ...

  9. 教你如何利用分布式的思想处理集群的参数配置信息——spring的configurer妙用

    引言 最近LZ的技术博文数量直线下降,实在是非常抱歉,之前LZ曾信誓旦旦的说一定要把<深入理解计算机系统>写完,现在看来,LZ似乎是在打自己脸了.尽管LZ内心一直没放弃,但从现状来看,需要 ...

随机推荐

  1. 【转载】SQL语句用一个表的数据更新另一个表

    在Sqlserver的维护更新操作中,有时候涉及到Update操作,其中有一种情况是根据特定的条件,以一个表中的数据更新另一个表的数据,此时涉及到两个表之间的关系以及操作,此处介绍2种更新方法. (1 ...

  2. linux内核里的字符串转换 ,链表操作常用函数(转)

    1.对双向链表的具体操作如下: list_add ———向链表添加一个条目 list_add_tail ———添加一个条目到链表尾部 __list_del_entry ———从链表中删除相应的条目 l ...

  3. java关于字符串的一些实用操作工具类方法

    package cn.edu.stdu; import java.util.ArrayList; import java.util.LinkedHashSet; import java.util.Se ...

  4. 2018年,JavaScript都经历了什么?

    摘要: 对JSer来说,这是很有意思的1年. 本文灵感来自JavaScript Weekly周报,欢迎大家订阅. The State of JavaScript 2018 The State of J ...

  5. elementUI 时间格式化(一般方法)

    1.html: ... <el-table-column prop="updateTime" label="更新时间" width="160&q ...

  6. [待优化笔记]原生JS实现验证框架 checkFun

    ;(function(){ /** 验证框架 checkFun * 使用方法: * <input class="required" type="text" ...

  7. [Intellij] 在IntelliJ IDEA 中创建运行web项目

    安装工具 1.JDK7+ 2.IntelliJ Idea 工具(下载安装后,网上找注册码破解即可) 3.tomcat7+ 解压缩版 明确两个概念: 1.Project:类似于eclipse的works ...

  8. mysql随笔系列-1

    MySQL数据库管理 本人实验所用的MySQL数据库版本:5.5.56-MariaDB MariaDB Server  操作系统:centos7.5 1.创建数据库 MariaDB [(none)]& ...

  9. Daydream Controller手柄数据的解析

    参考: How I hacked Google Daydream controller How I hacked Google Daydream controller (Part IV) 反编译代码: ...

  10. [TensorFlow]Tensor维度理解

    http://wossoneri.github.io/2017/11/15/[Tensorflow]The-dimension-of-Tensor/ Tensor维度理解 Tensor在Tensorf ...