CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-2设置SSH免密登录
因为hadoop集群在安装的时候需要集群中所有机器的权限。
所以我们需要打通所有节点的ssh无密码登陆,思路是生成每台机子的密钥,集中在一个文件中,再分发到每台机子上。
为了确保下面的命令能顺利执行,请先重启所有节点并且保证所有节点能够通过主机名ping通。
配置免密登录有两种方式,一种简单的:
1、执行命令,生成秘钥: ssh-keygen -t rsa
2、进入.ssh目录: cd ~/.ssh
3、拷贝到要免密码登陆的机器,要免密登陆那个机器,就写该机器的ip。3台机器的话两两之间都要做了免密登陆: ssh-copy-id 192.168.43.102
至此免密登录配置完成(验证免密登录成功,请看文末)。
另外一种是复杂的,但是思路比较清晰:
1、两台机子(正常生产环境至少需要3台,这里只做安装测试所以只用了两天)都分别使用ssh-keygen -t rsa 然后一直回车生成密钥。
[root@localhost ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:HkNnC66AyS+s2Y1TU+/XwhrVIily33esuA32V1jzTz0 root@localhost.master
The key's randomart image is:
+---[RSA 2048]----+
| |
| |
| o o |
| . o .o = o ..|
| + o.o.S + . o+|
| . .o+ =.* . ..E=|
| o.....+.+.. ooo|
| +.+ .o+*.o. .|
|o o.. .ooo+. |
+----[SHA256]-----+
[root@localhost ~]#
我们可以看到/root/.ssh目录下有了密钥文件id_rsa以及公钥文件id_rsa.pub。
[root@localhost ~]# cd /root/.ssh
[root@localhost .ssh]# ls
id_rsa id_rsa.pub
2、两个节点中分别把公钥id_rsa.pub复制一份命名为authorized_keys_master、authorized_keys_slave1
也就是
master中执行 cp id_rsa.pub authorized_keys_master
slave1中执行 cp id_rsa.pub authorized_keys_slave1
[root@localhost .ssh]# cp id_rsa.pub authorized_keys_master
[root@localhost .ssh]# ls
authorized_keys_master id_rsa id_rsa.pub
3、把从节点slave1的公钥传送到master节点的/root/.ssh文件夹中,slave1中使用命令
scp authorized_keys_slave1 root@master:/root/.ssh
[root@localhost .ssh]# scp authorized_keys_slave1 root@master:/root/.ssh
The authenticity of host 'master (192.168.10.101)' can't be established.
ECDSA key fingerprint is SHA256:Hep4xj/6A8J2IGNte74dTnqI5gY6Sd4Xgsq6oTkmUDA.
ECDSA key fingerprint is MD5:08:7e:a9:4a:91:99:a1:89:95:02:c7:76:e3:52:4f:d3.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'master,192.168.10.101' (ECDSA) to the list of known hosts.
root@master's password:
authorized_keys_slave1 100% 403 238.8KB/s 00:00
4、这个时候我们在master中的root/.ssh目录会看到authorized_keys_master、authorized_keys_slave1两个文件。
把它们合并追加到authorized_keys文件中。
cat authorized_keys_master>> authorized_keys
cat authorized_keys_slave1>> authorized_keys
[root@localhost .ssh]# cat authorized_keys_master>>authorized_keys
[root@localhost .ssh]# cat authorized_keys_slave1>>authorized_keys
[root@localhost .ssh]# ls
authorized_keys authorized_keys_slave1 id_rsa.pub
authorized_keys_master id_rsa
[root@localhost .ssh]# cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCtUYN328WOb28y1urRl1uccKFlM2m0JDukJmclJzA/BQ/VqAjQ4DftZbTUApfkrYRsXAQJAV0wEkkDityl86So1r7MBg4uzq1kRJalrMUVJHEn2u7W7yBfY/o8jqzRKzgMy9ILw95iti1I0k/x8N35JTVC5t2qhQFqT3Op398Onj1lMWHVyj0QRc1C9zthe0L9WR4SIq/goGYVbiLM6XMyAzfI6Pk9OEpEI6UPb+/QFKmVOJ7RxnHGat2VaYQP7c5nL4fPu4bLOmMfeuAXeiRy9y2rRBl9PKS2/kwaP+ORqVK2fakwnIOjTo3HilMTVFpDhvMBhP4xsiXN3qIRoPk5 root@localhost.master ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDfW91xcfffp+v/nJh3J44PNLvta84xUC6fAoTKxgZwlUlWuwZXjUgy+AhWMG5F2Ejv/jymIKwAGDV1luNSBj51JOloy2nuW85JlRKplROjJjBiJWxpvw814xSb1XiyOsyKiWAkWqBds1zg8V0xlm31stOxkBTUOKFSX8blIAM3XfaBUYFxqt1LSPQ1wZDDLOwrV46kuFwsgf/cR8cZhQeuayv1oTKdsj0aUFWvMaVYLIj3LfJoSMUzC5mUMiLZoBgw5TZHdK9BDwFMY5SKH1jLo1Vq9moVq7wxcUEovODJQGLwPL/xf7TkVSg16GrJ5OPbczy2MoTgSgjtXExsdLUX root@localhost.slave1
我们可以看到这个通行证authorized_keys中已经有了两台机子的公钥。
5、把这个通行证authorized_keys分发到其他节点----slave1 scp authorized_keys root@slave1:/root/.ssh
[root@localhost .ssh]# scp authorized_keys root@slave1:/root/.ssh
The authenticity of host 'slave1 (192.168.10.102)' can't be established.
ECDSA key fingerprint is SHA256://I9GnbQerDF/YSyPYbLnYFzY0vtDHGHZTgCjZeRvJY.
ECDSA key fingerprint is MD5:51:03:f2:82:95:50:8e:e4:e1:81:de:06:21:e0:27:b6.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'slave1,192.168.10.102' (ECDSA) to the list of known hosts.
root@slave1's password:
authorized_keys 100% 806 918.9KB/s 00:00
6、测试节点之间相互ssh
例如在master中
ssh slave1
exit
不再需要输入登录密码
[root@localhost .ssh]# ssh slave1
Last login: Sat Jan 26 08:42:38 2019
[root@localhost ~]# exit
登出
Connection to slave1 closed.
至此,SSH免密互相访问完成。
CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-2设置SSH免密登录的更多相关文章
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-总目录
CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-总目录: 0.Windows 10本机下载Xshell,以方便往Linux主机上上传大文件 1.CentOS7+CDH5.14.0安 ...
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-8CDH5安装和集群配置
Cloudera Manager Server和Agent都启动以后,就可以进行CDH5的安装配置了. 准备文件 从 http://archive.cloudera.com/cdh5/par ...
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-7主节点CM安装子节点Agent配置
主节点安装cloudera manager 准备工作:下载CM和mysql连接驱动包: CM各版本下载地址:http://archive.cloudera.com/cm5/cm/5/ 从里面选择:ht ...
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-6CM安装前环境检查
检查环境 在正式开始安装CDH之前最好先检查一下能不能相互免密ssh,以及防火墙是否关闭,集群中的时间是否统一,java版本是否是oracle的版本,主节点mysql是否安装正确等. ssh测试 例如 ...
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-5安装JDK及安装mysql数据库
1.安装JDK 可以不用卸载自带的openjdk,配好环境变量即可. 下载文件:jdk-8u151-linux-x64.tar.gz 附:JDK各版本下载地址:https://www.oracle.c ...
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-4配置NTP服务
配置NTP服务.标准的做法是配置NTP服务器,但是这里为了方便就用简化的方式配置了. 这个在安装初期,不是必须的,只要保证各机器的时间同步就行,使用如下命令可以查看时间是否同步: [root@cdh1 ...
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-1虚拟机安装及环境初始化
1.软件准备: VMware-workstation-full-14.1.2-8497320.exe CentOS-7-x86_64-DVD-1804.iso 2.VMare激活码: AU5WA-0E ...
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-3禁止交换和禁用大页面
1.禁止交换(每台机器都要做): 执行命令:vim /etc/sysctl.conf 增加一行:vm.swappiness=0 执行命令:sudo sysctl vm.swappiness=0 2.禁 ...
- CentOS7+CDH5.14.0安装CDH错误排查:该主机与 Cloudera Manager Server 失去联系的时间过长。 该主机未与 Host Monitor 建立联系
主机错误: 该主机与 Cloudera Manager Server 失去联系的时间过长. 该主机未与 Host Monitor 建立联系 解决办法: 首先查看该主机NTP服务是否启动:https:/ ...
随机推荐
- [UE4]虚幻引擎的C++环境安装
一.一般使用VS2017开发 二.需要勾选“使用C++的游戏开发”
- mysql5.7基于gtid主从重做
master上备份mysql/data/Percona-5721/scripts/xtra_sohmysql_fullbak.sh scp 备份文件到备机 关闭slave service mysql ...
- 《深度探索C++对象模型》读书笔记(一)
前言 今年中下旬就要找工作了,我计划从现在就开始准备一些面试中会问到的基础知识,包括C++.操作系统.计算机网络.算法和数据结构等.C++就先从这本<深度探索C++对象模型>开始.不同于& ...
- ubuntu go环境安装搭建
一.安装必备环境 sudo apt-get install git golang-go vim sublime-text-installer 如果出现安装错误,进行修复安装: sudo apt-get ...
- python使用itchat发送微信消息提醒
最近在学习一点python,先找了找有趣的应用,实际修改跑了一下提高兴趣程度. 找到itchat,它的简介是这样的: “itchat是一个开源的微信个人号接口,使用python调用微信从未如此简单. ...
- C 语言 变量的赋值和初始化
根据我所了解和理解: int i 当定义一个这样的变量的时候,计算机将在内存中给变量分配空间,此时 i 的值为,此处空间内原来是什么现在还是什么,相当于打开一个房间,你没有清扫它你就住进去了. 多变量 ...
- JDK源码中,都有哪些NB的设计模式?
转载:https://mp.weixin.qq.com/s/h88UxB9F2MkTbHqck3KQiQ 一.结构性模式: 1.适配器模式: 常用于将一个新接口适配旧接口 肥朝小声逼逼:在我们业务代码 ...
- 在云主机上基于nginx部署基于Flask的网站服务器 (自己部署 )
1.申请云主机 a.阿里云 (注意:阿里云的服务器需要手动添加安全规则使能80端口) b.腾讯云 2.把网站服务器程序拷贝到云主机 3.远程登录云主机 4.解压网站服务器程序 yum install ...
- (17/24) webpack实战技巧:生产环境和开发环境并行设置,实现来回切换
1. 概述 生产环境和开发环境所需依赖是不同: --开发依赖:就是开发中用到而发布时用不到的.在package.json里面对应的就是devDependencies下面相关配置. --生产依赖: 就是 ...
- Linux 打包压缩与搜索命令
1.tar 用于对文件进行打包压缩或解压,格式为tar[选项][文件],-f参数必须放到参数最后一位 tar -czvf etc.tar.gz /etc tar参数及作用 参数 作用 -c 创建压缩文 ...