天天看點

RHEL4As RAC手記

RHEL4As RAC手記

兩台機器情況如下

主機1

Hostname:RHEL4-1

OS software RHEL4 As(2.6.9.0.78 ELSmp版本)

memory:1024MB

主機2

Hostname:RHEL4-2

沒有拿到生産環境,是以自己先在VMWare做了,既然是VMware就取巧了一下,安裝好一個虛拟機,然後把準備工作都做好在clone一個到另一個系統下了。

第一步

首先當然是安裝RHEL了,手頭上有RHEL4 32bit的,就用這個了。

第二步

設定網絡配置了,需要兩個網卡,配置public,private和virtual ip叻

這回就更仔細的研究了,沒有按别人的步驟來,隻添加了pri host和vip host。

real ip是192.168.2.206

hostname rhel4-1

192.168.3.206 rhel4-priv1

192.168.2.106 rhel4-vip1

vip必須和public在同一個Ip段上,vip是提供給oracle使用的,這裡我們兩個網卡分别對應着public和private

第三步

建立使用者

#groupadd dba

#groupadd oinstall

#useradd -g oinstall -G dba oracle

#passwd oracle

#mkdir /u01/app/oracle/product/10.2.0.2/db_1 -p

mkdir -p /u01/app/oracle

chown -R oracle:oinstall /u01/app/oracle

chmod -R 775 /u01/app/oracle

第四步

修改相關參數檔案

環境變量參數/home/oracle/.bash_profile

export PATH

unset USERNAME

export LANG=zh_CN.EUC

ORACLE_BASE=/u01/app/oracle;

export ORACLE_BASE

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0.2/db_1

export ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0.2/crs_1

export ORACLE_SID=rac1

#export NLS_LANG=’SIMPLIFIED CHINESE_CHINA.ZHS16GBK’

PATH=$ORACLE_HOME/bin:/bin:/sbin:/usr/bin:/usr/ccs/bin:/usr/local/bin:/usr/ucb;

LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/network/lib:$ORACLE_HOME/oracm/lib:/usr/local/lib:/usr/lib;

export LD_LIBRARY_PATH

export ORACLE_TERM=xterm

export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib

export THREADS_FLAG=native

export TEMP=/tmp

export TMPDIR=/tmp

配置核心參數/etc/sysctl.conf

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

net.core.rmem_default=262144

net.core.wmem_default=262144

net.core.rmem_max=262144

net.core.wmem_max=262144

#/sbin/sysctl -p 生效

Linux 帳戶可以使用的程序數量和打開檔案的數量設定限制 /etc/security/limits.conf和/etc/pam.d/login

/etc/security/limits.conf

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

/etc/pam.d/login

session required /lib/security/pam_limits.so

Disable SELinux /etc/grub.conf

在行kernel /vmlinuz-2.6.9-42.ELlargesmp ro root=LABEL=/ rhgb quiet後

加入

selinux=0

第五步

加載hangcheck-timer

在/etc/rc.d/rc.local加入

modprobe hangcheck-timer hangcheck_tick=30 hangcheck_margin=180

第六步

等效性配置,用oracle使用者登入

#ssh-keygen -t rsa

一路回車

#ssh-keygen -t dsa

