为什么要这样做?

首先,在hadoop工作就像是一个社团帮派,master是老大,而slave1、slave2等就是master的小弟。但是,slave并没有像我们那么聪明一眼就能分辨出自己的老大,它们是以ip地址作为辨别的。那么,它们是一个社团就需要把它们集合到一起,这时就需要把它们的ip地址写到一个叫/etc/hosts的文件里,然后还要把主机名也写上进行映射,这样就可以用主机名进行任务分发或文件传输以及其他工作了。

查看主机名

输入“hostname”命令,即可查看主机名,不过以下是默认的主机名,如果在集群里使用这个默认名字会不方便管理,所以我们要修改名字。

配置/etc/hosts文件进行修改主机名以及IP和主机名的映射

执行以下命令进入配置文件,在末尾添加如下图IP地址+需要修改的主机名+别名(别名可以选填),其中用空格把这三部分连接。

vi /etc/hosts


这是hadoop集群的ip与主机名映射,则集群的每个slave都必须拥有这份映射“社团成员目录”方可识别社团的所有社团成员。还有就是,只是单纯改各主机名的话,就只写我们那台的IP和需要改的主机名即可了。

验证

保存重启机器使配置文件生效后,执行以下命令进行将master上的/home/test文件拷贝到slave1上的/root目录:

scp /home/test root@slave1:/root

格式:scp 本地文件 目标虚拟机用户名@目标虚拟机主机名:目标路径
如果是拷贝的目录:scp -r 本地目录 目标虚拟机用户名@目标虚拟机主机名:目标路径
在这里传输文件时需要填写密码,往后可以实现免密登录等操作。

缺点

这样做的原因可能是LAN不像WAN那样有专门的DNS,需要通过先查找本地hosts文件,然后再确定目标主机IP。但这样做对后续是否产生不利但影响呢?如果集群中增加一台Slave,是不是要在集群中其他机器里添加这条记录?答案是肯定的,集群中增加一台Slave就要在每个节点机器上添加记录,假如是一个“大社团”就很不方便管理了。解决办法还是有的,就是通过bind9配置DNS服务器替代hosts的IP映射,需要的伙伴可以查找相关文献资料。

普及相关知识

  • /etc/sysconfig/network的作用是设定机器的主机名:hostname
  • /etc/hosts的作用是主机名与ip地址的匹配;
  • 当用户在进行网络连接时,首先查找/etc/hosts文件,寻找对应主机名(或域名)对应的IP地址。
  • 要测试两台机器之间知否连通,一般用"ping 机器的IP";
  • 以上说的IP地址实质就是LAN内的各主机的IP地址;
  • 主机名(hostname)和域名(Domain)的区别:主机名通常在局域网内使用,通过hosts文件,主机名就被解析到对应ip;域名通常在internet上使用,但如果本机不想使用internet上的域名解析,这时就可以更改hosts文件,加入自己的域名解析。
  • 如果没有DNS服务器的话,系统上的所有网络程序都通过查询该文件解析主机名对应的ip地址。

若有不足之处望留言!

——————END———————
Programmer:柘月十七

