在动手配置前,最好先了解下DNS的理论,以免犯不必要的错误。这都是被坑后的觉悟 -_-!!!

  Oracle 11g RAC 集群中引入了SCAN(SingleClientAccessName)的概念,是指集群的单客户端访问名称。相当于在客户端和数据库之间增加一层虚拟的网络服务层,即 SCAN IP 和 SCAP IP Listener。在客户端的 tnsnames.ora 配置文件中,只需要配置 SCAN IP 的配置信息即可,客户端通过 SCANIP、 SCAN IP Listener 来访问数据库。

  同之前各版本的 RAC 相比,使用 SCAN IP 的好处就是, 当后台 RAC 数据库添加、删除节点时,客户端配置信息无需修改。SCAN 可以通过配置DNS 服 务器或 GNS 来配置 SCAN,我们这里以 DNS 为例来进行配置。

1、安装环境

 可用单独机器作为DNS服务器,也可直接使用RAC的一个节点来做DNS解析。
使用某个RAC节点时,容易出现该节点如果宕机将导致SCAN无法解析,客户端无法连接数据库.
由于资源限制,我们只使用RAC1节点的public ip用作DNS。
[root@racdb ~]# cat /etc/issue
Oracle Linux Server release .6Kernel \r on an \m [root@racdb ~]#

2、主机节点host信息

[root@racdb ~]# cat /etc/hosts
127.0.0.1 localhost.racdb.com localhost
:: localhost6.localdomain6 localhost6 #public ip:
192.168.1.203 rac1.racdb.com rac1 --用作DNS服务器地址
192.168.1.204 rac2.racdb.com rac2 #private ip:
192.168.0.203 rac1priv.racdb.com rac1priv
192.168.0.204 rac2priv.racdb.com rac2priv #vip
192.168.1.213 rac1vip.racdb.com rac1vip
192.168.1.214 rac2vip.racdb.com rac2vip
[root@racdb ~]#

3、配置DNS

  • 安装所需的rpm包
  • 配置named.conf文件,配置zone文件(可称为zone的索引文件)
  • 配置正向和反向文件(zone文件中所指向的文件)
  • 配置解析文件resolv.conf
  • 启动dns服务

3.1 安装所需的rpm包,注意安装顺序

 [root@node1 dns_rpm]# ls
bind-9.3.-.P1.el5.i386.rpm
bind-chroot-9.3.-.P1.el5.i386.rpm
caching-nameserver-9.3.-.P1.el5.i386.rpm
下面安装rpm包
[root@node1 dns_rpm]# rpm -ivh bind-9.3.-.P1.el5.i386.rpm
[root@node1 dns_rpm]# rpm -ivh bind-chroot-9.3.-.P1.el5.i386.rpm
[root@node1 dns_rpm]# rpm -ivh caching-nameserver-9.3.-.P1.el5.i386.rpm

3.2 配置named.conf文件

 进入目录
[root@racdb ~]# cd /var/named/chroot/etc/ 使用下面的方式复制一个新的副本并修改,参数-p表示连同权限及属主,属组一同复制。切记不可忽略参数-p
[root@node1 etc]# cp -p named.caching-nameserver.conf named.conf
6 [root@node1 etc]# cp -p named.rfc1912.zones   named.zones
修改named.conf文件
将源文件中的所有localhost以及127.0.0.1修改成any,注意any;前后保留空格
该文件主要是配置dns监听那些端口以及ip地址并指明相应的名字解析zone文件名named.zones
下面是修改后的named.conf文件
[root@racdb etc]# cat /var/named/chroot/etc/named.conf
//
// named.caching-nameserver.conf
//
// Provided by Red Hat caching-nameserver package to configure the
// ISC BIND named(8) DNS server as a caching only nameserver
// (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
// DO NOT EDIT THIS FILE - use system-config-bind or an editor
// to create named.conf - edits to this file will be lost on
// caching-nameserver package upgrade.
//
options {
listen-on port { any; }; //修改
listen-on-v6 port { ::; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt"; // Those options should be used carefully because they disable port
// randomization
// query-source port 53;
// query-source-v6 port 53; allow-query { any; }; //修改
allow-query-cache { any; }; //修改
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view localhost_resolver {
match-clients { any; }; //修改
match-destinations { any; }; //修改
recursion yes;
include "named.zones"; //修改,修改后的指向我们的拷贝文件 named.zones
53 };
[root@racdb etc]#

配置zone文件(可称为zone的索引文件)

 #文件末尾最后的两个zone为新增加的
#注意每一个zone的file用于指向真正的zone文件,后面要用到
#下面是修改后的named.zones文件
[root@racdb etc]# cat named.zones
// named.rfc1912.zones:
//
// Provided by Red Hat caching-nameserver package
//
// ISC BIND named zone configuration for zones recommended by
// RFC 1912 section 4.1 : localhost TLDs and address zones
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
zone "." IN {
type hint;
file "named.ca";
}; zone "localdomain" IN {
type master;
file "localdomain.zone";
allow-update { none; };
}; zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
}; zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
}; zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
type master;
file "named.ip6.local";
allow-update { none; };
}; zone "255.in-addr.arpa" IN {
type master;
file "named.broadcast";
allow-update { none; };
}; zone "0.in-addr.arpa" IN {
type master;
file "named.zero";
allow-update { none; };
}; #以下两个zone为新增的,包含正向和反向zone
zone "racdb.com" IN { #正向。racdb.com为域名,此域名的声明要放到 resolv.conf 文件中
type master;
file "racdb.zero"; #正向解析文件名称 此文件目录/var/named/chroot/var/named
allow-update { none; };
}; zone "1.168.192.in-addr.arpa" IN { #反向,1.168.192为所要解析的ip网段
type master;
file "1.168.192.in-addr.arpa"; #反向解析文件名称 此文件目录/var/named/chroot/var/named
allow-update { none; };
};

