在动手配置前,最好先了解下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. leetcode 题解:Remove Duplicates from Sorted Array II(已排序数组去三次及以上重复元素)

    题目: Follow up for "Remove Duplicates":What if duplicates are allowed at most twice? For ex ...

  2. Linux重定向的理解

    /* 重定向的实例 dup2函数 利用filefd来代替STDOUT(标准输出流),write写入filefd的数据,重定向写出到STDOUT中: */ #include <stdio.h> ...

  3. Composer 中国镜像

    1.修改Composer的全局配置文件 config.json 使用sudo composer config -l -g 查看composer全局配置信息,在这些信息中查找 [home] 配置项就是 ...

  4. Frameset使用教程 小结

    frame,是网页开发必须掌握的知识.例如后台架构.局部刷新,页面分割,都是frame的用途表现,尤其是后台页面制作,使用frame会给用户带来非常舒适的使用感受. frame知识点包括(frames ...

  5. 关于JSON的总结

    本文总结自百度百科 JSON 语法规则 JSON 语法是 JavaScript 对象表示语法的子集. 数据在键值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JSON 名称/值对 JSON 数 ...

  6. 第03篇. 标准Web项目Jetty9内嵌API简单启动

    一直以来,想改变一些自己早已经习惯的事情. 到了一定年龄,便要学会寡言,每一句话都要有用,有重量. 喜怒不形于色,大事淡然,有自己的底线. --胖先生 昨天,简单的说了一下关于Jetty9的配置,大家 ...

  7. POJ 3921 Destroying the bus stations 沿着最短路迭代加深搜索

    题目:给出一个图,问最少删除多少个点,使得从点1到点n经过的点数超过k个. 分析: 上网搜了一下,发现很多人用网络流做的,发现我不会.再后来看到这篇说网络流的做法是错的,囧. 后来发现点数有点少,直接 ...

  8. 添加iPhone设备的udid之后,重新生成开发证书(Development)

    选择Provisioning profiles-Development-添加 ,如图:

  9. MVC基础(很基础很基础~~~)

    最近工作比较不忙,准备学习一些东西,作为一个菜鸟,不断学习新东西(我不会的东西)充实自己真的很重要,所以整理一下基础的mvc知识,以备不时之需.呵呵~~ 首先感谢原文作者:QLeelulu的文章htt ...

  10. Table of Contents - 设计模式

    设计原则 OCP - 开闭原则 SRP - 单一职责原则 DIP - 依赖倒置原则 ISP - 接口隔离原则 LSP - 里氏替换原则 LoD - 迪米特法则 创建型模式 工厂方法模式 抽象工厂模式 ...