从零开始构建集群前期准备之---SSH各服务器间无密码登陆

集群中服务器数量较多时,各节点的密码不相同之间不停切换,需要牢记各节点密码并输入密码,就成了一件很痛苦的事了。本文讲的SSH各服务器间无密码登陆,就是解决这个问题的。

本文,我们需要实现node1、node2、node3之间不需要输入密码直接通过:

ssh node1或ssh 192.168.100.130直接登录

各节点列表:

node1 192.168.100.130

node2 192.168.100.100

node3 192.168.100.101

实现过程:

首先实现node1无密码登陆node2。

node1节点操作:

1、在node1机器上生成公钥/私钥对

[[email protected] ~]# ssh-keygen -t rsa -P "

(注:-P表示密码,-P ‘‘ 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车。
它在/root下生成.ssh目录,.ssh下有id_rsa和id_rsa.pub。)

2.把node1机下的id_rsa.pub复制到node2机下,在node2机的.ssh/authorized_keys文件里,我用scp复制。

[[email protected] ~]# scp .ssh/id_rsa.pub [email protected]:/root

[email protected]‘s password:

id_rsa.pub                                   100%  392     0.4KB/s   00:00

由于还没有免密码登录的,所以要输入密码。

node2节点操作:

3.node2机把从node1机复制的id_rsa.pub添加到.ssh/authorzied_keys文件里。

[[email protected] ~]# cat id_rsa.pub >> .ssh/authorized_keys
[[email protected] ~]#  chmod 600 .ssh/authorized_keys

(注:authorized_keys的权限要是600。)

再添加机器,就是不停的重复第2步和第3步操作。

大功告成!!!

扩展:主机名登录

1、通过修改hosts文件可以实现通过主机名登录

[[email protected] ~]# vim /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.100.130 node1

192.168.100.100 node2

192.168.100.101 node3

2、使用scp复制hosts文件到各各节点。

[[email protected] ~]# scp /etc/hosts [email protected]:/etc/

hosts                                        100%  226     0.2KB/s   00:00

[[email protected] ~]# scp /etc/hosts [email protected]:/etc/

hosts                                        100%  226     0.2KB/s   00:00

结果演示:

[[email protected] ~]# ssh node2

Last login: Tue Mar  3 17:42:18 2015 from node1

[[email protected] ~]# ssh node3

Last login: Thu Dec 18 17:14:29 2014 from 192.168.100.130

[[email protected] ~]#

总结:

登录的机子可有私钥,被登录的机子要有登录机子的公钥。这个公钥/私钥对一般在私钥宿主机产生。上面是用rsa算法的公钥/私钥对,当然也可以用dsa(对应的文件是id_dsa,id_dsa.pub)

想让node1,node2机无密码互登录,那node2机以上面同样的方式配置即可。

时间: 2024-12-16 03:34:53

从零开始构建集群前期准备之---SSH各服务器间无密码登陆的相关文章

从零开始构建集群前期准备之---NTP服务器

集群中各服务器之间能够协调工作的前提之一,时间必须同步.如果B主机比A主机时间慢2个小时,A主机向B主机下达一个命令,B主机2小时后才执行.对整个集群而言,将是无法忍受的. 搭建NTP服务器可以让集群中的所有服务器工作在同一时钟周期内,做到步调一致.下面是实现方法: NTP server IP:192.168.100.104 NTP client IP:192.168.100.100 NTP server端设置: 一.安装NTP服务: [[email protected] ~]# yum -y

从零开始构建集群前期准备之---yum源

工作中大多数使用centos系统,当我们安装完centos系统的时候其实yum已经配置好了.我们直接执行yum install 软件包名称 就可以安装好一个软件包.他默认使用配置好的centos的源.但好多人习惯都使用下面的这二个源 1.这是中科大的源 cd /etc/yum.repos.dmv CentOS-Base.repo CentOS-Base.repo.save   //先重命名Centos自带的yum源.wget http://mirrors.ustc.edu.cn/centos/C

使用Akka构建集群(二)

