11 配置Hadoop集群-免密登录

第一课时

一、 复习 导入

前面的课程中我们在虚拟机上安装并测试使用了hadoop的示例程序wordcount,并且在准备好了集群的同步工具,那接下来,我们就可去配置hadoop集群了。

二、授新

(一)认识 ssh命令

SSH(Secure Shell)命令是一种用于通过加密协议安全地连接到远程服务器的工具。它广泛应用于远程登录、文件传输和命令执行等场景。

它最基本的用法是连接到远程服务器,格式如:

ssh 用户名@主机名

例如:我们先登录hadoop100,然后去登录到hadoop101。命令是:

ssh root@hadoop101

注意:如果这里报错: unkown host name。请重新设置hosts。

(二) ssh无密登录

使用ssh去登录其他主机的时候,会要求输入密码,如何让不要每次都输入密码呢?这就是所谓的免密登录

实操案例

我们希望达成的目标是:希望用户在hadoop100登录到hadoop101时,hadoop101不需要输入密码。

核心步骤

  1. 在hadoop100上 生成密钥对。
  2. 把hadoop100的公钥发到hadoop101上。
  3. 在hadoop100上登录hadoop101,验证效果。

具体操作

  1. 登录 hadoop100。使用finalshell连接。
  2. 在hadoop100上,运行命令:ssh-keygen -t rsa。然后根据提示连续敲入三个回车。这个命令就会生成一对公钥和私钥,那它们具体在哪,长得什么样子呢? 它会在当前用户目录(/root)下生成一个.ssh的文件夹,并创建了两个文件。如下所示:


这里的id_rsa就是私钥,id_rsa.pub就是公钥。可以使用cat 命令去查看一下内容。

  1. 将公钥拷贝到hadoop101上。 这里专门有一个命令ssh-copy-id。它的格式是: ssh-copy-id 目标机器。所以这里我们输入命令:

ssh-copy-id 101

(4)在hadoop100上,输入ssh hadoop101命令,看看是否可以免密登录?

++++请开始实操,让三台机器之间都可以无密登录。++++

ssh相关文件介绍

接下来我们去具体看看.ssh相关的文件,以便更加深入的了解它的工作过程。

.ssh文件夹下(~/.ssh)的文件功能解释:

|-----------------|----------------------------|
| known_hosts | 记录ssh访问过计算机的公钥(public key) |
| id_rsa | 生成的私钥 |
| id_rsa.pub | 生成的公钥 |
| authorized_keys | 存放授权过的无密登录服务器公钥 |

(四)集群免密操作

目前我们有三台机器,它们之间相互访问都应该不需要输入密码。特别要注意的是自己登录自己也需要做免密配置。

例如: 在hadoop100上,也需要去设置针对它自己的免密登录。

所以,对于hadoop100来说,它要生成公钥,并拷贝到hadoop100, hadoop101, hadoop102上去。 对应的命令如下:

ssh-keygen -t rsa

输入三次回车确认

ssh-copy-id hadoop100

ssh-copy-id hadoop101

ssh-copy-id hadoop102
其他的两台机器也要同样处理。

(五) 运行异常排查

如果在finalshell中不能通过主机名来连接对应的虚拟机,请按如下步骤去检查:

  1. 本机的hosts文件是否正确修改。C:\Windows\System32\drivers\etc
  2. hosts文件中的主机名和ip地址是否与finalshell中的连接的主机名以及对应的虚拟机上的ip地址一致。
  3. 虚拟机是否正确开启。
  4. 虚拟机的ip是否正确设置。ip addr 命令可以查看
  5. 虚拟机是否可以正常ping www.baidu.com
  6. 本地控制面板,网络设置,vmnet8是否正常设置
  7. 本地服务:vmware是否正常运行

三、课堂小结

通过本堂课的学习,我们学习了ssh无密登录,并且成功地配置了hadoop集群环境。

四、实训内容

任务1:三台设备之间无密登录

目标:hadoop100通过ssh访问hadoop101,hadoop102时不需要密码,其他两台设备也类似。

操作:

  1. hadoop100 无密登录hadoop101,hadoop102
    • 在hadoop100中生成公钥和密码。ssh-keygen -t rsa 三次回车
    • 在hadoop100中,把自己的公钥传递给hadoop101,hadoop102。
    • ssh-copy-id hadoop101
    • ssh-copy-id hadoop102
  2. hadoop101 无密登录 hadoop100,hadoop102 与(1)类似
  3. hadoop102 无密登录 hadoop100,hadoop101 与(1)类似
相关推荐
Me4神秘9 小时前
国家级互联网骨干直联点及容量、互联网交换中心
大数据·信息与通信
zandy101110 小时前
全链路可控+极致性能,衡石HENGSHI CLI重新定义企业级BI工具的AI协作能力
大数据·人工智能·ai analytics·ai native·agent-first
天若有情67311 小时前
【C++原创开源】formort.h:一行头文件,实现比JS模板字符串更爽的链式拼接+响应式变量
开发语言·javascript·c++·git·github·开源项目·模版字符串
果粒蹬i12 小时前
Elasticsearch 单机部署实测:安装流程、常见坑点与远程访问配置
大数据·elasticsearch·搜索引擎
AC赳赳老秦12 小时前
OpenClaw数据库高效操作指南:MySQL/PostgreSQL批量处理与数据迁移实战
大数据·数据库·mysql·elasticsearch·postgresql·deepseek·openclaw
小王毕业啦12 小时前
2006-2023年 省级-建成区绿化覆盖率数据(xlsx)
大数据·人工智能·数据挖掘·数据分析·社科数据·实证分析·经管数据
果汁华13 小时前
GitHub Trending 热门仓库整理 (2026年4月10日)
github
无限进步_14 小时前
【C++&string】大数相乘算法详解:从字符串加法到乘法实现
java·开发语言·c++·git·算法·github·visual studio
粥里有勺糖14 小时前
视野修炼-技术周刊第129期 | 上一次古法编程是什么时候
前端·javascript·github
AEIC学术交流中心14 小时前
【快速EI检索 | SPIE出版】第六届中国膜计算论坛暨2026年人工智能、大数据与电气自动化国际学术会议(CWMC&AIBDE 2026)
大数据·人工智能·量子计算