1.hosts文件剖析
无论Linux还是window系统都有hosts文件
Linux/mac:
如果是局域网内网机器 /VM : 它只有内网ip
如果是云服务器: 它有内网ip + 外网ip(一般在ssh链接、打开服务web界面、对外提供服务的时候用外网ip)
[root@hadoop001 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
#内网ip
192.168.137.130 hadoop001
[root@hadoop001 ~]#
192.168.137.130(这个是内网ip) hadoop001(这个是别名)
(也可以配外网ip,但是会慢,因为它会绕到内网再去连接,所以比如公司的linux系统,都是配的内网ip)
windows:
打开web界面,一般是 ip:50070 或者 机器名:50070
Windows上hosts文件在C:\Windows\System32\drivers\etc 配置
假如是vm/内网机器 直接内网ip 在hosts文件加上: 内网ip 机器名
假如是云主机 直接是外网ip 在hosts文件加上: 外网ip 机器名
这样就可以用 机器名:50070 访问了。
你通过你的Windows电脑上的crt软件,去通过互联网连到美国的一台电脑,你连的是这台电脑的外网ip,然后这个外网ip会映射到它的内网ip,至于怎么映射的你不用去关心。
提醒:
以后做apache hbase 开发,hosts文件 都要配置hbase集群的节点的ip hostname。
2.块block剖析
块的大小128M
块的副本数3
<property>
<name>dfs.blocksize</name>
<value>134217728</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
比如一个文件260M
(面试题:生产上 hdfs不适合存储小文件?为什么不合适?如果真的有小文件,该怎么办?该怎么合并)
将文件以块的方式分割,去存储
。。。。
实际存储 规格 三个副本
块A: 128M 128M A0 A1 A2
块B: 128M 128M B0 B1 B2
块C: 4M 128M C0 C1 C2
面试题:
一个文件160m,块大小128m,副本数2。
请问实际几个块,实际存储多少?
每个块大小是128m,文件是160m,所以需要把这个文件分为两个块,副本数是2,所以意味着每个块是分两份,那么就是2块*2=4个块。实际存储是指实际占用的物理空间,128m是一个虚拟的概念、逻辑性的概念,它实际存储空间是160m*2=320m。