Chinaunix首页 | 论坛 | 博客
  • 博客访问: 10170643
  • 博文数量: 1669
  • 博客积分: 16831
  • 博客等级: 上将
  • 技术积分: 12594
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-25 07:23
个人简介

柔中带刚,刚中带柔,淫荡中富含柔和,刚猛中荡漾风骚,无坚不摧,无孔不入!

文章分类

全部博文(1669)

文章存档

2023年(4)

2022年(1)

2021年(10)

2020年(24)

2019年(4)

2018年(19)

2017年(66)

2016年(60)

2015年(49)

2014年(201)

2013年(221)

2012年(638)

2011年(372)

分类:

2011-12-15 14:21:44

Red Hat Cluster Suite集群 Oracle数据库  

2010-07-23 02:46:13|  分类: HA |  标签: |字号 

目录

一、概述

二、硬件平台搭建

三、 As4 update2安装配置

四、Oracle 10g安装配置

五、 Cluster Suite安装配置

六、系统切换测试

七、常用命令

一、概述

黄岛市开发区财政局本次采用两台IBM X3850-8664服务器、一台DS4300盘阵,平台采用 As4 update2 结合cluster suite,部署Oracle 10g数据库,形成高可用性数据集群系统。

操作系统: 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盘阵。安装过程中最好把连接节点和盘阵的光纤拔下;或者如果不拔下光纤,安装过程中分区时只选择本机硬盘,不要选择盘阵。

每个节点的两个网卡分别通过标准网线连接交换机。

注:1、由于rhel-4-u2-rhcs-emt64尚不支持RSA II远程管理卡,而IBM还没有提供RSA II for As4 update2以上版本的驱动,为避免因驱动不匹配系统出现不可预知错误,因此使用IPMI 作为本次cluster的fence设备。IPMI也是经过Redhat认证的(参见Redhat官方文档 Cluster Suite: Configuring and Managing a Cluster 其中3.6. Configuring Fence Devices)

2、本次安装前硬件供应商已经做好DS400盘阵的配置,因此在本文档盘阵配置不再叙述。

三、 As4 update2安装配置

本次为服务器全新安装,并且服务器为oracle专用。

(一)、根据IBM提供的驱动制造驱动软盘。

(二)、配置BMC

分别在两台主机系统引导时根据屏幕提示选择[F1],进入BIOS,选择ADVANCE CONFIG,设置BMC,配置IPMI NETWORk,地址分别为192.168.17.11和192.168.17.12。

(三)、安装 As4 update2

安装时在系统引导时根据屏幕提示按[F11]进入BIOS,设置为从光盘引导。

请按照以下步骤安装 As4 update2:

1.使用第一张 CD 启动服务器。

2.启动屏幕上出现时在底部显示 boot:

o输入linux dd

o安装程序扫描硬件,短暂显示 闪屏,然后开始显示一系列屏幕提示。

o根据提示插入USB软驱并插入驱动软盘,选择通过sda(软盘)安装驱动

3.选择语言

o接受默认值。

4.配置键盘

o接受默认值。

5.欢迎屏幕

o单击 下一步。

6.配置鼠标

o接受默认值。

7.安装类型

o选择 Custom。

8.设置磁盘分区

o 此处接受默认值,只是更改swap分区大小,设为4G

(警告:对磁盘进行错误分区是删除硬盘上所有内容的最可靠、最快捷的方法之一。如果不确定如何分区,请先停下来,找人帮帮您,否则您将冒丢失数据的危险!)

9.配置启动加载程序

o接受默认值。

10.配置网络

o此时显示系统识别出一个网卡,利用规划好的地址配置。

o使用静态 IP 地址配置数据库服务器。单击 Edit。

o出现一个弹出窗口。取消选中 Configure using DHCP 复选框,并输入服务器的 IP 地址10.28.36.11和网络掩码255.255.255.0。确保选中 Activate on boot,然后单击 OK。

o在 Hostname 框中,选择 manually 并输入主机名kfqcz1……集群依次类推。

o在 Miscellaneous Settings 框中,输入网关10.28.36.1,DNS为空。

11.配置防火墙

o不配置防火墙。选择 No firewall。

12.其他语言支持

o接受默认值。

13.选择时区

o选择适合您区域的时间设置。

14.设置 Root 口令

o输入 root 的口令hd2001,并再次输入以进行确认。

15.选择程序包组

o选择必须的安装组件或者最下面选择全选。

o单击 下一步 继续操作。

16.准备安装

o单击 下一步。

17.安装程序包

o软件将被复制到硬盘并被安装。根据提示更改光盘,然后在安装完成时单击 下一步。

18.配置图形界面 (X)

o接受默认值

19.配置监视器

o如果安装程序正确识别了您的监视器,则接受默认值。否则,从列表中选择一个兼容的监视器。

20.定制图形配置

o接受默认值。

21.恭喜

o从系统中取出安装介质,然后单击 下一步。

22.系统自动重新启动并显示一个新的欢迎屏幕。

o单击下一步。

o根据提示更换光盘。第五张光盘安装完成后提示插入地一张光盘,安装完成后重新启动机器。

23.许可协议

o阅读许可协议。如果同意其中的条款,则选择 Yes, I agree to the License Agreement 并单击下一步。

24.日期和时间

o设置日期和时间。

25.用户帐户

o此时不要为 oracle 创建帐户。本部分稍后将介绍如何创建 oracle 帐户。

26. Network

o由于本次不能连接到internet网络,此时可不必激活。

27.其他 CD

o单击下一步。

28.完成设置

o单击下一步。

29.出现一个图形登录屏幕。

30.恭喜!您的 Linux 软件现已安装完毕。

(四)、配置网络(在两台机器上分别执行)

#rpm -ivh tg3-3.62b-1.src.rpm

#cd /usr/src/

#rpmbuild -bb SPECS/tg3.spec

#rpm -ivh RPMS//tg3-..rpm

#cd /lib/modules//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 经认证可以在不需要更新的情况下运行 AS 4.0的基本版本。

(如果安装完以后,把两台服务器和盘阵用光纤连接)以下步骤在两台机器上分别执行:

(一)、安装oracle前设置

1、安装oracle所需的软件包

如果安装时选择完全安装,则另外只需要安装以下两个软件包:

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权限执行两个脚本,这时打开一个新的终端窗口,分别执行这两个脚本

例如: #cd /u01/app/oracle/product/10.2.0/db_1/

#./root.sh

不要同时运行这些脚本。 等一个脚本结束后再启动另一个.

5.Configuration Results — 检查结果并单击 Exit。

6.安装结束

(三)、配置数据库

在两台机器上分别安装oracle数据库软件以后,需要在其中一台上安装oracle数据库实例,然后把配置文件拷贝到第二台机器上。我们在kfqcz1上创建oracle实例。

首先以root权限挂载盘阵:

#mount /dev/sdb3 /u02

切换到oracle用户,执行dbca命令:

#dbca

图形界面起来以后:

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 监听、启动数据库,测试是否正常。

五、 Cluster Suite安装配置

(一)、安装 Cluster Suite rpm包(以下命令在两台机器上分别执行):

把 Cluster Suite安装光盘放入光驱,光盘加载后依此执行以下命令:

#mkdir /tmp/RPMS/

#cp /media/cdrom//RPMS/*.rpm  /tmp/RPMS/

#cd /media/cdrom//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

阅读(1471) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~