配置集群免密登录

文章目录

  • 前言
  • 配置集群免密登录
    • [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的操作,即可配置好三个节点之间互相免密登录。


总结

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

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

相关推荐
用户1204872216112 小时前
Linux驱动编译与加载
linux·嵌入式
用户8055336980319 小时前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户8055336980319 小时前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式
七歌杜金房1 天前
我终于又有了自己的 Linux 电脑
linux·debian·mac
tntxia2 天前
linux curl命令详解_curl详解
linux
扛枪的书生2 天前
Linux 网络管理器用法速查
linux
顺风尿一寸3 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
XIAOHEZIcode3 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
唐青枫3 天前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux
AlfredZhao5 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80