|
什么是RAC& ?7 r+ @2 {1 h, H9 f
# c1 r6 b H, J8 k5 I T( \6 z9 h( _
传说中的RAC,做为我们本文的主角,其全称是Real Application Cluster,官方的中译是真正应用集群,听起来和叫起来都很别扭是不是,我们还是就叫它RAC吧。RAC并非是个新技术,其前身叫OPS(Oracle Parallel Server),从9i开始才改名叫RAC(回头有空俺再写篇blog跟大伙数道数道rac的前世今生),这属于oracle的老把戏了,它的不少产品都是边做边改名,比如Oracle Data Guard在9i之前叫做Standby,对于这些知识大家不妨也多了解了解,如果你的就业经历足够长,俺觉着你就一定能理解俺所说的,有时候资深并不代表着技术有多牛,而是人家待的年头够久,对于历史那是相当熟悉啊,所以资深也能理解成资历的嘛,对于后来者而言怎样快速获得资历呢,黑黑,你也去熟悉历史呗(en,俺晓得,俺又跑题鸟)~~~
" z& J' p" C7 _ A( r, s1 z( |' X+ t, C9 u+ S
RAC不仅仅是个组件,就我理解,它更应该被称之为一种体系,因为它不是单单由某项特性组成,而是一堆特性应用的集合。该体系实现了多个实例同时访问和管理同一数据库,多个实例可以存在于不同节点,也可以在相同的节点上(从提升性能的角度来看,并不推荐这样),彼此通过内网连接交换数据,并且能够自动平衡负载,如果其中某个节点发生故障,RAC能够通过后台的监控进程将连接自动切换到另外一个或多个节点上,从而实现应用的无缝切换,对实例的高可用提供保护。
- @5 o' Y, z/ w5 T* Z9 x4 ` k2 y2 b8 O' P @
因此,我们也能够得出结论,RAC保护的是实例,而并非数据,这点一定要明确(对数据进行冗余的特性在oracle中叫Data guard,详细请见:一步一步学Dataguard)。
* k# u8 A3 q8 l6 ~% Z6 i/ G$ d) z/ C
什么是CRS( }/ S# N" \6 C( n* c! K
3 p4 K& Y/ ^ ^. s& {5 I Cluster Ready Service是oracle集群件的软件架构,提到架构我们一般都会下意识觉着,哇这东西真牛啊,事实也确实如此,CRS可以说是RAC环境稳定运行的基础,但平常呢你又感受不到它的存在。做为框架,它有多个组成部分,包括一系列的进程和一堆的服务,后面我们将会一一了解,总之它不是一个在战斗,它不是一个人。。。1 [5 ^0 E6 @ [0 v0 Y9 C4 v
0 K8 D, L, a X" r- k+ @4 c0 q% y! K 什么是CVU
4 x* @8 T% \; d" C5 W) B! V7 A) @; K6 C- R/ q% T9 o
全称Cluster Verification Utility,CVU是oracle专门为RAC提供的一个检查工具,目的是期望在安装前就你的安装环境进行检查,看看软硬件环境是否已就绪,该工具功能非常强大,通过搭配不同参数可以检查安装RAC所需环境的方方面面(后文详绪)。不过,该工具所显示的检查结果也仅供参考,具体情况需要具体分析,并非说其检查报错,你就不能成功配置RAC了。另外由于oracle自身的一些bug等原因,可能也会造成CVU给出错误的信息。& y0 q" f2 ^& |. m7 F5 v
# K0 K ^+ u- ~, n2 w( J% N
什么是OUI7 E4 @! ^4 n8 I8 V
+ ~. l' J1 l" _, K- D8 {# J
说起OUI大家应该都不会陌生,其全称是Oracle Universal Installer,就是图形化的安装助手,这个就不多说什么了。! V5 V: `9 M4 ]3 J3 ^( T0 B
( c' @) W% \- [, b2 R 什么是ASM
5 a- ~. O/ ~5 j9 q# N5 \, ^; D
9 e4 L5 E7 `3 f' i# }3 l 做为oracle当前主推的一种存储特性,在oracle官方文档中处处都能看到Oracle recommends using ASM之类的字眼,其实这并不奇怪,就像刚生完孩子的母亲抱着孩子出门遛弯,逢人就想跟人说:看看我家孩子多漂亮的心理是一样的,毕竟是人家自己的东西,如果它自己都不推广还能靠谁去推广呢,与何况这里头还有着更重要的经济利益和长远战略,oracle不仅建议你存储用asm,它还有n多别的建议,比如管理用em,存储用asm,表空间管理用local,undo管理用auto等等。扯远了,回到主题,啥是ASM呢,其全称是:Automatic Storage Management。可以把它理解成oracle自己设计的,用软件实现的,用于存储的黑匣子。( u- m3 |6 i# P
3 O8 b! |( d* @6 @# k' _ 什么是OMF
$ V$ s$ Q/ L% X! U7 m
- R# x: ?5 ~* S! D: u; l Oracle Manage File 的简写,一般在创建数据库-指定数据文件路径时你会见到它的身影。一旦你选择了该种路径方式,在创建表空间,控制文件,日志文件时就不需要指定位置和文件名了,Oracle会根据一些初始化参数的设置自动分配和命名,其通常与ASM搭配使用。
& f0 u9 k7 W" P i3 @ G) V: t9 v! ]! ?' q/ H* T
什么是OCR
, v3 [ y" a$ U3 u3 \8 [9 l
3 U2 X% w4 @% @- s Oracle Cluster Registry用于保存集群和数据库的配置信息,做为CRS的关键组件,,因此,OCR必须保存于共享磁盘(但不能是ASM,asm毕竟只是一个软件实现的集群文件系统,在读取集群信息时,可能连asm实例都还没启动呢),大概需要100M左右的空间。& c f- @2 G! J
* u# y v% k: j- r" C- y, @
什么是Voting Disk
: E2 u3 G6 p5 K
: ^; I- @- \4 d) x! a' c8 r3 S 用于保存集群中各节点信息并确保各节点的一至性状态,同样也必须保存于共享磁盘(也不能是asm),大概需要20M左右的空间。9 o+ T% t& ^. P3 C, u- _" D% r( F
% |( p$ r% }7 ], ^# a( B5 y 什么是VIP
/ f4 S6 k5 y* t8 p0 D3 W
M1 T. G6 K6 i$ D% H 即虚拟IP,Oracle推荐客户端连接时通过指定的虚拟IP连接,这也是Oracle10g新推出的一个特性。其本质目的是为了实现应用的无停顿(虽然目前还是有点小问题,但离目标已经非常接近)。用户连接虚IP,这个IP并非绑定于网卡,而是由oracle进程管理,一旦某个用户连接的虚IP所在实例宕机,oracle会自动将该IP映射到状态正常的实例,这样就不会影响到用户对数据库的访问,也无须用户修改应用。 |
|