前言 在<使用Akka构建集群(一)>一文中通过简单集群监听器的例子演示了如何使用Akka搭建一个简单的集群,但是这个例子"也许"离我们的实际业务场景太远,你基本不太可能去做这样的工作,除非你负责运维.监控相关的工作(但实际上一个合格的程序员在实现功能的同时,也应当考虑监控的问题,至少应当接入一些监控系统或框架). 本文将介绍一个相对看来更符合我们对于集群使用的业务需求的例子--将客户端请求的字符串转换为大写(假如客户端真的没有这个能力的话). 服务端 本文的Akka配置继

memcached构建集群分析之一

memcached本身是不支持集群的,集群所关注的容灾.容错.宕机恢复机制统统都没有,实战中需要自己实现容灾机制. memcached集群相比memcached的优势: 巨量数据分布到集群的多台应用主机可以降低带宽压力.数据访问时间. memcached集群相比未集群的多台memcached的优势: 集群系统的容灾机制保证了全天候的业务高可用性. 集群的某一台或者某几台服务器宕机,都会有备份服务器接管业务,根据容灾的级别,对客户的影响被隔离到无影响.闪断即恢复.中断数分钟~十数分钟. 集群封装了

分布式集群中,设定时间同步服务器

一:时间同步 1.时间同步 集群中必须有一个统一的时间 如果是内网,需要在集群里找一台服务器:时间服务器 2.查包 看服务包是否安装好 ntpdate-4.2.4p8-3.el6.centos.x86_64 :时间同步某台服务器 ntp-4.2.4p8-3.el6.centos.x86_64 :作为时间服务器 3.查看服务 4.修改配置 5.修改的内容 6.重启服务 7.指定计划任务 8.具体内容 在root下执行. 查看计划任务: 9.执行命令(第二台虚拟机和第三台虚拟机) 10.BIOS与系

CentOS 配置集群机器之间SSH免密码登录

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定:SSH 为建立在应用层和传输层基础上的安全协议.SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议. 在Hadoop集群或其他集群中广泛应用用,可用于机器之间免密码登录和执行脚本,如的Hadoop集群中NameNode启动的时候会远程执行脚本把集群中DataNode的也一起启动起来. 这里主要介绍SSH的配置和登录失败的情况 SSH配置 的集群中的每台主机

kubernetes使用ansible快速构建集群

软硬件限制: 1)cpu和内存 master:至少1c2g,推荐2c4g:node:至少1c2g 2)linux系统 内核版本至少3.10,推荐CentOS7/RHEL7 3)docker 至少1.9版本,推荐1.12+ 4)etcd 至少2.0版本,推荐3.0+ kubernetes官方github地址 https://github.com/kubernetes/kubernetes/releases 高可用集群所需节点规划: 部署节点------x1 : 运行这份 ansible 脚本的节点

[Gerrit服务器集群搭建(三)] 服务器搭建问题小结

一.写在前面 这一篇是对搭建Gerrit集群环境时遇到的问题及解决方案的小结.不谈细节,我们搭建这个集群需要达到的最直接效果是:用户访问且仅访问一个Gerrit服务器地址,集群内任意服务器都有能力响应.这里说的“有能力”,由SSH传输协议展开. 二.集群服务器共享用户公钥 用户如果需要从Gerrit服务器上通过ssh协议下载数据,首先会在服务器上增加自己的公钥,从而让服务器在用户请求通信时向用户发送“质询”,验证用户身份.(更详细的说明在这:http://www.cnblogs.com/wina

负载均衡,分布式,集群的理解,多台服务器代码如何同步

集群 我们的项目如果跑在一台机器上,如果这台机器出现故障的话,或者用户请求量比较高,一台机器支撑不住的话.我们的网站可能就访问不了.那怎么解决呢?就需要使用多台机器,部署一样的程序,让几个机器同时的运行我们的网站.那怎么怎么分发请求的我们的所有机器上.所以负载均衡的概念就出现了. 负载均衡 负载均衡是指基于反向代理能将现在所有的请求根据指定的策略算法,分发到不同的服务器上.常用实现负载均衡的可以用nginx,lvs.但是现在也有个问题,如果负载均衡服务器出现问题了怎么办?所有冗余的概念就出现了.