Oracle RAC 12c R2用サーバ構築

基本的なネットワーク設定とホスト名の設定等が完了した状態です。
今回設定していく内容は以下になります。

  • 必要なパッケージのインストール
  • カーネルパラメータ
  • リソース制限
  • OSユーザ・グループの作成
  • ディレクトリの作成
  • NTPサービスの停止
  • 共有ディスクの設定

共有ディスクはあらかじめ作成しておきましょう。

作成方法については別記事で紹介していきます。

パッケージのインストール

まずは、パッケージインストール用にDVDメディアのリポジトリを作成するためにISOファイルをマウントします。
今回はVMware ESXi上の仮想マシンなのでVMRCのGUIから実施するとそのままマウントされるため、dfで確認します。

[root@node01 ~]# df -h
ファイルシス        サイズ  使用  残り 使用% マウント位置
devtmpfs              3.9G     0  3.9G    0% /dev
tmpfs                 3.9G   88K  3.9G    1% /dev/shm
tmpfs                 3.9G  9.0M  3.9G    1% /run
tmpfs                 3.9G     0  3.9G    0% /sys/fs/cgroup
/dev/mapper/ol-root    33G  3.2G   29G   10% /
/dev/sda1             509M  188M  322M   37% /boot
tmpfs                 799M   12K  799M    1% /run/user/0
/dev/sr0              4.4G  4.4G     0  100% /run/media/root/OL-7.3 Server.x86_64

次に、リポジトリ用のファイルを作成します。
スペースなどが無ければシングルクォート不要ですが、今回は含まれているため’で囲みます。

[root@node01 ~]# vi /etc/yum.repos.d/dvd.repo
[dvd]
name=dvd
baseurl='file:///run/media/root/OL-7.3 Server.x86_64/'
gpcheck=0
enabled=0
gpgkey=file:'///run/media/root/OL-7.3 Server.x86_64/RPM-GPG-KEY-oracle'

リポジトリを作成したら必要なパッケージをインストールしていきます。
実行ログは長いので載せませんが、上記の通りに設定していれば一発で通ります。
oracle-rdbms-server-11gR2-preinstall-1.0-4.el7.x86_64.rpmはOracleLinuxのPackagesディレクトリから直接rpmで入れます。

[root@node01 ~]# yum --disablerepo=* --enablerepo=dvd install kernel-devel -y
[root@node01 ~]# yum --disablerepo=* --enablerepo=dvd install libstdc++-devel -y
[root@node01 ~]# yum --disablerepo=* --enablerepo=dvd install compat-libcap1 compat-libstdc++-33 gcc-c++ ksh libaio-devel -y
[root@node01 ~]# cd /run/media/root/OL-7.3\ Server.x86_64/Packages/
[root@node01 Packages]# rpm -Uvh oracle-rdbms-server-11gR2-preinstall-1.0-4.el7.x86_64.rpm

カーネルパラメータ

次に、カーネルパラメータのチェックをします。
Oracle LinuxであればOracleDB用の設定が初期で入っているので、あまり気になりません。
CentOSやRHELの場合は設定を確認しましょう。

[root@node01 Packages]# sysctl -p
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
kernel.panic_on_oops = 1
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
net.ipv4.conf.all.rp_filter = 2
net.ipv4.conf.default.rp_filter = 2
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500

リソース制限

リソース制限にgridユーザの設定を追加します。

[root@node01 Packages]# vi /etc/security/limits.conf

grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240
grid hard stack 32768

OSユーザ・グループ作成

Oracle RAC、DB用のグループを追加していきます。

[root@node01 ~]# groupadd -g 54321 oinstall
[root@node01 ~]# groupadd -g 54322 dba
[root@node01 ~]# groupadd -g 54323 backupdba
[root@node01 ~]# groupadd -g 54324 oper
[root@node01 ~]# groupadd -g 54325 dgdba
[root@node01 ~]# groupadd -g 54326 kmdba
[root@node01 ~]# groupadd -g 54327 asmdba
[root@node01 ~]# groupadd -g 54328 asmoper
[root@node01 ~]# groupadd -g 54329 asmadmin
[root@node01 ~]# groupadd -g 54330 racdba

Oracleユーザとgridユーザを追加していきます。
パスワードも当然設定します。

[root@node01 ~]# useradd -u 1100 -g oinstall -G asmadmin,asmdba,asmoper -d /home/grid grid
[root@node01 ~]# useradd -u 1200 -g oinstall -G dba,oper,backupdba,dgdba,kmdba,asmdba,racdba -d /home/oracle oracle
[root@node01 ~]# passwd grid
[root@node01 ~]# passwd oracle