在`/.ssh下将生成密匙和公匙

#cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

其他機器安裝好以後運作

ssh oracle@rhel4-2 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

第七步安裝ocfs2和asm

下載下傳ocfs2和asm軟體,我這裡的RAC規劃是ocfs2加上Asm,asm相對于row device來說便于管理,相對于ocfs2來說性能更好,至于使用ocfs2主要是做crs和voting disk部分的storage,資料檔案以及其他資料庫的檔案都在asm上做storage。

現在前用uname -r檢視自己的核心。找和自己核心一緻的版本下載下傳。

我這裡下載下傳的分别是

ocfs2

ocfs2-2.6.9-78.ELsmp-1.2.9-1.el4.i686.rpm

ocfs2console-1.2.7-1.el4.i386.rpm

ocfs2-tools-1.2.7-1.el4.i386.rpm

asm

oracleasm-2.6.9-78.ELsmp-2.0.5-1.el4.i686.rpm

oracleasmlib-2.0.4-1.el4.i386.rpm

oracleasm-support-2.1.3-1.el4.i386.rpm

安裝

# rpm ‐ivh ocfs2-tools-1.2.7-1.el4.i386.rpm

# rpm ‐ivh ocfs2-2.6.9-78.ELsmp-1.2.9-1.el4.i686.rpm

# rpm ‐ivh oracleasm-support-2.1.3-1.el4.i386.rpm

# rpm ‐ivh oracleasmlib-2.0.4-1.el4.i386.rpm

# rpm ‐ivh oracleasm-2.6.9-78.ELsmp-2.0.5-1.el4.i686.rpm

第八步

格式化硬碟

加一塊硬碟10g上去,/dev/sdb

fdisk /dev/sdb

分兩個區,一個作為ocfs管理的需要給600M就夠了,crs和voting disk的,剩下的都個asm了

ocfs2的部署

#ocfs2console

<1>在OCFS2控制台中,點選“TASKS”下的“FORAMT”菜單對要格式化為OCFS2檔案系統的分區進行格式化,在UI下,選擇/dev/sdb1,

<2>在OCFS2控制台程式中選擇“Cluster”菜單下的“Configure Nodes”菜單,配置使用OCFS2檔案系統的叢集節點,在“Node Configuration”對話框中,點選“Add”來連接配接叢集節點

<3>Apply, 如果有錯,删除/etc/ocfs2目錄下的 cluster.conf檔案,重新用UI建立。

最後的cluster.conf是

node:

ip_port = 7777

ip_address = 192.168.3.202

number = 0

name = rhel4-2

cluster = ocfs2

ip_address = 192.168.3.201

number = 1

name = rhel4-1

cluster:

node_count = 2

name = ocfs2

<4>在節點1 上利用界面上傳配置檔案到其它節點

# ocfs2console

然後選擇 Cluster ‐> Propagate Configuration

所有都finished, 然後File‐>Quit

在節點2上可以看到一樣的cluster.conf

<5>配置O2CB

[root@rhel4-2 crs]# /etc/init.d/o2cb enable

Writing O2CB configuration: OK

O2CB cluster ocfs2 already online

[root@rhel4-1 crs]# /etc/init.d/o2cb enable

Starting O2CB cluster ocfs2: OK

[root@rhel4-2 crs]# /etc/init.d/o2cb configure

Specify heartbeat dead threshold (>=7) [31]:61 根據自己的需要來設定

同樣在節點2 上配置。

[root@rhel4-2 crs]# /etc/init.d/o2cb start

[root@rhel4-2 crs]# /etc/init.d/o2cb status

Module “configfs”: Loaded

Filesystem “configfs”: Mounted

Module “ocfs2_nodemanager”: Loaded

Module “ocfs2_dlm”: Loaded

Module “ocfs2_dlmfs”: Loaded

Filesystem “ocfs2_dlmfs”: Mounted

Checking O2CB cluster ocfs2: Online

Heartbeat dead threshold: 61

Network idle timeout: 30000

Network keepalive delay: 2000

Network reconnect delay: 2000

Checking O2CB heartbeat: Active

加載OCFS2 檔案系統

mount -t ocfs2 -o _netdev,datavolume,nointr /dev/sdb1 /crsdata

如果有問題先執行一下

mkfs.ocfs2 -b 4k -C 32k -N 4 -L ora_home /dev/sdb1 –fs-feature-level=max-compat

asm的部署

檢視volumn

#/etc/init.d/oracleasm listdisks

配置

#/etc/init.d/oracleasm configure

Default user to own the driver interface []: oracle

Default group to own the driver interface []: dba

其他預設值

據檔案建立 ASM 磁盤

# /etc/init.d/oracleasm createdisk oradata /dev/sdb2 — oradata disk volumn

ORADATA

#/etc/init.d/oracleasm status

Checking if ASM is loaded: yes

Checking if /dev/oracleasm is mounted: yes

#mount

oracleasmfs on /dev/oracleasm type oracleasmfs (rw)

接下來就可以安裝clusterware了

常見故障排除

安裝時到最後需要root執行CRS_HOME/root.sh,這時有錯誤

PROT-1: Failed to initialize ocrconfig

Failed to upgrade Oracle Cluster Registry configuration

原因是沒有mount好,對于ocfs2來說,可以store,datafile,control file,redo file,archive file和crs和voting disk,但是必須在mount時加上datavolume

#mount -t ocfs2 -o datavolume /dev/sdb1 /crsdata

在執行root.sh時有時會挂在那裡,是crs和voting disk沒有format好,重新format好,然後裝載

#ocfs2conosole

先umount,然後format,接着用上面的方式裝載。

在root.sh install deamon是有時會告知如下資訊

Running vipca(silent) for configuring nodeapps

The given interface(s), “eth2″ is not public. Public interfaces should be used to

configure virtual IPs.

重新用$CRS_HOME/bin/vipca執行,設定vip即可。

注意

有時RAC安裝失敗了,一定要把crs删除幹淨了才能安裝,要不有些怪異的錯誤,ocr和votingdisk要格式化以後再重新mount才行。

本文轉自 jxwpx 51CTO部落格,原文連結:http://blog.51cto.com/jxwpx/208578,如需轉載請自行聯系原作者

繼續閱讀