Oracle RAC SSH等价性配置
㈠ 需求
为方便RAC环境个节点通信、往往需要配置SSH等价性
简言之:
用户或程序从一台机器连接到另一台机器时不需要输入密码
这种应用的背景是:
Clusterware和Database的安装过程都是先在一个节点安装
然后安装程序自动把本地安装好的内容复制到远程相同目录
这是一个后台拷贝的过程,安装人员没有机会输入密码进行身份验证,因此必须配置用户等价
其实、在Hadoop集群配置过程、也需要配置SSH等价性
Hadoop运行过程中需要管理远端Hadoop守护进程,在Hadoop启动以后
NameNode是通过SSH来启动和停止各个DataNode上的各种守护进程的
所以、这两者关于SSH等价性的配置是一样的
㈡ 安装和启动SSH协议
先确认是否安装:
# rpm -qa | grep openssh
# rpm -qa | grep rsync
如果没有、则:
# yum install ssh
# yum install rsync
启动SSH:
# service sshd start
㈢ SSH等价性原理
假设网络上有2台机器:A&B、且A要实现无密码公钥认证、则:
① 先在A上生成一个密钥对,包括一把公钥和一把私钥
② 而后将公钥复制到B上
③ 当A通过SSH连接B时,B就会生成一个随机数并用A的公钥对随机数进行加密,并发送给A
④ A收到加密数之后再用私钥解密,并将解密数回传给B
⑤ B确认解密数无误之后就允许A进行连接了
㈣ 注意事项
必须保证每个节点上Oracle用户的UID和DBA组的GID相同
例如:
节点一:
[root@odd ~]# id oracle
uid=500(oracle) gid=500(oinstall) groups=500(oinstall)
节点二:
[root@even ~]# id oracle
uid=500(oracle) gid=500(oinstall) groups=500(oinstall),501(dba)