11g RAC R2 之Linux DNS 配置
在动手配置前,最好先了解下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 配置的更多相关文章
- 安装Oracle 11g RAC R2 之Linux DNS 配置
Oracle 11g RAC 集群中引入了SCAN(Single Client Access Name)的概念,也就是指集群的单客户端访问名称.SCAN 这个特性为客户端提供了单一的主机名,用于访问集 ...
- oracle 11g rac R2 for linux change(public,vip)IP ,hostname (oracle 11g rac R2 修改公有,虚拟,私有IP,网卡)
结构如下: 说明: 节点IP,主机名的修改步骤来自ORACLE support文档: 如何修改集群的公网信息(包括 VIP) (文档 ID 1674442.1) 实验环境情况如下: 实验 节点名称 数 ...
- Redhat linux DNS配置指南(SCANIP配置手册)
在oracle 11g的RAC中增加了SCAN IP,而使用 SCAN IP的一种方式就是使用DNS,这里介绍在Redhat Linux 5.4中DNS的详细配置操作在配置DNS之前修改主机名Redh ...
- 11g RAC R2 体系结构---进程,日志
进程结构:Overview of Oracle Clusterware Platform-Specific Software Components When Oracle Clusterware is ...
- 11g RAC R2 体系结构---用户及用户组
10.2 RAC 到11.2 RAC 用户及用户组的变化: 在10.2 RAC 的部署中,只需要一个用户(oracle)和一个用户组(dba).Database.Clusterware都是用oracl ...
- 11g RAC R2 日常巡检--Grid
一.巡检RAC数据库 1.1列出数据库 [grid@node1 ~]$ srvctl config database racdb [grid@node1 ~]$ 1.2列出数据库的实例 [grid@n ...
- 11g RAC r2 的启停命令概述1
目标: 熟悉主要进程的启停顺序 了解独占模式 -excl crsctl start crs与crsctl start cluster 区别 1.熟悉主要进程的启停顺序 1.1 启动节点rac1: [r ...
- Linux DNS配置
1.安装bind #安装bind yum install -y bind bind-chroot bind-utils 2.主配置文件 vi /etc/named.conf #修改监听为本机IP li ...
- linux dns 配置
今天线上出现一个bug,图片上传失败. 经过排查发现,上传图片接口调用失败,ping 域名提示 unknow host,ping IP正常. 猜想可能是dns的问题.解决过程如下: /etc 下没有 ...
随机推荐
- 【Shell脚本学习12】Shell字符串
字符串是shell编程中最常用最有用的数据类型(除了数字和字符串,也没啥其它类型好用了),字符串可以用单引号,也可以用双引号,也可以不用引号.单双引号的区别跟PHP类似. 单引号 str='this ...
- PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法
这篇文章主要介绍了PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法,是在进行PHP数据库程序开发中常会遇 ...
- [转]在WPF中使用WinForm控件方法
本文转自:http://blog.csdn.net/lianchangshuai/article/details/6415241 下面以在Wpf中添加ZedGraph(用于创建任意数据的二维线型.条型 ...
- python 调用mysql存储过程返回结果集
存储过程: delimiter | ),)) begin select * from tb_test where mid = imid and user = iuser; end; | delimit ...
- Log4net记录日志存库并存本地
<?xml version="1.0" encoding="utf-8"?> <configuration> <configSec ...
- 运维人愿意听到的话 vs 不愿意听到的话
在公司兼做了接近两年的远程运维工作,与内部打交道的过程中听到各种各样的话, 简单摘列一下那些似曾相识的愿意.不愿意听到的话: ”先别操作,帮忙先拷贝日志!我们调查一下答复!“ vs ”你先重启一下 ...
- 北大ACM(POJ1009-Edge Detection)
Question:http://poj.org/problem?id=1009问题点:RLE编码. Memory: 648K Time: 547MS Language: C++ Result: Acc ...
- 友盟分享--集成QQ和微信
随着社交工具的应用范围越来越广,分享一些内容的功能也开始要求实现了. 用得比较多的第三方,比如说友盟,比如说Share等等... 前几天刚用友盟写了集成QQ和微信客户端的功能,觉得有必要分享一下. 在 ...
- 【学习笔记】【C语言】结构体
1.定义结构体变量的3种方式 1> 先定义类型,再定义变量(分开定义) struct Student { int age; }; struct Student stu; 2> 定义 ...
- Toad for Oracle Authorization key
Authorization key : 0-63920-00993-29060-08749 sit message : li