配置集群免密登录

文章目录

  • 前言
  • 配置集群免密登录
    • [1. 设置主机名与 IP 地址的映射关系](#1. 设置主机名与 IP 地址的映射关系)
    • [2. 生成 SSH 密钥对](#2. 生成 SSH 密钥对)
    • [3. 将公钥复制到集群节点](#3. 将公钥复制到集群节点)
    • [4. 测试免密登录](#4. 测试免密登录)
    • [5. 配置节点之间互相免密登录](#5. 配置节点之间互相免密登录)
  • 总结

前言

本文介绍了如何配置集群之间免密登录,以便在搭建集群环境时方便地进行节点之间的通信。通过设置主机名与 IP 地址的映射关系,生成 SSH 密钥对,并将公钥复制到集群节点上,可以实现免密登录。配置完成后,可以通过 SSH 连接到集群节点而无需输入密码,提高了操作的便利性和效率。


配置集群免密登录

需要准备三个centos,用于搭建集群环境,在这里,我的三台主机如下,左边为ip地址,右边为主机名

复制代码
192.168.145.103 hadoop101
192.168.145.104 hadoop102
192.168.145.105 hadoop103

1. 设置主机名与 IP 地址的映射关系

如果不设置主机名与 IP 地址的映射关系,就只能使用ip地址,设置之后可以使用主机名替代ip地址。

编辑/etc/hosts文件:

shell 复制代码
vim /etc/hosts

添加之前的ip和主机名,如下图所示:

2. 生成 SSH 密钥对

在本地机器上打开终端,并执行以下命令,连续敲三次回车,生成 SSH 密钥对:

shell 复制代码
ssh-keygen -t rsa

如下图:

这将会生成一对公钥和私钥文件,默认保存在 ~/.ssh 目录下。

如下图:

3. 将公钥复制到集群节点

使用以下命令将本地机器上生成的公钥复制到集群的每个节点上。

在执行命令时,系统可能会提示你输入节点的密码。输入密码后,公钥将被复制到节点的 ~/.ssh/authorized_keys 文件中,实现免密登录。

复制到hadoop101节点

shell 复制代码
ssh-copy-id hadoop101

成功如下图:

复制到hadoop102节点

shell 复制代码
ssh-copy-id hadoop102

复制到hadoop103节点

shell 复制代码
ssh-copy-id hadoop103

4. 测试免密登录

尝试使用 SSH 连接到集群节点,看是否无需输入密码即可登录。执行以下命令测试:

shell 复制代码
ssh hadoop102

如果成功登录到节点而无需输入密码,则说明免密登录配置成功。如下图所示:

5. 配置节点之间互相免密登录

之前配置了hadoop101节点免密登录到hadoop102hadoop103,现在来配置hadoop101hadoop102hadoop103之间可以互相免密登录。

使用scp命令把/etc/hosts脚本分发到hadoop102hadoop103节点的/etc目录下。

点击链接查看scp命令介绍及其使用:linux常用命令-find命令与scp命令详解(超详细)

shell 复制代码
scp /etc/hosts hadoop102:/etc
scp /etc/hosts hadoop103:/etc

之后分别对hadoop102hadoop103重复23的操作,即可配置好三个节点之间互相免密登录。


总结

配置集群免密登录是搭建集群环境中的重要步骤,可以提高操作的便利性和效率。通过本文所介绍的步骤,您可以轻松地配置集群节点之间的免密登录,并实现方便的节点通信。

希望本教程对您有所帮助!如有任何疑问或问题,请随时在评论区留言。感谢阅读!

相关推荐
AlfredZhao9 小时前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户97183563346615 小时前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪17 小时前
linux 拷贝文件或目录到指定的位置
linux
摇滚侠1 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
bush41 天前
嵌入式linux学习记录十四、术语
linux·嵌入式
载数而行5201 天前
Linux 11 动态监控指令top
linux
不会C语言的男孩1 天前
Linux 系统编程 · 第 8 章:进程基础
linux·c语言
古城小栈1 天前
Unix 与 Linux 异同小叙
linux·服务器·unix
凡人叶枫1 天前
Effective C++ 条款42:了解 typename 的双重意义
java·linux·服务器·c++
2601_961875242 天前
决战申论100题2026|最新|范文
linux·容器·centos·debian·ssh·fabric·vagrant