目录
一、概述
二、硬件平台搭建
三、Redhat As4 update2安装配置
四、Oracle 10g安装配置
五、Red Hat Cluster Suite安装配置
六、系统切换测试
七、常用命令
一、概述
黄岛市开发区财政局本次采用两台IBM X3850-8664服务器、一台DS4300盘阵,平台采用Redhat As4 update2 结合cluster suite,部署Oracle 10g数据库,形成高可用性数据集群系统。
操作系统:Redhat As4 update2_emt64
集群软件:rhel-4-u2-rhcs-emt64
数据库软件:Oracle 10g for linux64
服务器:IBM X3850-8664
盘阵:DS4300
二、硬件平台
IBM X3850-8664服务器为双网卡,Intelligent Platform Management Interface (IPMI)使用第一块网卡的端口,RSA II远程管理卡单独一个网络端口。
每个节点通过光纤连接DS4300盘阵。安装过程中最好把连接节点和盘阵的光纤拔下;或者形界面 (X)
o接受默认值
19.配置监视器
o形配置
o接受默认值。
21.恭喜
o从系统中取出安装介质,然后单击 下一步。
22.系统自动重新启动并显示一个新的欢迎屏幕。
o单击下一步。
o根据提示更换光盘。第五张光盘安装完成后提示插入地一张光盘,安装完成后重新启动机器。
23.许可协议
o阅读许可协议。形登录屏幕。
30.恭喜!您的 Linux 软件现已安装完毕。
(四)、配置网络(在两台机器上分别执行)
#rpm -ivh tg3-3.62b-1.src.rpm
#cd /usr/src/redhat
#rpmbuild -bb SPECS/tg3.spec
#rpm -ivh RPMS/<arch>/tg3-<version>.<arch>.rpm
#cd /lib/modules/<kernel_version>/kernel/drivers/net/
#modprobe tg3
#system-config-network
通过图形界面添加新安装的网卡,并配置地址为192.168.7.21
第二台机器配置新添加网卡地址为192.168.7.22
配置/etc/hosts文件:
#vi /etc/hosts
127.0.0.1 localhost.localdomain localhost
10.28.36.11 kfqcz1
10.28.36.12 kfqcz2
10.28.36.13 share-kfqcz
192.168.7.11 fence-kfqcz1
192.168.7.12 fence-kfqcz2
其中10.28.36.13为cluster浮动ip地址,192.168.7.11、192.168.7.12为fence地址
(五)、配置磁盘阵列
1、(在kfqcz1上执行)磁盘阵列划分为四个分区,两个500M分区做为cluster投票分区,剩余磁盘空间分为两个分区,一个用来存放 oracle数据库,另一个用来备份数据文件,其中只把第三分区格式化为ext3格式,1、2分区做为裸设备未格式化,4分区由于未备份数据,也未格式 化。
步骤为:
#fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel.Changes will remain in memory only,
until you decide to write them.After that, of course, the previous
content won't be recoverable.
The number of cylinders for this disk is set to 4427.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help):p
Disk /dev/sdb:255 heads, 63 sectors, 4427 cylinders
Units = cylinders of 16065 * 512 bytes
Device Boot Start End Blocks Id System
Command (m for help):n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-4427, default 1):1
Using default value 1
Last cylinder or size or sizeM or sizeK (1-4427, default 4427): 500M
Using value 1000
Command (m for help):n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (1-4427, default 1001):
Using value 500
Last cylinder or size or sizeM or sizeK (1-4427, default 4427): 500M
Using value 1000
Command (m for help):n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (1-4427, default 1001):3001
Using value 3001
Last cylinder or size or sizeM or sizeK (1-4427, default 4427):4427
Using default value 4427
Command (m for help):n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 4
First cylinder (1-4427, default 1001):3001
Using value 3001
Last cylinder or size or sizeM or sizeK (1-4427, default 4427):4427
Using default value 4427
Command (m for help):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING:If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
#mke2fs -j -b 4096 /dev/sdb3
2、绑定raw设备(在两台机器上执行)
#vi /etc/sysconfig/rawdevice
/dev/raw/raw1 /dev/sdb1
/dev/raw/raw2 /dev/sdb2
#/etc/rc.d/init.d/rawdevice restart
四、Oracle 10g安装配置 Oracle 10g 经认证可以在不需要更新的情况下运行 Redhat AS 4.0的基本版本。 (如果安装完redhat以后,把两台服务器和盘阵用光纤连接)以下步骤在两台机器上分别执行: (一)、安装oracle前设置 1、安装oracle所需的软件包 如果安装redhat时选择完全安装,则另外只需要安装以下两个软件包: binutils-2.15.92.0.2-15.0.0.0.2.x86_64.rpm compat-oracle-rhel4-1.0-5.i386.rpm 以root帐号使用以下命令安装: rpm -Uvh binutils-2.15.92.0.2-15.0.0.0.2.x86_64.rpm rpm -Uvh compat-oracle-rhel4-1.0-5.i386.rpm 2、建立帐号 # groupadd oinstall # groupadd dba # useradd -p oracle -g oinstall -G dba oracle 3、设置系统参数 #vi /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.rmem_max = 262144 net.core.wmem_default = 262144 net.core.wmem_max = 262144 #/sbin/sysctl -p 4、性能设置 #vi /etc/security/limits.conf oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 # vi /etc/pam.d/login session required /lib/security/pam_limits.so session required pam_limits.so #vi /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 5、设置目录 5.1 base directory mkdir -p /u01/app/oracle chown -R oracle:oinstall /u01/app/oracle/ chmod -R 775 /u01/app/oracle/ 5.2 data directory mkdir /u02/oradata chown oracle:oinstall /u02/oradata/ chmod 775 /u02/oradata/ 6、设置环境变量 # .bashrc # User specific aliases and functions # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1 export ORACLE_SID=kfqcz export ORACLE_TERM=xterm export LD_ASSUME_KERNEL=2.4.1 export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:/sbin export PATH 然后执行 $ source .bash_profile 使环境变量生效 |
(二)、以图形界面安装oracle软件
把oracle软件从光盘拷贝到硬盘,执行以下命令
# cp 10201_database_linux_x86_64.cpio.gz /home/oracle
# cd /home/oracle
# gzip –d 10201_database_linux_x86_64.cpio.gz
# cpio –idmv < 10201_database_linux_x86_64.cpio.gz
# xhost
# su oracle
$ cd /home/oracle/database
$ ./runInstall
启动图形界面
1.Welcome — 单击 Next
2.Specify File Locations — 确认默认值后继续
3.Select Installation Type — Enterprise Edition
4.选择数据库配置 — 选择“Do not create a starter database”。 (我们将在一个单独的步骤中使用数据库配置助手 (DBCA) 来创建数据库。)在安装到最后的时候又会弹出对话框,提示执行以root权限执行两个脚本,这时打开一个新的终端窗口,分别执行这两个脚本
例形界面起来以后:
1.Welcome — 选择“Oracle Real Application Clusters database”
2.Operations — 创建数据库
3.Node Selection — 单击 Select All
4.Database Templates — 选择general
5.Database Identification — 全局数据库名:kfqcz;SID: kfqcz
6.Management Options — 利用 Enterprise Manager 配置数据库;使用数据库控制进行数据库管理
7.Database Credentials — 为所有帐户使用相同的口令;输入口令并再次确认
8.Storage Options — 文件系统 (filesystem)
9.Database File Locations — 更改路径为/u02/oradata
10.Recovery Configuration — 更改路径为/u02/oradata/recover file
11.Database Content — 示例模式
12.Initialization Parameters — 内存:把默认的40%改为60%;字符集的设定选择ZHSGBK16和UTF8。
13.Database Storage — 单击 Next
14.Create Options — 选择“Create Database”
15.Summary — 检查总结信息并单击 OK
oracle数据库实例创建以后用netmgr命令创建监听和服务。
现在在kfqcz1上oracle数据库已经能运行,把spfile文件和监听文件拷贝到kfqcz2上面(注意更改相关ip地址),然后在 kfqcz1上停掉oracle服务,umount /u02,然后在kfqcz2上mount /dev/sdb3到/u02,启动oracle 监听、启动数据库,测试是否正常。
五、Red Hat Cluster Suite安装配置
(一)、安装Red Hat Cluster Suite rpm包(以下命令在两台机器上分别执行):
把Red Hat Cluster Suite安装光盘放入光驱,光盘加载后依此执行以下命令:
#mkdir /tmp/RPMS/ #cp /media/cdrom/RedHat/RPMS/*.rpm /tmp/RPMS/ #cd /media/cdrom/RedHat/RPMS/*.rpm /tmp/RPMS/ #rm -rf dlm-kernel* #rm -rf cman-kernel #rpm -ivh *.rpm (二)、在kfqcz1上配置cluster服务 1、启动cluster配置工具 #system-config-cluster 2、命名cluster 3、添加fence设备 选择fence设备类型为ipmi,两个fence设备的地址为192.168.17.11、 192.168.17.12,登录帐号和密码分别是USERID、PASSW0RD。 4、添加两个节点,并且把fence设备为节点添加上 5、保存配置,配置文件保存为/etc/cluster/cluster.conf。把改文件拷贝到kfqcz2上相同的 目录下 6、启动服务 #service ccsd start #service cman start #service fenced start #service rgmanager start 7、此时查看kfqcz2已经加入cluster 8、设置failover domain,把两节点加上 9、添加resource。这里添加了三个resource,一个mount :/dev/sdb3 /u02,一个ip :10.28.36.13,一个script 这时候需要把写好的脚本oracle_script放到/sbin/中,注意添加可执行权限 10、添加cluster service 把resource中的三个资源以share的形式添加到cluster service中,注意添加完保存后运行/sbin/ip addr list 查看浮动地址 11、把配置文件在两节点同步 至此,cluster 配置完毕 六、系统切换测试 切换测试主要模拟两种情况: 1、运行oracle服务的主机断电,另一主机能否顺利接管服务。这里是通过直接切断kfqcz1的电源进行测试 2、运行oracle服务的主机网络断,另一主机能否把该主机fence掉并接管服务。这里是通过直接拔掉kfqcz1的 网线进行测试 经测试,oracle服务在两种情况下都能稳定的进行切换,达到了预期的效果。 七、常用命令 1、系统密码帐号 root/hd2001 oracle/oracle oracle数据库所有密码为oracle 2、系统日志 cat /var/log/message 或者可以用 dmesg命令查看 3、数据库相关 启动:/sbin/oracle_script start 关闭:/sbin/oracle_script stop 重启:/sbin/oracle_script restart 查看状态:/sbin/oracle_script status 用sqlplus登录: $sqlplus /nolog >conn / as sysdba 查看监听状态:lsnrctl status 启动监听:lsnrctl start 关闭监听:lsnrctl stop 10.54.170.00.0.0.0 255.255.255.128 u 0 0 0 eth0 10.0.0.0 0.0.0.0 169.254.0.0 0.0.0.0 255.255. 0.0.0.0 10.0.0.1 0.0.0.0 ug 0 0 0 eth1 1、查看系统负载,红色 id表示系统cpu 空闲比例,wa表示等待比例 #top top - 18:14:53 up 85 days, 8:34, 8 users, load average: 0.26, 0.33, 0.34 Tasks: 243 total, 1 running, 242 sleeping, 0 stopped, 0 zombie Cpu(s): 0.5% us, 0.3% sy, 0.0% ni, 99.1% id, 0.0% wa, 0.0% hi, 0.0% si Mem: 4037144k total, 4007468k used, 29676k free, 70816k buffers Swap: 5111800k total, 41504k used, 5070296k free, 3125632k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME COMMAND 7182 oracle 16 0 1593m 81m 76m S 0.7 2.1 0:05.30 oracle 8072 root 16 0 6276 1128 768 R 0.7 0.0 0:00.03 top 3524 root 15 0 19572 7044 1588 S 0.3 0.2 33:33.32 hald 1 root 16 0 4748 548 456 S 0.0 0.0 0:24.65 init 2 root RT 0 0 0 0 S 0.0 0.0 0:02.39 migration/0 3 root 34 19 0 0 0 S 0.0 0.0 0:00.04 ksoftirqd/0 2、查看系统I/O #vmstat 2 (表示每隔2秒查看一次系统i/o情况) procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa 0 0 41492 50812 63632 3105420 0 0 0 4 0 1 1 0 99 0 0 0 41492 50684 63632 3105420 0 0 0 118 1042 325 0 0 100 0 0 0 41492 50684 63632 3105420 0 0 0 90 1022 302 0 0 100 0 0 0 41492 50684 63632 3105420 0 0 0 74 1023 323 0 0 100 0 0 0 41492 50684 63632 3105420 0 0 0 16 1016 294 0 0 100 0 0 0 41492 50684 63632 3105420 0 0 0 32 1019 302 0 0 100 0 3、查看系统每硬盘I/O #iostat 3 Linux 2.6.9-22.ELsmp (kfqcz1) 05/20/2008 avg-cpu: %user %nice %sys %iowait %idle 0.70 0.00 0.13 0.02 99.15 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 0.85 1.32 19.85 9769881 146367888 sdb 1.84 0.96 50.23 7093638 370351360 sdc 0.00 0.00 0.00 1984 0 |