首先,我们的问题是:
在部署Oracle RAC的时候为什么需要修改/etc/hosts文件? 或者具体的说,我们在Linux平台部署Oracle RAC时为什么需要将/etc/hosts文件里的环路地址修改为
127.0.0.1 localhost格式? 当然,不同操作系统平台需要修改的hosts文件名称和位置,依赖于操作系统本身。如:Windows下需要修改的是C:WindowsSystem32driversetchosts文件。接下来,要想搞清楚这个问题不难,了解一些网络相关的基础知识即可。
我们知道,
在一个网络环境中,我们可以通过IP地址去精确访问某个网络设备[如主机、pc、打印机],也可以通过这个设备名来访问该设备。通过IP地址去定位某个设备时,如果网络未遭受诸如ARP攻击的话,则通常都不会出现问题。关于ARP问题不是本篇重点,不再赘述。
而要想通过主机名去访问时,就需要有某种转换规则可以正确的将主机名称与IP地址成功映射。
这种转换规则通常可以有3种途径:
1 hosts配置文件;2 NIS[Network Information System|Service],网络信息服务,或者称之为"网络黄页";3 DNS[Domain Name System],域名系统。在没有配置NIS、DNS的网络环境下,/etc/hosts文件则成为我们通过主机名来访问该主机的唯一选择了。
这个配置文件里记录着网络中每一台主机名与其对应的IP地址,而且如果出现某个主机名对应多个IP的话,则只有第一条记录生效,可以用于正确的解析主机名,在解析过程中,后面出现的记录将被忽略。该文件的配置格式如下:
IP Address hostname aliases看个例子,如果保留默认情况下的环路地址:[root@node1 ~]# hostname
node1.oracleonlinux.cn
[root@node1 ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 node1.oracleonlinux.cn node1 localhost.localdomain localhost localhost
::1 localhost6.localdomain6 localhost6
# public
172.16.0.33 node1.oracleonlinux.cn node1
172.16.0.34 node2.oracleonlinux.cn node2
# private
192.168.94.11 node1-priv.oracleonlinux.cn node1-priv
192.168.94.12 node2-priv.oracleonlinux.cn node2-priv
# virtual
172.16.0.35 node1-vip.oracleonlinux.cn node1-vip
172.16.0.36 node2-vip.oracleonlinux.cn node2-vip
# scan-ip
172.16.0.223 scan-cluster.oracleonlinux.cn
[root@node1 ~]# ping node1
PING node1.oracleonlinux.cn (127.0.0.1) 56(84) bytes of data.
64 bytes from node1.oracleonlinux.cn (127.0.0.1): icmp_seq=1 ttl=64time=0.028 ms
64 bytes from node1.oracleonlinux.cn (127.0.0.1): icmp_seq=2 ttl=64time=0.043 ms
64 bytes from node1.oracleonlinux.cn (127.0.0.1): icmp_seq=3 ttl=64time=0.041 ms
64 bytes from node1.oracleonlinux.cn (127.0.0.1): icmp_seq=4 ttl=64time=0.039 ms
--- node1.oracleonlinux.cnping statistics ---
4 packets transmitted, 4 received, 0% packet loss,time 3001ms
rtt min/avg/max/mdev= 0.028/0.037/0.043/0.009 ms
[root@node1 ~]# ping node1.oracleonlinux.cn
PING node1.oracleonlinux.cn (127.0.0.1) 56(84) bytes of data.
64 bytes from node1.oracleonlinux.cn (127.0.0.1): icmp_seq=1 ttl=64time=0.031 ms
64 bytes from node1.oracleonlinux.cn (127.0.0.1): icmp_seq=2 ttl=64time=0.042 ms
64 bytes from node1.oracleonlinux.cn (127.0.0.1): icmp_seq=3 ttl=64time=0.044 ms
64 bytes from node1.oracleonlinux.cn (127.0.0.1): icmp_seq=4 ttl=64time=0.043 ms
--- node1.oracleonlinux.cnping statistics ---
4 packets transmitted, 4 received, 0% packet loss,time 2999ms
rtt min/avg/max/mdev= 0.031/0.040/0.044/0.005 ms
[root@node1 ~]#我们修改默认环路地址后: [root@node1 ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost
::1 localhost6.localdomain6 localhost6
# public
172.16.0.33 node1.oracleonlinux.cn node1
172.16.0.34 node2.oracleonlinux.cn node2
# private
192.168.94.11 node1-priv.oracleonlinux.cn node1-priv
192.168.94.12 node2-priv.oracleonlinux.cn node2-priv
# virtual
172.16.0.35 node1-vip.oracleonlinux.cn node1-vip
172.16.0.36 node2-vip.oracleonlinux.cn node2-vip
# scan-ip
172.16.0.223 scan-cluster.oracleonlinux.cn
[root@node1 ~]# ping node1
PING node1.oracleonlinux.cn (172.16.0.33) 56(84) bytes of data.
64 bytes from node1.oracleonlinux.cn (172.16.0.33): icmp_seq=1 ttl=64time=0.026 ms
64 bytes from node1.oracleonlinux.cn (172.16.0.33): icmp_seq=2 ttl=64time=0.040 ms
64 bytes from node1.oracleonlinux.cn (172.16.0.33): icmp_seq=3 ttl=64time=0.050 ms
64 bytes from node1.oracleonlinux.cn (172.16.0.33): icmp_seq=4 ttl=64time=0.034 ms
--- node1.oracleonlinux.cnping statistics ---
4 packets transmitted, 4 received, 0% packet loss,time 3000ms
rtt min/avg/max/mdev= 0.026/0.037/0.050/0.010 ms
[root@node1 ~]# ping node1.oracleonlinux.cn
PING node1.oracleonlinux.cn (172.16.0.33) 56(84) bytes of data.
64 bytes from node1.oracleonlinux.cn (172.16.0.33): icmp_seq=1 ttl=64time=0.038 ms
64 bytes from node1.oracleonlinux.cn (172.16.0.33): icmp_seq=2 ttl=64time=0.044 ms
64 bytes from node1.oracleonlinux.cn (172.16.0.33): icmp_seq=3 ttl=64time=0.047 ms
64 bytes from node1.oracleonlinux.cn (172.16.0.33): icmp_seq=4 ttl=64time=0.041 ms
--- node1.oracleonlinux.cnping statistics ---
4 packets transmitted, 4 received, 0% packet loss,time 3001ms
rtt min/avg/max/mdev= 0.038/0.042/0.047/0.007 ms
[root@node1 ~]#
最后,看完之后,你有答案了吗?现在你知道了部署Oracle RAC时为什么需要将/etc/hosts文件里的环路地址修改为
127.0.0.1 localhost格式吗?更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12Oracle 大内存需要配置hugepageOracle 10G控制文件损坏恢复相关资讯 Oracle RAC Oracle hosts配置
- Oracle RAC 更换存储实验 (今 06:38)
- Oracle RAC客户端tnsnames.ora相关 (09/02/2015 19:31:57)
- Oracle 11gR2 RAC集群服务启动与关 (04/29/2015 10:27:54)
| - 11.2.04 Oracle RAC 目录中 (12/21/2015 15:10:42)
- 关于心跳网络引起的Oracle RAC的节 (06/04/2015 17:53:20)
- RedHat 6.4安装Oracle11.2.0.2 RAC (04/27/2015 19:26:34)
|
本文评论 查看全部评论 (0)