配置SSH用户等价

为方便RAC环境中各节点之间的通讯,往往需要配置SSH用户等价,说的直白点就是一个用户从一台机器连接到另一台机器时不需要输入密码。这可以使各节点的程序可直接访问其他节点,而无需每次人工输入密码。Clusterware和Database的安装过程都是先在一个节点安装,然后安装程序自动把本地安装好的内容复制到远程相同目录,这是一个后台拷贝的过程,安装人员没有机会输入密码进行身份验证,因此必须配置用户等价。

创建用户就不说了,不过这里提醒一点:必须保证每个节点上Oracle用户的UID和DBA用户组的GID相同。这一点可以在创建的时候指定。我们在下面的例子里配置两节点上root用户等价。

下面为用户等级配置:

  1. 首先配置网络设置

    网络设置包括为两个网卡指定地址、网络名称,通过编辑每个节点的/etc/hosts文件,确保每个节点都能识别这些网络名。

    各节点/etc/hosts文件配置如下:

    192.168.0.119 enmou1

    192.168.0.120 enmou3

  1. Oracle允许使用两种用户等价:RSH和SSH。推荐使用SSH

    首先以root身份在各个节点执行下列命令:

    cd $HOME

    mkdir .ssh

    chmod 700 .ssh

    cd .ssh

    ssh-keygen –t rsa

    ssh-keygen –t dsa

    cat *.pub > authorized_keys

    ssh-keygen会生成密钥,通常是一个公有密钥,一个私有密钥。

    cat *.pub > authorized_keys这一步是将拥有密钥内容导入authorized_keys文件

  2. 然后把所有节点的authorized_keys文件合成一个,再用这个文件覆盖各个节点.ssh下的同名文件

    以两个节点为例,我们先将节点1上的authorized_keys文件拷贝至节点2,然后将其中内容插入之节点2上的authorized_keys,这时节点2上的authorized_keys文件包含两个节点上.pub文件的内容。我们将其拷贝回节点1。命令如下:

    在1节点上:

    Scp authorized_keys enem3:/root/.ssh/keys_enmou1

    在2节点上:

    Cat keys_enmou1 >> authorized_keys

    Scp authorized_keys enoug1:/root/.ssh/

  3. 测试:

    从enmou1上进行测试

    Ssh enmou3

    从enmou3上进行测试

    Ssh enmou1

    不用输入密码,都可直接访问其他节点。

 

对于 RSA/DSA 密钥的工作原理,转贴在下一篇文章中。

总结:跟RAC有关的东西第一次接触,小记一下,每一个知识点都是一小步。

参考资料:

《大话Oracle RAC》

SSH用户等价关系配置 http://blog.csdn.net/xqy1522/archive/2010/04/14/5483328.aspx

普人特福的博客cnzz&51la for wordpress,cnzz for wordpress,51la for wordpress