VMWARE上suse linux 10環境: Oracle 10g cluster+asm+rac安裝流程
1. 建立第一個vm,記憶體需要超過512M
2. 複製vm,修改vmx檔案
scsi1.sharedBus = "virtual"
disk.locking = "false"
3. 開啟後會發覺第二個vm的eth不再是從0開始
使用root使用者修改/etc/udev/rules.d/30-net_persistent_names.rules
確保各node上的private net、public net的網路介面一致
修改/etc/sysconfig/netwrok下的eth-*檔案完成ip修改
修改/etc/hosts配置如下三類ip的host名
node node-priv node-vip
4. 建立oracle使用者,屬於dba組,oracle使用者和dba組的id需在各個node上保持一致
5. 配置使用者等價
使用oracle使用者,在各個節點上執行如下命令
$ mkdir ~/.ssh
$ chmod 700 ~/.ssh
$ cd ~/.ssh
$ /usr/bin/ssh-keygen -t rsa
$ /usr/bin/ssh-keygen -t dsa
在某個node上執行如下命令,其中<node>替換為所有的具體node的名稱
ssh <node> cat /opt/oracle/.ssh/id_rsa.pub >> authorized_keys
ssh <node> cat /opt/oracle/.ssh/id_dsa.pub >> authorized_keys
最後將這個檔案複製到各個節點上去
scp authorized_keys <node>:/opt/oracle/.ssh/
ssh rac1 cat /opt/oracle/.ssh/id_rsa.pub >> authorized_keys
ssh rac1 cat /opt/oracle/.ssh/id_dsa.pub >> authorized_keys
ssh rac2 cat /opt/oracle/.ssh/id_rsa.pub >> authorized_keys
ssh rac2 cat /opt/oracle/.ssh/id_dsa.pub >> authorized_keys
scp authorized_keys rac2:/opt/oracle/.ssh/
如果要不輸入密碼就ssh訪問的話,可以使用如下命令
exec /usr/bin/ssh-agent $SHELL
/usr/bin/ssh-add
export DISPLAY=<node>:0.0
6. 配置時間同步
使用root使用者修改/etc/ntp.conf
同步源node
server 127.127.1.0
fudge 127.127.1.0 stratum 11
broadcastdelay 0.008
其餘node
server <ip> prefer
broadcastdelay 0.008
7. 配置核心引數
使用root使用者修改/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 = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
disable_cap_mlock = 1
使用root使用者執行/sbin/chkconfig boot.sysctl on,使得系統會在重起時讀取sysctl.conf
使用root使用者修改/etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
使用root使用者修改/etc/pam.d/login
session required pam_limits.so
使用root使用者修改/etc/profile.local
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
使用root使用者執行/sbin/lsmod檢視hangcheck-timer的module是否被裝載
如果沒有裝載,則使用root使用者執行insmod /lib/modules/<kernel_version>/kernel/drivers/char/hangcheck-timer.ko hangcheck_tick=30 hangcheck_margin=180
insmod /lib/modules/2.6.16.60-0.21-default/kernel/drivers/char/hangcheck-timer.ko hangcheck_tick=30 hangcheck_margin=180
其中<kernel_version>可以使用uname -r命令獲得
為保證每次都執行,需將這個命令加入/etc/init.d/boot.local
8. 配置raw裝置
使用root使用者修改/etc/raw,配置raw裝置的對映
類似如下格式
raw1:sdb1
使用root使用者修改/etc/udev/rules.d/50-udev-default.rules,確保raw裝置的許可權GROUP="dba", MODE="640", OWNER="oracle"
將其中包含KENREL=="raw"的記錄修改為如下
KERNEL=="raw[0-9]*", SUBSYSTEM=="raw", NAME="raw/%k", GROUP="dba", MODE="640", OWNER="oracle"
使用命令"/etc/init.d/raw start"即時生效
/sbin/chkconfig raw on
9. 後續需要將安裝zip包ftp上傳到某個node上
ftp有會出現不能登入等問題,主要修改如下
使用root使用者修改/etc/vsftpd.conf
找到 # write_enable=YES,去掉註釋
找到 #local_enable=YES 去掉註釋;
找到 #listen=YES 去掉註釋;
增加 listen_port=21 這一行配置。
找到 #local_umask=022 去掉註釋
使用root使用者修改/etc/ftpusers
註釋需要登入的使用者
10. 使用root安裝cvuqdisk
rpm -iv cvuqdisk-1.0.1-1.rpm
11. 使用root安裝ASM lib相關rpm
oracleasm-<kernel_version>-2.0.4-1.SLE10.i586.rpm
oracleasm-support-2.1.3-1.SLE10.i386.rpm
oracleasmlib-2.0.4-1.sle10.i386.rpm
12. 安裝完畢後,使用root使用者在各個node上執行/etc/init.d/oracleasm configure,按如下配置
Configuring the Oracle ASM library driver.
This will configure the on-boot properties of the Oracle ASM library
driver. The following questions will determine whether the driver is
loaded on boot and what permissions it will have. The current values
will be shown in brackets ('[]'). Hitting <ENTER> without typing an
answer will keep that current value. Ctrl-C will abort.
Default user to own the driver interface []: oracle
Default group to own the driver interface []: dba
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]: y
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: done
Scanning the system for Oracle ASMLib disks: done
13. 使用root使用者在某個node上執行建立ASM磁碟,對於votedisk和ocr不需要建立ASM,而是作為raw裝置處理
/etc/init.d/oracleasm createdisk <VOL1> </dev/sdb1>
建立完畢後,可以使用/etc/init.d/oracleasm listdisks檢視建立後的情況
14. 對於其他node,使用root使用者執行/etc/init.d/oracleasm scandisks
並使用/etc/init.d/oracleasm listdisks檢視是否各node一致
15 安裝時需要先建立好目錄避免安裝過程中無許可權報錯
16. 安裝過程中vipca會報錯,需要升級到10.2.0.4以上,升級時,先升級CRS,後Oracle,通過安裝中輸入的目錄加以區分
17. vipca配置時需要設定預設閘道器,否則會報錯