配置集群免密登录

文章目录

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


总结

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

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

相关推荐
二十雨辰2 小时前
[linux]docker基础
linux·运维·docker
饮浊酒2 小时前
Linux操作系统 ------(3.文本编译器Vim)
linux·vim
lihuhelihu3 小时前
第3章 CentOS系统管理
linux·运维·服务器·计算机网络·ubuntu·centos·云计算
矛取矛求3 小时前
Linux系统性能调优技巧
linux
One_Blanks3 小时前
渗透测试-Linux基础(1)
linux·运维·安全
Perishell3 小时前
无人机避障——大疆与Airsim中的角速度信息订阅获取
linux·动态规划·无人机
爱吃喵的鲤鱼3 小时前
linux进程的状态之环境变量
linux·运维·服务器·开发语言·c++
dessler3 小时前
Linux系统-ubuntu系统安装
linux·运维·云计算
荒Huang4 小时前
Linux挖矿病毒(kswapd0进程使cpu爆满)
linux·运维·服务器
hjjdebug6 小时前
linux 下 signal() 函数的用法,信号类型在哪里定义的?
linux·signal