一、序言:

今天同事部署环境遇到问题,

原因1:修改了主机名,在/etc/hosts文件中加了3台集群的ip和主机名,但是将默认的前两行也改了,没注意看改了哪里,

现象:

1、zookeeper单台可以启动,但是互相无法连通不能注册服务;

2、hadoop单台可以启动,但是使用hdfs dfs -report时没有3台的记录,且master上的数据占比为零:

原因2:我看了/etc/hosts后,直接将前两行删了,然后又报错:

现象:

namenode启动正常,每个从节点上nodemanager也正常启动,就是从节点上服务datanode无法全部正常启动,有时候只有一个节点上的datanode起来了,其他都没启动,或者从节点上的datanode全部无法启动,在slave节点上查看日志  vi hadoop-root-datanode-slave2.log 发现日志中报有如下错误:

java.net.BindException: Port in use: localhost:0

解决办法:

重新加入/etc/hosts中的前两行:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
:: localhost localhost.localdomain localhost6 localhost6.localdomain6

题外话:

我的单机测试环境并没有加入这两行,而且装的时候还特意删掉了,当时是梦诗姐姐辅助安装的,我是不懂全部照做。hosts内容如下:

二、正文:

由于不了解这两行的意思,我去搜索了一下,解说如下,虽然现在还是不太明白,先放在这里吧,等我彻底明白的时候再来添笔记。