3.3 配置正向和反向解析文件

 [root@racdb etc]# pwd
/var/named/chroot/etc
[root@racdb etc]# cd ../var/named/
[root@racdb named]#
#同样使用cp -p 方式复制文件到新的正向和反向文件
[root@racdb named]# cp -p named.zero racdb.zero #文件名就是named.zones -> racdb.com(正向域名) -> file的名称一致
[root@racdb named]# cp -p named.local 1.168..in-addr.arpa #文件名就是named.zones -> racdb.com(反向域名) -> file的名称一致

3.3.1 修改后的正向搜索文件

 [root@racdb named]# cat racdb.zero
$TTL
@ IN SOA racdb.com. root.racdb.com. (
; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS racdb.com.
racscan IN A 192.168.1.200
racscan IN A 192.168.1.199
racscan IN A 192.168.1.198
[root@racdb named]# SOA 是授权起始(Start Of Authority)的缩写,后面接着是dns服务器的主机名,这里是"racdb.com。"。
注意,主机名称后面的小圆点。凡是出现在记录文件了的主机名,记得都要加上这各小圆点
NS 是名称服务器资源记录,指明域中的名称服务器,这里就是dns服务器
A是主机记录,把IP名和ip地址对应起来
可以添加多个A记录,我们的SCAN 有三个ip,这里我们就添加了3个
了解这些已经够用了,具体详情自行google ^_^

3.3.2 修改后的反向搜索文件

 [root@racdb named]# cat 1.168..in-addr.arpa
$TTL
@ IN SOA racdb.com. root.racdb.com. (
; Serial
; Refresh
; Retry
; Expire
) ; Minimum
IN NS racdb.com.
IN PTR racdb.com.
IN PTR racscan.
IN PTR racscan.
IN PTR racscan. [root@racdb named]#
同正向解析文件相似,不同点是PTR
PTR记录把IP和IP名对应起来,
可以添加多个PTR记录

3.4 配置解析文件resolv.conf

 在RAC1节点配置resolv.conf文件
[root@racdb named]# vi /etc/resolv.conf
search racdb.com #定义域名的搜索列,即name.zones文件中zone域名均要在此声明(不包含反向zone及系统默认的localhost)
nameserver 192.168.1.203 #定义DNS服务器的IP地址 #在RAC2节点上的resolv.conf文件
[root@racdb named]# vi /etc/resolv.conf
search racdb.com #定义域名的搜索列
nameserver 192.168.1.203 #定义DNS服务器的IP地址

3.5 启动dns服务

 [root@racdb named]# service named restart
Stopping named: .[ OK ]
Starting named: [ OK ]
[root@racdb named]# chkconfig named on #测试dns解析RAC1 正向解析
[root@rac1 bin]# nslookup racscan
Server: 192.168.1.203
Address: 192.168.1.203# Name: racscan.racdb.com
Address: 192.168.1.200
Name: racscan.racdb.com
Address: 192.168.1.198
Name: racscan.racdb.com
Address: 192.168.1.199 [root@rac1 bin]# #测试dns解析RAC2 正向解析
[root@rac2 bin]# nslookup racscan
Server: 192.168.1.203
Address: 192.168.1.203# Name: racscan.racdb.com
Address: 192.168.1.199
Name: racscan.racdb.com
Address: 192.168.1.200
Name: racscan.racdb.com
Address: 192.168.1.198 [root@rac2 bin]# #测试dns解析RAC1 反向解析
[root@rac1 bin]# nslookup 192.168.1.200
Server: 192.168.1.203
Address: 192.168.1.203# 200.1.168.192.in-addr.arpa name = racscan. [root@rac1 bin]# nslookup 192.168.1.199
Server: 192.168.1.203
Address: 192.168.1.203# 199.1.168.192.in-addr.arpa name = racscan. [root@rac1 bin]# nslookup 192.168.1.198
Server: 192.168.1.203
Address: 192.168.1.203# 198.1.168.192.in-addr.arpa name = racscan. [root@rac1 bin]# #测试dns解析RAC2 反向解析
[root@rac2 bin]# nslookup 192.168.1.200
Server: 192.168.1.203
Address: 192.168.1.203# 200.1.168.192.in-addr.arpa name = racscan. [root@rac2 bin]# nslookup 192.168.1.199
Server: 192.168.1.203
Address: 192.168.1.203# 199.1.168.192.in-addr.arpa name = racscan. [root@rac2 bin]# nslookup 192.168.1.198
Server: 192.168.1.203
Address: 192.168.1.203# 198.1.168.192.in-addr.arpa name = racscan. [root@rac2 bin]#

11g RAC R2 之Linux DNS 配置的更多相关文章

  1. 安装Oracle 11g RAC R2 之Linux DNS 配置

    Oracle 11g RAC 集群中引入了SCAN(Single Client Access Name)的概念,也就是指集群的单客户端访问名称.SCAN 这个特性为客户端提供了单一的主机名,用于访问集 ...

  2. oracle 11g rac R2 for linux change(public,vip)IP ,hostname (oracle 11g rac R2 修改公有,虚拟,私有IP,网卡)

    结构如下: 说明: 节点IP,主机名的修改步骤来自ORACLE support文档: 如何修改集群的公网信息(包括 VIP) (文档 ID 1674442.1) 实验环境情况如下: 实验 节点名称 数 ...

  3. Redhat linux DNS配置指南(SCANIP配置手册)

    在oracle 11g的RAC中增加了SCAN IP,而使用 SCAN IP的一种方式就是使用DNS,这里介绍在Redhat Linux 5.4中DNS的详细配置操作在配置DNS之前修改主机名Redh ...

  4. 11g RAC R2 体系结构---进程,日志

    进程结构:Overview of Oracle Clusterware Platform-Specific Software Components When Oracle Clusterware is ...

  5. 11g RAC R2 体系结构---用户及用户组

    10.2 RAC 到11.2 RAC 用户及用户组的变化: 在10.2 RAC 的部署中,只需要一个用户(oracle)和一个用户组(dba).Database.Clusterware都是用oracl ...

  6. 11g RAC R2 日常巡检--Grid

    一.巡检RAC数据库 1.1列出数据库 [grid@node1 ~]$ srvctl config database racdb [grid@node1 ~]$ 1.2列出数据库的实例 [grid@n ...

  7. 11g RAC r2 的启停命令概述1

    目标: 熟悉主要进程的启停顺序 了解独占模式 -excl crsctl start crs与crsctl start cluster 区别 1.熟悉主要进程的启停顺序 1.1 启动节点rac1: [r ...

  8. Linux DNS配置

    1.安装bind #安装bind yum install -y bind bind-chroot bind-utils 2.主配置文件 vi /etc/named.conf #修改监听为本机IP li ...

  9. linux dns 配置

    今天线上出现一个bug,图片上传失败. 经过排查发现,上传图片接口调用失败,ping 域名提示 unknow host,ping IP正常. 猜想可能是dns的问题.解决过程如下: /etc 下没有 ...

随机推荐

  1. 【Shell脚本学习12】Shell字符串

    字符串是shell编程中最常用最有用的数据类型(除了数字和字符串,也没啥其它类型好用了),字符串可以用单引号,也可以用双引号,也可以不用引号.单双引号的区别跟PHP类似. 单引号 str='this ...

  2. PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法

    这篇文章主要介绍了PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法,是在进行PHP数据库程序开发中常会遇 ...

  3. [转]在WPF中使用WinForm控件方法

    本文转自:http://blog.csdn.net/lianchangshuai/article/details/6415241 下面以在Wpf中添加ZedGraph(用于创建任意数据的二维线型.条型 ...

  4. python 调用mysql存储过程返回结果集

    存储过程: delimiter | ),)) begin select * from tb_test where mid = imid and user = iuser; end; | delimit ...

  5. Log4net记录日志存库并存本地

    <?xml version="1.0" encoding="utf-8"?> <configuration> <configSec ...

  6. 运维人愿意听到的话 vs 不愿意听到的话

    在公司兼做了接近两年的远程运维工作,与内部打交道的过程中听到各种各样的话, 简单摘列一下那些似曾相识的愿意.不愿意听到的话: ”先别操作,帮忙先拷贝日志!我们调查一下答复!“  vs  ”你先重启一下 ...

  7. 北大ACM(POJ1009-Edge Detection)

    Question:http://poj.org/problem?id=1009问题点:RLE编码. Memory: 648K Time: 547MS Language: C++ Result: Acc ...

  8. 友盟分享--集成QQ和微信

    随着社交工具的应用范围越来越广,分享一些内容的功能也开始要求实现了. 用得比较多的第三方,比如说友盟,比如说Share等等... 前几天刚用友盟写了集成QQ和微信客户端的功能,觉得有必要分享一下. 在 ...

  9. 【学习笔记】【C语言】结构体

    1.定义结构体变量的3种方式 1> 先定义类型,再定义变量(分开定义) struct Student {    int age; }; struct Student stu;  2> 定义 ...

  10. Toad for Oracle Authorization key

    Authorization key :    0-63920-00993-29060-08749 sit         message  :     li