关于IP地址与主机名映射的/etc/hosts文件配置相关推荐

  1. 一、安装VM虚拟机,安装Linux操作系统。修改主机名和IP地址以及修改ip地址与主机名的映射命令。

    1.安装VM虚拟机,下载[VMware_Workstation_15.0.2.10952284_XiaZaiBa]. 2.下载Linux操作系统,我这边下载的是CentOs7 3.修改主机名 ①:查看 ...

  2. 修改IP地址和主机名

    安装虚拟机(CentOS) 修改主机名(当前虚拟机的主机名) 查看当前的主机名 命令:hostname 修改主机名 命令:vi /etc/hostname (1)一定要在vi的命令模式下(在编辑模式下 ...

  3. Linux实用操作:小技巧(快捷键)、软件安装、systemctl、软连接、日期时区、IP地址、主机名、网络传输、端口、进程管理、主机状态、环境变量、上传、下载、压缩和解压

    版本说明 当前版本号[20230415]. 版本 修改说明 20230415 初版 本课程的笔记已经更新完毕,各位可以通过点击黑马程序员2023年新版Linux零基础快速入门到精通>学习笔记总目 ...

  4. java根据ip查计算机名_Java如何从IP地址查找主机名?

    在Java编程中,如何从IP地址查询出主机名? 以下示例显示了如何通过net.InetAddress类的InetAddress.getByName()方法将指定的IP地址查到主机名称. package ...

  5. Java 网络实例一(获取指定主机的IP地址、查看端口是否已使用、获取本机ip地址及主机名、获取远程文件大小)

    获取指定主机的IP地址 import java.net.InetAddress; import java.net.UnknownHostException;public class GetIP {pu ...

  6. win7 通过IP地址或主机名给其他电脑发送弹窗信息

    msg */server:IP地址或主机名 "消息内容" WIN7局域网内向指定用户(或IP)发送自动弹出消息正确方法,格式已经[电脑技巧 hugesky.com]编辑测试验证. ...

  7. delphi7 获取计算机名,Delphi中根据IP地址得到主机名

    下载本文示例代码 本实例演示如何利用TUdpSocket组件获取IP地址和主机名. 向窗体上添加一个TUdpSocket组件,如图1所示. 图1 主界面 TUdpSocket组件中有两个属性--Loc ...

  8. 利用command (cmd)命令,实现IP地址与主机名的互查

    1. 通过IP地址查主机名:nbtstat -A 192.168.0.101 2. 通过主机名查IP地址:ping nettesthq2

  9. oracle实例查询IP,Oracle数据库中获取访问者的IP地址或主机名的方法

    有时我们需要在Oracle数据库中获取访问者的局域网或Internet网的主机名或IP地址.在Oracle中可以使用下面的方法来实现: Oracle包utl_inaddr 作用:用于取得局域网或Int ...

最新文章

  1. 它是谁?一个比 c3p0 快200倍的数据库连接池!
  2. HDU2544(SPFA算法)
  3. mvc5入门示例博客(有惊喜)
  4. 高性能服务器存储服务器,高性能存储服务器
  5. UILabel的行间距,字间距处理
  6. php封装的数据库操作文件夹,PHP中对数据库操作的封装_php
  7. c语言调整图片分辨率,如何不改变图片分辨率,并且缩小图片质量-电脑自学网...
  8. 下载python的步骤ios_如何使用 Python 开发 iOS 程序?
  9. 2.matplotlib画散点图
  10. python实现50行代码_利用 50行Python 代码构建一个在线文本生成器!
  11. Java FX swt_转: JAVA_SWT常用事件, 和方法
  12. 软件测试硬盘使用时间,硬盘使用时间检测工具_硬盘使用时间清零
  13. ASA 5520 ASDM 配置
  14. 10种常用数据分析方法
  15. SpringBoot大学毕业生就业信息管理系统
  16. DirectX11编程11 Blend混合
  17. Python编写微信打飞机小游戏(二)
  18. CSS3变形、渐变、动画的基本使用
  19. Linux中的rm指令
  20. 抖音app开发时,在录制视频添加背景音乐功能实现流程

热门文章

  1. 计算机名ip地址批量修改吗,怎么批量修改IP和计算机名
  2. 丅da4605芯片_《GBT 4605-2016 滚动轴承 推力滚针和保持架组件及推力垫圈.》.pdf
  3. 【Excel VBA】遍历获取文件夹下所有文件——每月自动汇总考勤数据实例
  4. 艾司博讯:拼多多关键词布局怎么做?找对方法很重要!
  5. 用node.js爬一下优酷
  6. mybatis基本操作流程
  7. Elasitcsearch 开发运维常用命令集锦
  8. RMB升值:货币战争在中国爆发?
  9. Qt Creator中使用界面设计师更改界面后无法生效的解决方法
  10. BUUCTF-MISC:二维码