|
文章内容有些长,要耐心看完!我会分断贴出!
在 Linux 和 iSCSI 上构建您自己的 Oracle RAC 10g 第 2 版集群
作者:Jeffrey Hunter
了解如何安装和配置一个成本低于 2,500 美元的 Oracle RAC 10g 第 2 版开发集群。
仅用于开发和测试;不支持生产部署!
2006 年 11 月更新
目录
1.简介
2.Oracle RAC 10g 概述
3.共享存储概述
4.iSCSI 技术
5.硬件及成本
6.安装 Linux 操作系统
7.网络配置
8.安装 Openfiler
9.使用 Openfiler 配置 iSCSI 卷
10.在 Oracle RAC 节点上配置 iSCSI 卷
11.创建“oracle”用户和目录
12.为 Oracle 配置 Linux 服务器
13.配置 hangcheck-timer 内核模块
14.为远程访问配置 RAC 节点
15.适用于这两个 Oracle RAC 节点的所有启动命令
16.安装和配置 Oracle 集群文件系统 (OCFS2)
17.安装和配置自动存储管理 (ASMLib 2.0)
18.下载 Oracle 10g RAC 软件
19.Oracle10g 第 2 版的安装前任务
20.安装 Oracle 10g 集群件软件
21.安装 Oracle 10g 数据库软件
22.安装 Oracle 10g 随附 CD 软件
23.创建 TNS 监听器进程
24.创建 Oracle 集群数据库
25.验证 TNS 联网文件
26.创建/更改表空间
27.验证 RAC 集群与数据库配置
28.启动/停止集群
29.透明的应用程序故障切换 - (TAF)
30.故障诊断
31.结论
32.致谢
1. 简介
熟悉 Oracle 真正应用集群 (RAC) 10g 技术的最有效方法之一是访问一个实际的 Oracle RAC 10g 集群。没有什么方法(包括容错、安全性、负载均衡和可伸缩性)比直接体验它们能够更好地理解其好处的了。
遗憾的是,对于很多商家而言,典型的生产级 RAC 配置所需的硬件投入使它们无法实现这一目标。一个小型的两节点集群可能需要 10,000 美元到 20,000 美元以上。该价格还不包括产品级 RAC 环境的核心(通常是一个存储区域网),其起价为 10,000 美元。
对于那些没有大笔现金但希望熟悉 Oracle RAC 10g 的人而言,本指南提供了一种低成本的替代方法来配置 Oracle RAC 10g 第 2 版系统,它使用现成的商用组件和可下载的软件,估计成本在 2,200 美元到 2,500 美元之间。该系统包括一个双节点集群(每个节点有一个处理器),这两个节点均运行 Linux(CentOS 4.4 或 Red Hat Enterprise Linux 4 Update 4)、Oracle10g 第 2 版、OCFS2 和 ASMLib 2.0。Oracle RAC 的所有共享磁盘存储将基于使用网络存储服务器(即 Openfiler 2.1 版)的 iSCSI。(当然,您还可以考虑在 VMware 虚拟机上构建一个虚拟集群,但是其体验将不尽相同!)
注意,本文的未来版本将基于 Oracle 的 Enterprise Linux,以取代 CentOS 和 Red Hat Linux。Enterprise Linux 将提供相同甚至更好的稳定性,并包含 OCFS2 和 ASMLib 软件程序包。要了解有关 Enterprise Linux 的更多信息,请访问 http://www.oracle.com/linux。尽管此配置尚未在 Enterprise Linux 上测试,但经过少量更改应该可以使用。
由 rPath Linux 驱动的 Openfiler 是一个基于浏览器的免费网络存储管理实用程序,可以在单一框架中提供基于文件的网络连接存储 (NAS) 和基于块的存储区域网 (SAN)。Openfiler 支持 CIFS、NFS、HTTP/DAV 和 FTP,但是,我们仅使用它的 iSCSI 功能为 Oracle10g RAC 需要的共享存储组件实现低成本的 SAN。我们通过它的 USB 2.0 接口将一个 500GB 的外置硬盘驱动器连接到网络存储服务器(在本文中,有时称为 Openfiler 服务器)。Openfiler 服务器将配置为使用该磁盘进行基于 iSCSI 的存储,并且将在 Oracle10g RAC 配置中用于存储 Oracle 集群件所需的共享文件以及所有 Oracle ASM 卷。
注意:本文仅供教学使用,因此设置很简单,仅用于演示想法和概念。例如,仅在一个物理磁盘上设置了磁盘镜像,而实际上,至少应该在两个物理驱动器上设置磁盘镜像。
这不是构建低成本 Oracle RAC 10g 系统的唯一方法。我曾使用过其他解决方案,这些解决方案将基于 SCSI 的实现用于共享存储组件。在某些情况下,SCSI 的成本会高于本文所描述的实现的成本,低成本 SCSI 配置将包括:
SCSI 控制器:两个 SCSI 控制器,单价从 20 美元 (Adaptec AHA-2940UW) 到 220 美元 (Adaptec 39320A-R)
内含 SCSI:70 美元(包含 1 个 Bay 3.5" U320 SCSI 插槽)
SCSI 硬盘驱动器:140 美元(36GB 15K 68p U320 SCSI 硬盘驱动器)
SCSI 电缆:两根 SCSI 电缆,每根 20 美元(3ft External HD68 到 HD68 U320 Cable)
注意,某些主板可能已包含内置的 SCSI 控制器。
先前的 Oracle9i 和 Oracle 10g 第 1 版指南使用原始分区在共享存储上存储文件,但此处我们将利用 Oracle 集群文件系统第 2 版 (OCFS2) 和 Oracle 自动存储管理 (ASM) 特性。对两个 Oracle RAC 节点进行如下配置:
Oracle 数据库文件
RAC 节点名
实例名
数据库名
$ORACLE_BASE
用于存储 DB 文件的文件系统/卷管理器
linux1
orcl1
orcl
/u01/app/oracle
ASM
linux2
orcl2
orcl
/u01/app/oracle
ASM
Oracle 集群件共享文件
文件类型
文件名
iSCSI 卷名
挂载点
文件系统
Oracle Cluster Registry
/u02/oradata/orcl/OCRFile
crs
/u02/oradata/orcl
OCFS2
CRS 表决磁盘
/u02/oradata/orcl/CSSFile
crs
/u02/oradata/orcl
OCFS2
注意,在 Oracle 数据库 10g 第 2 版 (10.2) 中,集群就绪服务(即 CRS)现在称作 Oracle 集群件。
自 Oracle 数据库 10g 第 2 版 (10.2) 开始,Oracle 集群件应安装在单独的 Oracle 集群件主目录中,该目录不是特定于版本的。这是对最佳灵活体系结构 (OFA) 规则所作的更改。您不应该将 Oracle 集群件安装到特定于版本的 Oracle 主目录挂载点(如 /u01/app/oracle/product/10.2.0/...),因为 Oracle 集群件的后续版本将覆盖同一路径中的 Oracle 集群件安装。此外,如果 Oracle 集群件 10g 第 2 版 (10.2) 检测到现有的 Oracle 集群就绪服务安装,就会覆盖同一路径中的现有安装。
Oracle 集群件软件将安装到构成该 RAC 集群的两个节点的 /u01/app/oracle/product/crs 中。但是,集群件软件需要将两个文件(“Oracle 集群注册表 (OCR)”文件和“表决磁盘”(Voting Disk) 文件)与集群中的这两个节点共享。这两个文件将安装到使用 Oracle 集群文件系统第 2 版 (OCFS2) 的共享存储中。可以(但 Oracle 不建议)使用 RAW 设备存储这些文件,但不能使用 ASM 存储这两个集群件文件。
Oracle 10g 第 2 版数据库软件将安装到构成该 RAC 集群的两个节点的单独 Oracle 主目录中,该目录名为 /u01/app/oracle/product/10.2.0/db_1。所有 Oracle 物理数据库文件(数据、联机重做日志、控制文件、归档重做日志)将安装到由自动存储管理 (ASM) 管理的共享卷上。(可以将 Oracle 数据库文件十分轻松地存储在 OCFS2 上。但是,使用 ASM 可以使本文更有趣!)
注意:本文仅作为绝对不可替代的文档。此处唯一的例外是供应商硬件的选择(即:计算机、网络设备和外置硬盘驱动器)。确保您从供应商处购买的硬件在 Red Hat Linux 4 上受支持。
如果您要寻找一个使用 FireWire 利用 RHEL 4 上的 Oracle RAC 10g 第 2 版的示例,请单击此处。
如果要寻找一个利用 RHEL 3 上的 Oracle RAC 10g 第 1 版的示例,请单击此处。
要获得以前发布的本指南的 Oracle9i RAC 版本,请单击此处。 |
|