配置集群免密登录

文章目录

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


总结

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

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

相关推荐
花嫁代二娃11 分钟前
Linux:环境变量
linux
l1x1n05 小时前
Vim 编辑器常用操作详解(新手快速上手指南)
linux·编辑器·vim
ajassi20007 小时前
开源 python 应用 开发(三)python语法介绍
linux·python·开源·自动化
o不ok!7 小时前
Linux面试问题-软件测试
linux·运维·服务器
DaxiaLeeSuper7 小时前
Prometheus+Grafana+node_exporter监控linux服务器资源的方案
linux·grafana·prometheus
尽兴-8 小时前
如何将多个.sql文件合并成一个:Windows和Linux/Mac详细指南
linux·数据库·windows·sql·macos
kfepiza8 小时前
Netplan 中 bridges、bonds、ethernets、vlans 之间的关系 笔记250711
linux·tcp/ip·shell
小小不董9 小时前
深入理解oracle ADG和RAC
linux·服务器·数据库·oracle·dba
杰夫贾维斯10 小时前
CentOS Linux 8 的系统部署 Qwen2.5-7B -Instruct-AWQ
linux·运维·人工智能·机器学习·centos
kfepiza10 小时前
Netplan 配置网桥(Bridge)的模板笔记250711
linux·tcp/ip·ubuntu