(转发http://www.cnblogs.com/xiaoit/p/3989026.html)

1、主机名:

无论在局域网还是INTERNET上,每台主机都有一个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号。

公网:IP地址不方便记忆,所以又有了域名。域名只是在公网(INtERNET)中存在,每个域名都对应一个IP地址,但一个IP地址可有对应多个域名。

局域网:每台机器都有一个主机名,用于主机与主机之间的便于区分,就可以为每台机器设置主机名,以便于以容易记忆的方法来相互访问。比如我们在局域网中可以为根据每台机器的功用来为其命名。

主机名相关的配置文件:/etc/hosts

2、主机名配置文件:

主机名的配置文件大多是/etc/hosts

hosts 配置文件是用来把主机名字映射到IP地址的方法,这种方法比较简单。但这种映射只是本地机的映射,也就是说每台机器都是独立的,所有的计算机都不能相互通过Hostname来访问。

例如:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

127.0.0.1   localhost.localdomain localhost

192.168.1.195  debian.localdomain debian

一般情况下hosts的内容关于主机名(Hostname)的定义,每行为一个主机,每行由三部份组成,每个部份由空格隔开。其中#号开头的行做说明,不被系统解释。

第一部份:网络IP地址。

第二部份:主机名.域名,注意主机名和域名之间有个半角的点。

第二部份:主机名(主机名别名) ,其实就是主机名。

当然每行也可以是两部份,就是主机IP地址和主机名;比如 192.168.1.195 debian

再我们有三台主机,每台做不同的事,一台做MAIL服务器,一台做FTP服务器,一台做SMB服务器,所以我们就可以这样来设计Hostname;

127.0.0.1 localhost.localdomain localhost

192.168.1.2 ftp.localdomain ftp

192.168.1.3 mail.localdomain mail

192.168.1.4 smb.localdomin smb

把这上面这个配置文件的内容分别写入每台机器的/etc/hosts内容中,这样这三台局域网的机器就可以通过Hostname来访问了。

3、主机名(Hostname)和域名(Domain)的区别

主机名就机器本身的名字,域名是用来解析到IP的。但值得一说的是在局域网中,主机名也是可以解析到IP上的;比如我们前面所说举的例子;

显示主机名:

# Hostname

root1

此主机的主机名是root1,不加参数是用来显示当前操作的主机的主机名。

临时设置主机名:

我们可以用 Hostname 后接主机名,这样就可以设置当前操作的主机的主机名,比如我们想把主机名设置为root2;

# Hostname root2

root2

通过Hostname 工具来设置主机名只是临时的,下次重启系统时,此主机名将不会存在;所以您想修改主机名,想一直有效的,还是用前面所说修改主机名配置文件 /etc/hosts;

显示主机IP:

[root@Linuxsir01 ~]# Hostname -i

192.168.10.3

2018年10月31日记

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Linux之hosts文件的更多相关文章

  1. linux上hosts文件如何配置

    linux上hosts文件如何配置 一.什么是host Hosts是一个没有扩展名的系统文件,其基本作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登 ...

  2. linux中hosts文件的修改

    转载自http://hi.baidu.com/dillisbest/item/5e0b612d011b4cd40e37f9a6 1. 关于/etc/host,主机名和IP配置文件 Hosts - Th ...

  3. linux系统——hosts文件修改

    1. 关于/etc/host,主机名和IP配置文件 Hosts - The static table lookup for host name(主机名查询静态表) Linux 的/etc/hosts是 ...

  4. Linux /etc/hosts文件

    均为转载 ———————— 1.主机名: 无论在局域网还是INTERNET上,每台主机都有一个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号. 公网:IP地址不方便记忆,所以 ...

  5. Linux 下hosts文件详解

    1.主机名: 无论在局域网还是INTERNET上,每台主机都有一个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号. 公网:IP地址不方便记忆,所以又有了域名.域名只是在公网( ...

  6. linux 修改hosts文件

    1.修改hostssudo gedit /etc/hosts2.添加解析记录( . )完整案例:127.0.0.1 localhost.localdomain localhost简洁记录:127.0. ...

  7. 如何修改本地hosts文件?

    1.window7修改本地hosts文件 # window7系统hosts文件位置 C:\Windows\System32\drivers\etc 2.linux # linux系统hosts文件位置 ...

  8. linux hosts文件详+mac主机名被莫名其妙修改

    1.名词解析 主机名: 无论是在局域网还是在INTERNET上,每台主机都有一个IP地址,用来区分当前是那一台机器(其实底层是使用机器的物理地址),也就是说IP地址就是一个主机的门牌号,唯一的标示这一 ...

  9. Linux中/etc/hosts文件总是被自动修改

    关闭NetworkManager服务即可. 临时关闭: service  NetworkManager stop 永久关闭: chkconfig NetworkManager off 在centos6 ...

随机推荐

  1. Linux shell编写端口扫描脚本

    Linux shell编写端口扫描脚本 需求: 扫描特定主机 扫描特定主机的特定端口 扫描特定网段 扫描特定网段中哪些主机开放了特定的端口 源码如下: #/bin/bash #该脚本用于对特定目标主机 ...

  2. C++实现程序单实例运行的两种方式

    简介 在我们编写程序的时候,经常会注意到的一个问题就是如何能够让程序只运行一个实例,确保不会让同一个程序多次运行,从而产生诸多相同进程,给我们的带来不便呢?那么常用的有以下四种方法,第一种方法是通过扫 ...

  3. 将含有makefile文件的源码加入Eclipse工程

    转载自https://www.linuxidc.com/Linux/2011-02/32763.htm 很多软件在开发或者分析时需要一个像样的IDE,Eclipse是其中很优秀的一个,至少个人感觉很好 ...

  4. LeetCode算法题-Binary Tree Paths(Java实现-3种解法)

    这是悦乐书的第199次更新,第206篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第62题(顺位题号是257).给定二叉树,返回所有根到叶路径.例如: 输入: 1 / \ ...

  5. js中图片上传,多次上传同一张不生效

    在做图片上传的功能时, 使用删除功能删除了一张图片, 然后想重新上传原来删除的图片, 结果预览不显示, 也不能上传成功 解决办法, 在删除方法里置空input $("#id").f ...

  6. PAT乙级题:1003我要通过!

    #include <iostream> #include <string> #include <vector> #include <algorithm> ...

  7. 合并两个有序数组的golang实现

    给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组. 说明: 初始化 nums1 和 nums2 的元素数量分别为 m 和 n. ...

  8. 数以亿计运行PHP的网站即将面临严重的安全风险

    数以亿计运行PHP的网站即将面临严重的安全风险 根据W3Techs的统计数据,目前所有互联网站点中约有78.9%使用PHP运行.但是2018年12月31日,PHP 5.6.x的安全支持将正式停止,标志 ...

  9. 两段锁协议(Two-Phase Locking――2PL)

    两段锁协议(Two-Phase Locking――2PL) 两段锁协议规定所有的事务应遵守的规则: ① 在对任何数据进行读.写操作之前,首先要申请并获得对该数据的封锁. ② 在释放一个封锁之后,事务不 ...

  10. 【COCOS2DX-游戏开发之三一】之 坐标系(下) convertToNodeSpace和convertToWorldSpace

    游戏中常常会用到一些变换: 游戏中武器和角色在一个layer上,为了效率.会考虑将bullet, effect和 PhysicsParticle分别放到不用的层上,相应的层上使用batchnode来提 ...