« VirtualBox de Oracle11g R2 RAC #11 | トップページ | VirtualBox de Oracle11g R2 RAC #13 »

2010年12月26日 (日) / Author : Hiroshi Sekiguchi.

VirtualBox de Oracle11g R2 RAC #12

VirtualBox de Oracle11g R2 RACのつづきです。

今回はRACノード構成ファイルの確認という予定だったのですが、DNSの構成を別建てにして置く事にします。量が多いので (^^;;

構成するDNSは、ローカルネットワークかつRACを構成するノードの管理さえできればいいので、ローカルネームサーバとして機能すれば十分。
ということで、RAC向けローカルネームサーバを構成することにします。(DNSは素人なので調べるほうが大変だったw)


では、さっそくやってみましょう。

  1. ハードウェア構成(VMなのでVMの構成も含めて)、ソフトウェア構成など
  2. Linux (CentOS 5.5 x86_64)のインストール
  3. Openfiler2.3 x86のインストール
  4. Openfiler2.3 x86によるiSCSIボリュームの構成
  5. Oracle RACノードでのiSCSIボリュームの構成 その1その2その3
  6. Oracle所有者、Oracle Grid Infrastructureユーザの作成と関連ディレクトリの作成及び環境変数の設定
  7. Oracle向けLinuxサーバーの構成(カーネルパラメータの設定)
  8. Oracle RACノード間リモートアクセスの構成とntpの構成
    sshの構成は念のために行った、多分、実施しなくても大丈夫だと思うけど…ついでなので、ちょいと意地悪な実験をしてみた)
  9. ローカルネームサーバの構成
  10. Oracle RACノード構成ファイルの確認
  11. Oracle Automatic Storage Management(ASMLib 2.0.5 x84_64)のインストール及び構成
  12. Oracle11g R2 11.2.0.1.0 RACインストール事前作業
  13. Oracle11g R2 11.2.0.1.0 Grid Infrastractureのインストール
  14. Oracle11g R2 11.2.0.1.0 Database softwareのインストール
  15. Oracle11g R2 11.2.0.1.0 examplesのインストール
  16. Oracle Cluster databaseの作成
  17. Net Serviceの確認
  18. Oralce Grid InsfastructureとDatabase構成の確認
  19. Clusterの開始と停止の確認
  20. 簡単なTransparent Application Failover (TAF)の確認

DNSの構成

悩んだのが、DNSをどこにたてるかということ。いろいろ悩んでいたんですが、元ネタの1つからいいアイデアもらいました。
それは、DNSをOpenfiler上に構成するということ。ストレージサーバなのでRACを構成する各ノードより先に起動していますし。:)

最初にやるのはDNSサーバを最新版にアップデートすること。でもでもでもですね。以前痛い目にあっていたのでOpenfilerというかrPath Linuxのパッケージ管理は無効化していたんです。このままじゃDNSの最新パッケージを使えないので一時的に使えるようにします。

Openfilerのパッケージ管理は、conaryというrPath Linux由来のものが利用されています。/etc/conaryrcの内容をすべてコメントアウトして利用できないようしてあります。

[root@arowana2 ˜]# cat /etc/conaryrc
#installLabelPath openfiler.rpath.org@ofns:2 conary.rpath.com@rpl:1
#pinTroves (kernel|linux-image-2\.6\.[0-9]+-[0-9]+(-[a-z]+)?)([:-].*|$)
#autoResolve True
#includeConfigFile /etc/conary/config.d/*
[root@arowana2 ˜]#

コメントアウトしていただけなのですぐに利用できるように戻せるのだ! :)

