ubuntu集群下ssh配置总结
最重要的前提就是:集群中的所有机器的用户名和用户组必须一样
一般做法都是在每台机器上新建用户组和用户名。
比如: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配置总结的更多相关文章
- Ubuntu 14.10 下SSH配置
安装Hadoop时候需要设置SSH ,故将此过程记录下来 推荐安装 OpenSSH , Hadoop 需要通过 SSH 来启动 Slave 列表中各台主机的守护进程,因此 SSH 是必需安装的.虽 ...
- 如何解决quartz在集群下出现的资源抢夺现象
Quartz是一个开源的作业调度框架,它完全由Java写成,并设计用于J2SE和J2EE应用中.它提供了巨大的灵活性而不牺牲简单性.你能够用它来为执行一个作业而创建简单的或复杂的调度,简单的说就是可以 ...
- Linux下Ganglia集群监控安装、配置笔记
http://www.blogjava.net/henry14/archive/2011/12/17/ganglia.html 枪声依旧 Linux下Ganglia集群监控安装.配置笔记 Gangli ...
- 3-3 Hadoop集群完全分布式配置部署
Hadoop集群完全分布式配置部署 下面的部署步骤,除非说明是在哪个服务器上操作,否则默认为在所有服务器上都要操作.为了方便,使用root用户. 1.准备工作 1.1 centOS6服务器3台 手动指 ...
- CEPH集群操作入门--配置
参考文档:CEPH官网集群操作文档 概述 Ceph存储集群是所有Ceph部署的基础. 基于RADOS,Ceph存储集群由两种类型的守护进程组成:Ceph OSD守护进程(OSD)将数据作为对象 ...
- hadoop-2.6.0集群开发环境配置
hadoop-2.6.0集群开发环境配置 一.环境说明 1.1安装环境说明 本例中,操作系统为CentOS 6.6, JDK版本号为JDK 1.7,Hadoop版本号为Apache Hadoop 2. ...
- Jenkins集群下的pipeline实战
关于Jenkins集群 在<快速搭建Jenkins集群>一文中,我们借助docker快速搭建了Jenkins集群,今天就在这个集群环境中创建pipeline任务,体验Jenkins集群下的 ...
- KingbaseES R6 集群修改ssh端口执行sys_backup.sh备份案例
数据库环境:** test=# select version(); version ---------------------------------------------------------- ...
- 教你如何利用分布式的思想处理集群的参数配置信息——spring的configurer妙用
引言 最近LZ的技术博文数量直线下降,实在是非常抱歉,之前LZ曾信誓旦旦的说一定要把<深入理解计算机系统>写完,现在看来,LZ似乎是在打自己脸了.尽管LZ内心一直没放弃,但从现状来看,需要 ...
随机推荐
- IIS中注册.net4.0
1.开始-运行: 2.运行框中输入 cmd ; 3.输入命令 %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i 4.回车 ...
- MVC5 Controller构造方法获取User为空解决方法
用如下方法获取UserId报空引用异常 public class BaseController : Controller { protected SiteContext db = new SiteCo ...
- C#实现给图片加边框的方法
Bitmap bit= new Bitmap(@"" + Path);//给图片加边框 //Bitmap bit = new Bitmap(Screen.AllScreens[0] ...
- UWP: 妙用自定义 Action 以简化并重用代码
相信每一位 App 开发者,在开发过程中,都会有一些代码被反复用到,比如:复制文本,打电话,发短信,发邮件,给应用添加评论等等.在项目之间复制这些代码段,实在不是一个好办法,所以大家可能会把这些代码放 ...
- Netty中的HttpObjectAggregator
Http的Get,POST Get请求包括两个部分: request line(包括method,request uri,protocol version)) header 基本样式: GET /?n ...
- virtualbox中 清理磁盘
1. 碎片整理 windows: 下载 sdelete 工具 执行命令: sdelete –z c:\ Linux: 执行如下命令: sudo dd if=/dev/zero of=/EMPTY bs ...
- 数据库索引(Oracle和Mysql)学习总结
旭日Follow_24 的CSDN 博客 ,全文地址请点击: https://mp.csdn.net/postedit/80910082 索引概念: 索引是关系数据库中用于存放每一条记录的一种 ...
- 如何实现JavaScript的Map和Filter函数?
译者按: 鲁迅曾经说过,学习JavaScript最好方式莫过于敲代码了! 原文: Master Map & Filter, Javascript’s Most Powerful Array F ...
- python名片管理
python名片管理是我根据视频自己敲敲的代码,后续学习会持续更新 代码 card_main.py import card_tools # 无限循环,由用户决定什么时候退出 while True: # ...
- 远程过程调用概述-RMI简介
简介: RPC是远程过程调用(Remote Procedure Call)的缩写形式.SAP系统RPC调用的原理其实很简单,有一些类似于三层构架的C/S系统,第三方的客户程序通过接口调用SAP内部的标 ...