ディレクトリ作成

Oracleホーム、ベースになるディレクトリを作成していきます。
RAC構成の場合、上位の権限はgridユーザがOWNERになります。

[root@node01 ~]# mkdir -p /u01/app/grid
[root@node01 ~]# mkdir -p /u01/app/oracle
[root@node01 ~]# mkdir -p /u01/app/12.2.0/grid
[root@node01 ~]# chown -R grid:oinstall /u01
[root@node01 ~]# chown -R oracle:oinstall /u01/app/oracle
[root@node01 ~]# chmod -R 775 /u01

NTPサービスの停止

NTPは今回使用しないため、前提条件チェックに引っかかるchronyd.serviceを停止します。

[root@node01 ~]# systemctl stop chronyd.service
[root@node01 ~]# systemctl disable chronyd.service
Removed symlink /etc/systemd/system/multi-user.target.wants/chronyd.service.

hostsファイルにノード1とノード2の設定を追加する。

[root@node01 ~]# vi /etc/hosts
192.168.11.101 node01.oracle12c.com node01
192.168.11.102 node02.oracle12c.com  node02
192.168.11.111 node01-vip.oracle12c.com node01-vip
192.168.11.112 node02-vip.oracle12c.com node02-vip

共有ディスクの設定

ここで1度シャットダウンを実施します。
シャットダウン後、共有ディスクを仮想マシンへ追加していきます。

今回は、ASM冗長性を標準で組むのので以下の共有ディスクを用意。
40GBを2本、20GBを4本です。
ちなみに、12cR2からは最低78GBになる組み合わせが必要です。

起動後にディスクの認識を確認します。

[root@node01 ~]# lsblk
NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda           8:0    0   40G  0 disk 
├─sda1        8:1    0  512M  0 part /boot
└─sda2        8:2    0 39.5G  0 part 
  ├─ol-root 251:0    0   32G  0 lvm  /
  └─ol-swap 251:1    0  7.5G  0 lvm  [SWAP]
sdb           8:16   0   40G  0 disk 
sdc           8:32   0   40G  0 disk 
sdd           8:48   0   20G  0 disk 
sde           8:64   0   20G  0 disk 
sdf           8:80   0   20G  0 disk 
sdg           8:96   0   20G  0 disk 
sr0          11:0    1 1024M  0 rom  
[root@node01 ~]# 

ディスクが認識されていたらパーティションの作成と権限を変更しています。
sdbからzまでをgridユーザをOWNERにし、グループはasmadminにする。
fdiskコマンドは追加したデバイスの数だけ実施する。

[root@node01 ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xf471c066.

コマンド (m でヘルプ): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
パーティション番号 (1-4, default 1): 
最初 sector (2048-83886079, 初期値 2048): 
初期値 2048 を使います
Last sector, +sectors or +size{K,M,G} (2048-83886079, 初期値 83886079): 
初期値 83886079 を使います
Partition 1 of type Linux and of size 40 GiB is set

コマンド (m でヘルプ): w
パーティションテーブルは変更されました!

ioctl() を呼び出してパーティションテーブルを再読込みします。
ディスクを同期しています。
[root@node01 ~]# 

[root@node01 ~]# vi /etc/udev/rules.d/99-oracle.rules
KERNEL=="sd[b-z]1",ACTION=="add|change",OWNER="grid",GROUP="asmadmin",MODE="0660"

設定が完了したらリブートを実施します。
再起動後にディスクの権限を確認します。

[root@node01 ~]# ls -ltr /dev/sd*1
brw-rw---- 1 grid asmadmin 8, 17 10月  1 21:28 /dev/sdb1
brw-rw---- 1 root disk     8,  1 10月  1 21:28 /dev/sda1
brw-rw---- 1 grid asmadmin 8, 33 10月  1 21:28 /dev/sdc1
brw-rw---- 1 grid asmadmin 8, 65 10月  1 21:28 /dev/sde1
brw-rw---- 1 grid asmadmin 8, 49 10月  1 21:28 /dev/sdd1
brw-rw---- 1 grid asmadmin 8, 81 10月  1 21:28 /dev/sdf1
brw-rw---- 1 grid asmadmin 8, 97 10月  1 21:28 /dev/sdg1

sda以外が権限が変わっており正常に設定が完了しています。
この状態をクローンしノード2を作成していきます。
クローンの前に共有ディスクを一度外します。
クローン前の設定は一旦ここまでとします。

スポンサーリンク

フォローする

合わせて読んでみる

良ければ他の記事もどうぞ!



スポンサーリンク