[root@arowana2 ˜]# cat /etc/conaryrc
installLabelPath openfiler.rpath.org@ofns:2 conary.rpath.com@rpl:1
pinTroves (kernel|linux-image-2\.6\.[0-9]+-[0-9]+(-[a-z]+)?)([:-].*|$)
autoResolve True
includeConfigFile /etc/conary/config.d/*
[root@arowana2 ˜]#

conaryをつかってbindを最新版にアップデート!!

[root@arowana2 ˜]# conary update bind:runtime

Conary

確認! 最新版になりました!

[root@arowana2 ˜]# conary q bind
bind=9.4.3_P5-1.1-1

再び、conaryを無効化しておく。(トラウマなだけで今は安定しているかもしれんw だけど止めとくw)

[root@arowana2 ˜]# cat /etc/conaryrc
#installLabelPath openfiler.rpath.org@ofns:2 conary.rpath.com@rpl:1
#pinTroves (kernel|linux-image-2\.6\.[0-9]+-[0-9]+(-[a-z]+)?)([:-].*|$)
#autoResolve True
#includeConfigFile /etc/conary/config.d/*
[root@arowana2 ˜]#


Openfiler(host名:arowana2)で、DNSの構成を始めるにあたって参考にしたサイトを書いておきますね。

Oracle Grid Infrastructureインストレーション・ガイド 11gリリース2(11.2)for Linux - 2.7.4 グリッド・ネーミング・サービスの構成例
Openfiler側にDNSを立てるというアイデアを頂いたサイト。元ネタの1つでもある。
DNSの素人なりにいろいろググって見つけたすげー参考になったサイト「月刊NetworkWorld連載『DNSの仕組み完全解説』」(ありがとうございます!)


今回構築するRACのネットワーク構成は以前の書いたが以下のように構成する。

RACを構成するノード1 (hostname=discus164.macdeoracle.jp)
Hostname タイプ IP address 名前解決方法
discus164 Public 192.168.1.90 hostsおよびDNS
discus164-iscsi Private 192.168.2.90
discus164-priv Private 192.168.3.90
discus164-vip Virtual 192.168.1.190
RACを構成するノード2 (hostname=discus264.macdeoracle.jp)
Hostname タイプ IP address 名前解決方法
discus264 Public 192.168.1.91 hostsおよびDNS
discus264-iscsi Private 192.168.2.91
discus264-priv Private 192.168.3.91
discus264-vip Virtual 192.168.1.191
SCAN VIP1/2/3
Hostname タイプ IP address 名前解決方法
discus-rac64-scan Virtual 192.168.1.200 DNS
discus-rac64-scan 192.168.1.201
discus-rac64-scan 192.168.1.202
Openfiler2.3(iSCSI) - (hostname=arowana2.macdeoracle.jp)
Hostname タイプ IP address 名前解決方法
arowana2 Public 192.168.1.92 hostsおよびDNS
arowana2-priv Private 192.168.2.92

・DNSの構成

/etc/resolv.confの構成は以下の通り。ローカルipアドレスを利用しているRACの各ノードやOpenfilerは/etc/hostsとdnsで解決できるようにしておきます。ipアドレスはすべて固定です。
[root@arowana2 ˜]# cat /etc/resolv.conf
search macdeoracle.jp
nameserver 192.168.1.92

; Forward Lookup Zone
discus164 IN A 192.168.1.90
discus264 IN A 192.168.1.91
discus164-priv IN A 192.168.3.90
discus264-priv IN A 192.168.3.91
discus164-iscsi IN A 192.168.2.90
discus264-iscsi IN A 192.168.2.91
discus164-vip IN A 192.168.1.190
discus264-vip IN A 192.168.1.191
arowana2 IN A 192.168.1.92
arowana2-priv IN A 192.168.2.92
discus-rac64-scan IN A 192.168.1.200
discus-rac64-scan IN A 192.168.1.201
discus-rac64-scan IN A 192.168.1.202

; Reverse Lookup Zone
90 IN PTR discus164.macdeoracle.jp.
91 IN PTR discus264.nacdeiracle,jp.
190 IN PTR discus164-vip.macdeoracle.jp.
191 IN PTR discus264-vip.macdeoracle.jp.
200 IN PTR discus-rac64-scan.macdeoracle.jp.
201 IN PTR discus-rac64-scan.macdeoracle.jp.
202 IN PTR discus-rac64-scan.macdeoracle.jp.
[root@arowana2 ˜]#


/etc/named.confの構成。(逆引き/正引きのゾーン設定や上位DNSへの回送設定)
逆引きの設定で、RACで利用しているローカルipアドレス以外はダーミーゾーンに設定しているところがポイント。気になっていたところなのでググってよい参考サイト見つけられてよかった。ほんと感謝、感謝。

[root@arowana2 ˜]# cat /etc/named.conf
# DNS configuration file for Oracle RAC 11g release 2

options {


// FORWARDERS: Forward any name this DNS can't resolve to my router.
forwarders { 192.168.1.1; };

// DIRECTORY: Directory where named will look for zone files.
directory "/srv/named/data";

//allow query requests
allow-query { 192.168.0.0/22; };
};

# ----------------------------------
# Forward Zone
# ----------------------------------

zone "macdeoracle.jp" IN {
type master;
file "macdeoracle.jp.zone";
allow-update { none; };
};

# ----------------------------------
# Reverse Zone
# ----------------------------------

zone "1.168.192.in-addr.arpa" IN {
type master;
file "1.168.192.in-addr.arpa.zone";
allow-update { none; };
};

zone "168.192.in-addr.arpa" IN {
type master;
file "dummy.zone";
notify no;
};

zone "0.0.127.in-addr.arpa" IN {
type master;
file "0.0.127.in-addr.arpa.zone";
notify no;
};

# ----------------------------------
# private addresses dummy Zone
# ---------------------------------

zone "10.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "16.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "17,172,in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "18.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "19.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "20.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "21.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "22.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "23.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "24.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "25.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "26.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "27.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "28.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "29.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "30.172.in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

zone "31.172,in-addr.arpa" {
type master;
file "dummy.zone";
notify no;
};

[root@arowana2 ˜]#


・以下、正引き/逆引き用ゾーンファイルの作成
/srv/named/data/macdeoracle.jp.zoneの作成(正引き用ゾーンファイル)

[root@arowana2 ˜]# cat /srv/named/data/macdeoracle.jp.zone
; +-------------------------------------------------------------------+
; | /srv/named/data/macdeoracle.jp.zone |
; | |
; | Forward zone definition file for macdeoracle.jp zone |
; +-------------------------------------------------------------------+

$ORIGIN macdeoracle.jp.

$TTL 86400 ; time-to-live - (1 day)

@ IN SOA arowana2.macdeoracle.jp. discus.lampeye.macdeoracle.jp. (
201011021 ; serial number - (yyyymmdd+s)
7200 ; refresh - (2 hours)
300 ; retry - (5 minutes)
604800 ; expire - (1 week)
60 ; minimum - (1 minute)
)
IN NS arowana2.macdeoracle.jp.
localhost IN A 127.0.0.1

; Oracle RAC Nodes
discus164 IN A 192.168.1.90
discus264 IN A 192.168.1.91
discus164-priv IN A 192.168.3.90
discus264-priv IN A 192.168.3.91
discus164-iscsi IN A 192.168.2.90
discus264-iscsi IN A 192.168.2.91
discus164-vip IN A 192.168.1.190
discus264-vip IN A 192.168.1.191

; Network Storage Server
arowana2 IN A 192.168.1.92
arowana2-priv IN A 192.168.2.92

; Single Client Access Name (SCAN) virtual IP
discus-rac64-scan IN A 192.168.1.200
discus-rac64-scan IN A 192.168.1.201
discus-rac64-scan IN A 192.168.1.202

; Miscellaneous Nodes
lampeye IN A 192.168.1.2
[root@arowana2 ˜]#


/srv/named/data/168.192.in-addr.arpa.zon(逆引き用ゾーンファイル)の作成

[root@arowana2 data]# cat 168.192.in-addr.arpa.zone
; +-------------------------------------------------------------------+
; | /srv/named/data/168.192.in-addr.arpa.zone |
; | |
; | Reverse zone definition file for 168.192.in-addr.arpa.zone |
; +-------------------------------------------------------------------+

$ORIGIN 168.192.in-addr.arpa.

$TTL 86400 ; time-to-live - (1 day)

@ IN SOA arowana2.macdeoracle.jp. discus.lampeye.macdeoracle.jp. (
201011021 ; serial number - (yyyymmdd+s)
7200 ; refresh - (2 hours)
300 ; retry - (5 minutes)
604800 ; expire - (1 week)
60 ; minimum - (1 minute)
)
IN NS arowana2.macdeoracle.jp.

; Oracle RAC Nodes
90 IN PTR discus164.macdeoracle.jp.
91 IN PTR discus264.macdeoracle.jp.
190 IN PTR discus164-vip.macdeoracle.jp.
191 IN PTR discus264-vip.macdeoracle.jp.

; Network Storage Server
92 IN PTR arowana2.macdeoracle.jp.

; Single Client Access Name (SCAN) virtual IP
200 IN PTR discus-rac64-scan.macdeoracle.jp.
201 IN PTR discus-rac64-scan.macdeoracle.jp.
202 IN PTR discus-rac64-scan.macdeoracle.jp.

; Miscellaneous Nodes
2 IN PTR lampeye.macdeoracle.jp.
[root@arowana2 data]#


ローカルホスト(127.0.0.1)の逆引きゾーンの定義

[root@arowana2 ˜]# cat /srv/named/data/0.0.127.in-addr.arpa.zone
; +-------------------------------------------------------------------+
; | /srv/named/data/0.0.127.in-addr.arpa.zone |
; | |
; | Reverse zone definition file for 0.0.127.in-addr.arpa.zone |
; +-------------------------------------------------------------------+

$ORIGIN 0.0.127.in-addr.arpa.

$TTL 86400 ; time-to-live - (1 day)

@ IN SOA arowana2.macdeoracle.jp. discus.lampeye.macdeoracle.jp. (
201011021 ; serial number - (yyyymmdd+s)
7200 ; refresh - (2 hours)
300 ; retry - (5 minutes)
604800 ; expire - (1 week)
60 ; minimum - (1 minute)
)
IN NS arowana2.macdeoracle.jp.

; localhost
1 IN PTR localhost.
[root@arowana2 ˜]#


/srv/named/data/dummy.zone(ダミーゾーンファイル)の作成
「月刊NetworkWorld連載『DNSの仕組み完全解説』」の記事を参考にローカルipアドレスの逆引きの問い合わせが外部のDNSに発生しないようにするために利用するダミーゾーンファイルの定義を以下のように作成した。

[root@arowana2 ˜]# cat /srv/named/data/dummy.zone
; +-------------------------------------------------------------------+
; | /srv/named/data/dummy.zone |
; +-------------------------------------------------------------------+


$TTL 86400 ; time-to-live - (1 day)

@ IN SOA arowana2.macdeoracle.jp. discus.lampeye.macdeoracle.jp. (
201011021 ; serial number - (yyyymmdd+s)
28800 ; refresh - (2 hours)
2700 ; retry - (5 minutes)
604800 ; expire - (1 week)
3600 ; minimum - (1 minute)
)
IN NS arowana2.macdeoracle.jp.
[root@arowana2 ˜]#


構成できたらnamedを自動起動設定にしてnamedを起動

[root@arowana2 ˜]# chkconfig named on
[root@arowana2 ˜]# chkconfig --list named
named 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@arowana2 ˜]# service named start
Starting named: [ OK ]

ここまでてdnsの設定はおしまい。前述の作業はすべてOpenfilerを乗せているサーバ上で行った。


つづいて、RACを構成する各ノードでOpenfiler上に構成したローカルネームサーバを参照させるように設定する。
/etc/host.confの構成(RACを構成する全ノード及び、Openfilerを構成したノード)

/etc/hostsを優先させる。/etc/hostsを見てもらうとわかるけど、dnsと重複定義している。無駄と言えばむだだと思うけど。SCAN VIPだけdns管理すればOKなのかってとこまでは見えてないからそれはそれで別途確認だな→TODO
[oracle@discus164 ˜]$ cat /etc/host.conf
order hosts,bind


/etc/hostsの構成(RACを構成する全ノード及び、Openfilerを構成したノード)

[oracle@discus164 ˜]$ cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
#::1 localhost6.localdomain6 localhost6

#for public network
192.168.1.90 discus164.macdeoracle.jp discus164
192.168.1.91 discus264.macdeoracle.jp discus264
192.168.1.92 arowana2.macdeoracle.jp arowana2

#for Oracle Interconnect private network
192.168.3.90 discus164-priv.macdeoracle.jp discus164-priv
192.168.3.91 discus264-priv.macdeoracle.jp discus264-priv

#for iSCSI private network
192.168.2.92 arowana2-priv.macdeoracle.jp arowana2-priv
192.168.2.90 discus164-iscsi.macdeoracle.jp discus164-iscsi
192.168.2.91 discus264-iscsi.macdeoracle.jp discus264-iscsi

#for virtual public network
192.168.1.190 discus164-vip.macdeoracle.jp discus164-vip
192.168.1.191 discus264-vip.macdeoracle.jp discus264-vip


192.168.1.2 lampeye.macdeoracle.jp lampeye
[oracle@discus164 ˜]$

これで準備OK.続いて動作確認!

・正引きテスト

最初に外部サイトが引けるか確認…OK.

[root@discus164 ˜]# nslookup openfiler.com
Server: 192.168.1.92
Address: 192.168.1.92#53

Non-authoritative answer:
Name: openfiler.com
Address: 84.45.94.236

[root@discus164 ˜]#

次に内部…
[root@discus164 ˜]# nslookup lampeye 
Server: 192.168.1.92
Address: 192.168.1.92#53

Name: lampeye.macdeoracle.jp
Address: 192.168.1.2

[root@discus164 ˜]# nslookup discus164
Server: 192.168.1.92
Address: 192.168.1.92#53

Name: discus164.macdeoracle.jp
Address: 192.168.1.90

[root@discus164 ˜]# nslookup discus164-vip
Server: 192.168.1.92
Address: 192.168.1.92#53

Name: discus164-vip.macdeoracle.jp
Address: 192.168.1.190

[root@discus164 ˜]# nslookup discus264
Server: 192.168.1.92
Address: 192.168.1.92#53

Name: discus264.macdeoracle.jp
Address: 192.168.1.91

[root@discus164 ˜]# nslookup discus264-vip
Server: 192.168.1.92
Address: 192.168.1.92#53

Name: discus264-vip.macdeoracle.jp
Address: 192.168.1.191

[root@discus164 ˜]# nslookup discus-rac64-scan
Server: 192.168.1.92
Address: 192.168.1.92#53

Name: discus-rac64-scan.macdeoracle.jp
Address: 192.168.1.201
Name: discus-rac64-scan.macdeoracle.jp
Address: 192.168.1.202
Name: discus-rac64-scan.macdeoracle.jp
Address: 192.168.1.200

[root@discus164 ˜]# nslookup localhost
Server: 192.168.1.92
Address: 192.168.1.92#53

Name: localhost.macdeoracle.jp
Address: 127.0.0.1


・逆引きテスト

[root@discus164 ˜]# nslookup 192.168.1.200
Server: 192.168.1.92
Address: 192.168.1.92#53

200.1.168.192.in-addr.arpa name = discus-rac64-scan.macdeoracle.jp.

[root@discus164 ˜]# nslookup 192.168.1.201
Server: 192.168.1.92
Address: 192.168.1.92#53

201.1.168.192.in-addr.arpa name = discus-rac64-scan.macdeoracle.jp.

[root@discus164 ˜]# nslookup 192.168.1.202
Server: 192.168.1.92
Address: 192.168.1.92#53

202.1.168.192.in-addr.arpa name = discus-rac64-scan.macdeoracle.jp.

[root@discus164 ˜]# nslookup 192.168.1.90
Server: 192.168.1.92
Address: 192.168.1.92#53

90.1.168.192.in-addr.arpa name = discus164.macdeoracle.jp.

[root@discus164 ˜]# nslookup 192.168.1.91
Server: 192.168.1.92
Address: 192.168.1.92#53

91.1.168.192.in-addr.arpa name = discus264.macdeoracle.jp.

[root@discus164 ˜]# nslookup 192.168.1.190
Server: 192.168.1.92
Address: 192.168.1.92#53

190.1.168.192.in-addr.arpa name = discus164-vip.macdeoracle.jp.

[root@discus164 ˜]# nslookup 192.168.1.191
Server: 192.168.1.92
Address: 192.168.1.92#53

191.1.168.192.in-addr.arpa name = discus264-vip.macdeoracle.jp.


[root@discus164 ˜]# nslookup 127.0.0.1
Server: 192.168.1.92
Address: 192.168.1.92#53

1.0.0.127.in-addr.arpa name = localhost.

[root@discus164 ˜]#

これでOK次回へつづく。






これまでのあらすじ
Mac de Oracle - 10万円未満 de RAC (11g編)#28

VirtualBox de RAC (Oracle11g R1編) #1
VirtualBox de RAC (Oracle11g R1編) #2



VirtualBox de Oracle11g R2 RAC #1
VirtualBox de Oracle11g R2 RAC #2 - 事前調査など…
VirtualBox de Oracle11g R2 RAC #3
VirtualBox de Oracle11g R2 RAC #4
VirtualBox de Oracle11g R2 RAC #5
VirtualBox de Oracle11g R2 RAC #6
VirtualBox de Oracle11g R2 RAC #7
VirtualBox de Oracle11g R2 RAC #8
VirtualBox de Oracle11g R2 RAC #9
VirtualBox de Oracle11g R2 RAC #10
VirtualBox de Oracle11g R2 RAC #11

| |

トラックバック


この記事へのトラックバック一覧です: VirtualBox de Oracle11g R2 RAC #12:

コメント

コメントを書く