5.设置两个节点的互相信任机制
由于RAC的节点之间需要完全无障碍的访问,因此需要设定主机名互相访问以及互相信任机制。注意:以下所有步骤都必须在两台节点上各自完成。
5.1 设置主机名
首先,RAC之间互相不能通过ip来访问,而必须使用主机名来访问,因此需要设定hosts内容。笔者设定的是节点linux1的内部访问主机名为linux1-prv,而外部访问节点名为linux1;节点linux2的内部访问主机名为linux2-prv,而外部访问节点名为linux2。需要将这些信息添加到/etc/hosts文件里去,如下所示。注意,要将127.0.0.1原来所对应的linux1改名为localhost。
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1localhostlocalhost.localdomainlocalhost
134.251.114.140 linux1
134.251.114.141 linux2
134.251.0.140linux1-prv
134.251.0.141linux2-prv
同样的,修改linux2的/etc/hosts文件,也要将127.0.0.1原来所对应的linux2改名为localhost。其他设置与linux1节点一样。设置好以后,在linux1上ping linux2,在linux2上也ping linux1,如果都通的话,说明设置无误。
5.2 设置telnet访问
(1)通常缺省都会安装telnet-client。主要确定是否安装了telnet-server软件。
[root@linux1 root]# rpm –qa | grep telnet
(2)如果没有安装,则从AS3安装介质上找到该rpm包,并进行安装。
(3)安装好以后,需要启动telnet服务。输入以下命令,并从弹出的框中选中telnet后确认。
[root@linux1 root]# ntsysv
(4)激活telnet服务
[root@linux1 root]# service xinetd restart
(5)设置允许root进行telnet登录
[root @linux1 /root]# vi /etc/pam.d/login
将authrequiredpam_securetty.so这一行开头添加#,从而注释该行。
5.3 设置rlogin、rsh
由于在第一个节点上安装oracle软件时,oracle会自动将第一个节点上安装完毕的文件拷贝到第二个节点上,因此需要配置rlogin和rsh以及rcp等。
(1)确定是否安装了rsh-server软件。
[root@linux1 root]# rpm –qa | grep rsh
(2)如果没有安装,则从AS3安装介质上找到该rpm包,并进行安装。
(3)安装好以后,需要启动rsh、rlogin、rexec服务。输入以下命令,并从弹出的框中选中rsh、rlogin、rexec后确认。
[root@linux1 root]# ntsysv
(4)激活rsh、rlongin服务
[root@linux1 root]# service xinetd restart
(5)修改/etc/securetty
[root@linux1 root]# echo "rexec" >> /etc/securetty;echo "rlogin"
>> /etc/securetty;echo "rsh" >> /etc/securetty
(6)设置允许root进行rsh、rlogin
[root @linux1 /root]# vi /etc/pam.d/rlogin
将authrequiredpam_securetty.so这一行开头添加#,从而注释该行。
(7)在/etc目录下建立hosts.equiv文件,表示两台linux节点互相信任。
[root @linux1 /root]# vi /etc/hosts.equiv
在该文件里添加如下内容:
linux1
linux2
linux1-prv
linux2-prv
(8)在root的$HOME目录下,建立.rhosts文件。
[root @linux1 /root]# vi .rhosts
在该文件里添加如下内容。这样,root用户就可以直接rlogin、rsh而不用输入密码。
linux1 root
linux2 root
linux1-prv root
linux2-prv root
(9)配置完以后,我们可以测试一下是否成功。
[root @linux1 /root]# rlogin linux2
[root @linux1 /root]# rsh –l root linux2 cat /etc/hosts
[root @linux1 /root]# rcp /tmp/testlinux2:/tmp
