亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1520 | 回復(fù): 0
打印 上一主題 下一主題

Oracle集群文件系統(tǒng)(OCFS2)用戶指南 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2011-12-21 08:44 |只看該作者 |倒序?yàn)g覽

http://oss.oracle.com/projects/ocfs2/

1:介紹

一個(gè)集群文件系統(tǒng)能使運(yùn)行在集群中所有節(jié)點(diǎn)并發(fā)的通過標(biāo)準(zhǔn)文件系統(tǒng)接口來訪問存儲設(shè)備。這給管理跨越整個(gè)集群的應(yīng)用系統(tǒng)帶來方便。
OCFS1問世于2002年10月,它是Oracle公司為了讓RAC用戶避免必須要與裸設(shè)備打交道而開發(fā)出來的。這個(gè)文件系統(tǒng)用來存放數(shù)據(jù)庫相關(guān)的文件,比如數(shù)據(jù)文件,控制文件,在線日志文件,歸檔日志文件等。
OCFS2是下一代的ORACLE集群文件系統(tǒng),它已經(jīng)被設(shè)計(jì)成為一種為通用的文件系統(tǒng),它不僅可以存放數(shù)據(jù)庫相關(guān)的文件,還可以存放oracle二進(jìn)制文件(指Oracle_home下的軟件文件-譯者注)和配置文件,從而使RAC的管理更加輕松。
2:安裝
OCFS2的發(fā)行版包括了2個(gè)安裝包,一個(gè)稱為核心模塊,另一個(gè)叫工具包。
核心模塊可以從以下鏈接下載:
http://oss.oracle.com/projects/ocfs2/files/
工具包可以從以下鏈接下載;
http://oss.oracle.com/projects/ocfs2-tools/files/
首先要下載相應(yīng)的軟件包.對于核心模塊,下載時(shí)要考慮它的發(fā)行號,適用的平臺,操作系統(tǒng)內(nèi)核版本以及內(nèi)核的類型(比如SMP,HUGEMEM,PSMP等),對于工具包,只要符合發(fā)行版本和平臺就可以了。
工具包又分為兩部分,ocfs2-tools命令行工具,ocfs2console圖形工具,用戶可以選擇不安裝這部分,但它的確可以令操作簡單化。
使用rpm命令來安裝軟件包,使用 rpm -install 進(jìn)行新的安裝或者使用rpm -upgrade來升級現(xiàn)有的軟件包。
3:配置
OCFS2有一個(gè)配置配置文件,路徑為/etc/ocfs2/cluster.conf.在這個(gè)文件中,你需要指定RAC中所有的節(jié)點(diǎn)信息,并且所有的節(jié)點(diǎn)上都應(yīng)該保留相同的一份。你可以動(dòng)態(tài)的增加新節(jié)點(diǎn)到RAC,或者改變一些節(jié)點(diǎn)的IP,名字,但這需要重起RAC以便于使更改生效。
我們強(qiáng)烈建議用戶使用OCFS2-CONSOLE工具來對RAC中所有的節(jié)點(diǎn)進(jìn)行配置。
運(yùn)行OCFS2-CONSOLE,進(jìn)入cluster菜單,選擇configure nodes.如果cluster已經(jīng)停止,控制臺會啟動(dòng)它,并且返回一個(gè)成功的信息。如果cluster.conf文件不存在,控制臺將會創(chuàng)健一個(gè)并給一個(gè)默認(rèn)的集群名字ocfs2.點(diǎn)擊add按鈕將節(jié)點(diǎn)添加到RAC中,每一個(gè)節(jié)點(diǎn)需要輸入節(jié)點(diǎn)名稱,ip和端口號?刂婆_從0-254順序的分配節(jié)點(diǎn)序號。一旦所有的節(jié)點(diǎn)都添加到RAC當(dāng)中,通過點(diǎn)擊菜單cluster里propagate configration項(xiàng),我們可以在任何一臺節(jié)點(diǎn)上將配置文件cluster.conf分發(fā)到所有節(jié)點(diǎn)相應(yīng)的位置上去,由于控制臺使用的是ssh協(xié)議來傳送文件,所以之前需要在所有節(jié)點(diǎn)上建好彼此的信任,以避免在文件傳遞過程中出現(xiàn)提出輸入口令的問題。
附錄A是一個(gè)cluster.conf的示例。
4:O2CB集群服務(wù)
OCFS2有自己的集群服務(wù)結(jié)構(gòu),叫做O2CB,它包括:
NM:節(jié)點(diǎn)管理器,它對cluster.conf文件中所有節(jié)點(diǎn)進(jìn)行的監(jiān)控。
HB:心跳服務(wù)(Heart beat service),他在節(jié)點(diǎn)離開或加入rac時(shí)提示up和down的消息。
TCP:控制節(jié)點(diǎn)間的通訊。
DLM:分布式鎖管理器,它持續(xù)跟蹤所有的鎖,鎖的所有者及狀態(tài)。
CONFIGFS:用戶配置文件系統(tǒng)驅(qū)動(dòng)空間,掛節(jié)點(diǎn)是/config
DLMFS:用戶空間和內(nèi)核空間DLM的接口。
所有這些cluster服務(wù)都已經(jīng)被打包在o2cb系統(tǒng)服務(wù)當(dāng)中,所有的操作,比如format,mount等,都需要cluster可用。在使用format等命令前,要先啟動(dòng)這些服務(wù)。
可以通過以下方式檢查所有服務(wù)的狀態(tài):
# /etc/init.d/o2cb status
Module “configfs”: Not loaded
Filesystem “configfs”: Not mounted
Module “ocfs2_nodemanager”: Not loaded
Module “ocfs2_dlm”: Not loaded
Module “ocfs2_dlmfs”: Not loaded
Filesystem “ocfs2_dlmfs”: Not mounted

通過以下方式啟動(dòng)所有服務(wù):
# /etc/init.d/o2cb load

Loading module “configfs”: OK

Mounting configfs filesystem at /config: OK

Loading module “ocfs2_nodemanager”: OK

Loading module “ocfs2_dlm”: OK

Loading module “ocfs2_dlmfs”: OK

Mounting ocfs2_dlmfs filesystem at /dlm: OK

通過以下方式使cluster ocfs2 啟動(dòng):
# /etc/init.d/o2cb online ocfs2

Starting cluster ocfs2: OK

通過以下方式停止cluster ocfs2:
# /etc/init.d/o2cb offline ocfs2

Cleaning heartbeat on ocfs2: OK

Stopping cluster ocfs2: OK

通過以下方式停止所有服務(wù):
# /etc/init.d/o2cb unload

Unmounting ocfs2_dlmfs filesystem:

Unloading module “ocfs2_dlmfs”: OK

Unmounting configfs filesystem: OK

Unloading module “configfs”: OK

通過以下方式使O2CB在系統(tǒng)啟動(dòng)時(shí)自動(dòng)被加載:
# /etc/init.d/o2cb configure

Configuring the O2CB driver.

This will configure the on-boot properties of the O2CB driver.

The following questions will determine whether the driver is loaded on

boot. The current values will be shown in brackets (’[]‘). Hitting

without typing an answer will keep that current value. Ctrl-C

will abort.

Load O2CB driver on boot (y/n) [n]: y

Cluster to start on boot (Enter “none” to clear) []: ocfs2

Writing O2CB configuration: oK

#

如果cluster已經(jīng)被配置為系統(tǒng)啟動(dòng)時(shí)加載,可以通過以下方式啟動(dòng)和停止它:
# /etc/init.d/o2cb load

Loading module “configfs”: OK

Mounting configfs filesystem at /config: OK

Loading module “ocfs2_nodemanager”: OK

Loading module “ocfs2_dlm”: OK

Loading module “ocfs2_dlmfs”: OK

Mounting ocfs2_dlmfs filesystem at /dlm: OK

5:格式化(format)
如果O2CB CLUSTER沒有啟動(dòng),首先啟動(dòng)它。格式化操作依賴于這些服務(wù)。同時(shí)它需要你確保所有的節(jié)點(diǎn)上都沒有掛載需要格式化的設(shè)備。
你可以使用圖形界面或者命令行來格式化分區(qū)。
如果你使用圖形界面,選擇task/Format來執(zhí)行操作,在下拉列表中選擇可用的設(shè)備。同時(shí)控制臺會盡可能的列出設(shè)備上存在的文件系統(tǒng)。
為要格式化的設(shè)備輸入一個(gè)標(biāo)簽,為了便于管理,我們建議你輸入一個(gè)標(biāo)簽,你仍然可以在格式化之后修改它。
為設(shè)備選擇一個(gè)集群單元大。╟luster size),它支持從4k到1M。如果這個(gè)設(shè)備用來存儲數(shù)據(jù)文件或者大的文件,比較合適的大小是128K。
選擇一個(gè)塊單元大。╞lock size),它支持從512字節(jié)到4k,由于OCFS2在格式化的時(shí)候并不分配一個(gè)靜態(tài)的inode 區(qū)域,所以4k是我們強(qiáng)烈推薦的大小,它幾乎適合所有的磁盤大小,換句話說,即時(shí)這些磁盤支持512字節(jié),但我們?nèi)匀徊唤ㄗh使用小的單元。
一旦格式化完畢,集群單元和塊單元都不可以再改變。
輸入一個(gè)節(jié)點(diǎn)槽位(node slots),這個(gè)數(shù)值決定了允許多少節(jié)點(diǎn)同時(shí)掛載這個(gè)設(shè)備。這個(gè)數(shù)值隨后可以修改,但只能增加,不能減小。
點(diǎn)擊ok按鈕執(zhí)行格式化操作。
要格式化一個(gè)3k塊大小,32k集群單元大小,包括4個(gè)節(jié)點(diǎn)的設(shè)備,在命令行下,可以通mkfs.ocfs2工具按如下操作完成:
# mkfs.ocfs2 -b 4K -C 32K -N 4 -L oracle_home /dev/sdf2

mkfs.ocfs2 1.2.0

Overwriting existing ocfs2 partition.

Proceed (y/N): y

Filesystem label=oracle_home

Block size=4096 (bits=12)

Cluster size=32768 (bits=15)

Volume size=21474820096 (655359 clusters) (5242872 blocks)

21 cluster groups (tail covers 10239 clusters, rest cover 32256 clusters)

Journal size=33554432

Initial number of node slots: 4

Creating bitmaps: done

Initializing superblock: done

Writing system files: done

Writing superblock: done

Writing lost+found: done

mkfs.ocfs2 successful

可以通過man 獲得mkfs.ocfs2的幫助信息。
6:掛載(mount)
啟動(dòng)o2cb服務(wù),mount操作需要這些服務(wù)的支持。
你可以使用圖形界面或者命令行工具:mount來完成操作。
如果使用圖形界面:運(yùn)行ocfs2console,選中一個(gè)設(shè)備,點(diǎn)擊mount按鈕,在彈出的對話框中輸入掛接點(diǎn),在可選項(xiàng)中輸入defaults,點(diǎn)擊ok.成功執(zhí)行者后,你在列表中會看到這個(gè)設(shè)備以及它的掛接點(diǎn)。
命令行下的操作:
# mount -t ocfs2 /dev/sdf2 /u01

要取消掛接(umount)一個(gè)設(shè)備,可以在控制臺上選中該設(shè)備點(diǎn)擊umount或者在命令行下輸入:

# umount /u01

Oracle數(shù)據(jù)庫用戶在將Ocfs2掛接點(diǎn)用來存放voting disk(CRS),cluster registry(OCR),數(shù)據(jù)文件,redo file,歸檔日志和控制文件時(shí),在mount操作時(shí),一定要使用’datavolume,nointr’ 的mount選項(xiàng)。
其中datavolume選項(xiàng)確保Oracle進(jìn)程在打開文件時(shí)使用o_direct標(biāo)記。nointr選項(xiàng)確保在這個(gè)設(shè)備上的讀寫不會被一些信號中斷。其他的設(shè)備,比如用于存放Oracle_Home文件的掛節(jié)點(diǎn)不需要使用這些選項(xiàng)。
通過以下命令來完成包含數(shù)據(jù)文件,voting disk等設(shè)備的掛載:
# mount -t ocfs2 -o datavolume,nointr /dev/sdf2 /u01

# mount

/dev/sdf2 on /u01 type ocfs2 (rw,datavolume,nointr)

如果你想在系統(tǒng)啟動(dòng)時(shí)掛接ocsf2,你需要保證o2bc和ocfs2服務(wù)使用chkconfig來配置o2bc在啟動(dòng)時(shí)被加載。并且要在/etc/fstab文件中加入如下項(xiàng):
# cat /etc/fstab

/dev/sdf2 /u01 ocfs2 _netdev,datavolume,nointr 0 0

/dev/sdg2 /orahome ocfs2 _netdev 0 0

_netdev選項(xiàng)對于mount ocfs2設(shè)備是必須的,這個(gè)選項(xiàng)說明設(shè)備需要在網(wǎng)絡(luò)啟動(dòng)時(shí)候掛載,在網(wǎng)絡(luò)關(guān)閉之后取消掛載(datavolume 和 nointr選項(xiàng)只在存儲數(shù)據(jù)文件等設(shè)備上需要)。
ocfs2的服務(wù)可以用來掛載和取消掛在ocfs2設(shè)備,它通常用來確保ocfs2 設(shè)備必須在網(wǎng)絡(luò)服務(wù)關(guān)閉之后再取消掛載。
# chkconfig –add ocfs2

ocfs2 0:off 1:off 2:on 3:on 4:off 5:on 6:off

# chkconfig –add o2cb

o2cb 0:off 1:off 2:on 3:on 4:off 5:on 6:off

#

#

# /etc/init.d/o2cb configure

Load O2CB driver on boot (y/n) [n]: y

Cluster to start on boot (Enter “none” to clear) []: ocfs2

Writing O2CB configuration: OK

可以通過標(biāo)簽來掛載設(shè)備:
# mount -L datafiles /u01

7:調(diào)整(tune)
調(diào)整的操作允許你增加節(jié)點(diǎn)數(shù)(增加并發(fā)訪問mount設(shè)備的節(jié)點(diǎn)數(shù)),修改設(shè)備的標(biāo)簽和修改。
tunefs.ocfs2命令行工具用來完整這個(gè)操作,你也可以使用控制臺來完成。
確保O2cb服務(wù)啟動(dòng),tune操作需要這些服務(wù)的支持。
如果是用控制臺增加節(jié)點(diǎn)數(shù),點(diǎn)擊:task,選擇Edit Node Slot count,在對話框中輸入你需要的節(jié)點(diǎn)數(shù),Ok完成。
通過以下命令從命令行完成上面的操作:
# tunefs.ocfs2 -N 8 /dev/sdf2

tunefs.ocfs2 1.2.0

Changing number of node slots from 4 to 8

Proceed (y/N): y

Added node slots

Wrote Superblock

在控制臺下修改一個(gè)設(shè)備的標(biāo)簽,點(diǎn)擊:task/Change Label,在對話框中輸入新的標(biāo)簽。
命令行下的操作:
# tunefs.ocfs2 -L “old datafiles” /dev/sdf2

tunefs.ocfs2 1.2.0

Changing volume label from datafiles to old datafiles

Proceed (y/N): y

Changed volume label
Wrote Superblock

通過man命令來獲得tunefs.ocfs2的完整幫助。

{$PageTitle=CDSL(Context Dependent Symbolic Links)}
9:CDSL(Context Dependent Symbolic Links)
在一個(gè)共享存儲的cluster環(huán)境,實(shí)例需要通過cluster來訪問一些文件和路徑,通常它可能只對這個(gè)路徑感興趣,比如在一個(gè)共享的ORACLE_HOME中,/admin/listener.ora對所有的節(jié)點(diǎn)都是相同的,但listener.ora的內(nèi)容卻各不相同,同理,對于一個(gè)共享的啟動(dòng)環(huán)境,/etc/對所有節(jié)點(diǎn)是相同的,但它里面的內(nèi)容卻各不相同。
對于所有的這些實(shí)例,這個(gè)文件或者路徑的內(nèi)容依賴于各個(gè)節(jié)點(diǎn)的主機(jī)名,而對于另外的一些實(shí)例,它可能會依賴于各個(gè)節(jié)點(diǎn)的架構(gòu)(x86,x86_64或者IA64),也可能會依賴于各個(gè)節(jié)點(diǎn)的節(jié)點(diǎn)號。
為了解決這些問題,OCFS2使用了一種稱為CDSL(Context Dependent Symbolic Links)的技術(shù),簡單的說,就是它使用軟連接來實(shí)現(xiàn)各個(gè)節(jié)點(diǎn)自己需要的文件內(nèi)容。
可以使用ocfs2cdsl命令行工具來建立這些軟鏈接:
建立一個(gè)節(jié)點(diǎn)需要的文件:
root@node32:admin/# ocfs2cdsl listener.ora
root@node32:admin/# ls –l listener.ora
lrwxrwxrwx 1 root root 50 Aug 8 11:41 listener.ora ->
../.cluster/hostname/{hostname}/10g/network/admin/listener.ora

編輯這個(gè)文件,然后保存,要從其他節(jié)點(diǎn)山訪問這個(gè)文件,先要在那個(gè)節(jié)點(diǎn)上創(chuàng)建CDSL,然后再像剛才那樣把正確的內(nèi)容寫進(jìn)去。

root@node31:admin/# ocfs2cdsl listener.ora

把一個(gè)已經(jīng)存在的文件變成cdsl文件:
root@node32:admin/# ocfs2cdsl –c sqlnet.ora

同理,在其他節(jié)點(diǎn)上也這樣做。
root@node31:admin/# ocfs2cdsl sqlnet.ora

這是你也許會發(fā)現(xiàn)對于所有的節(jié)點(diǎn)這個(gè)文件里面的內(nèi)容是一樣的,在任何一個(gè)檢點(diǎn)上對該文件的更新對于其他節(jié)點(diǎn)都是不可見的。
刪除一個(gè)CDSL鏈接:
root@node31:admin/# rm listener.ora

可以通過man來獲得ocfs2cdsl的完全幫助。

10:其他的一些工具

mounted.ocfs2
mounted.ocfs2是一個(gè)命令行下列出一個(gè)節(jié)點(diǎn)上所有OCFS2設(shè)備的工具。它掃描/proc/partitions文件中列出的所有分區(qū)。
列出一個(gè)節(jié)點(diǎn)上ocfs2分區(qū)信息:
# mounted.ocfs2 -d
Device FS UUID Label
/dev/sdb1 ocfs2 e70c75a0-a08c-480a-bf50-ebda4191da30 mm_v2_dbf1
/dev/sdb2 ocfs2 f49163e8-6288-43c4-a792-e9401fde45fa mm_v2_ctrl
/dev/sdb3 ocfs2 2d441be2-adb6-4c52-9e19-9a7c2c485dc4 mm_v2_dbf2
/dev/sdb5 ocfs2 8607eae9-8e4f-4495-84e8-8db0bc9da60c mm_v2_log1
/dev/sdb6 ocfs2 acfb7b7d-a277-4741-9791-620ea9b82670 mm_v2_log2
/dev/sdf1 ocfs2 84749537-df45-4a97-aa28-fad63760b674 9ihome
/dev/sdq1 ocfs2 dca2901b-241f-406e-80e9-85dd6b452d1a oracle_home
/dev/sdcf1 ocfs2 663764bd-1eed-4b3c-aa48-a98f0be0e574 10ghome
/dev/sdcf2 ocfs2 8e2d9c21-ef47-4fea-8ac5-2306cc60455e mm_v2_log3

列出所有節(jié)點(diǎn)上ocfs2分區(qū)信息:
# mounted.ocfs2 -f
Device FS Nodes
/dev/sdb1 ocfs2 node31, node32, node33, node34
/dev/sdb2 ocfs2 node31, node32, node33, node34
/dev/sdb3 ocfs2 node31, node32, node33, node34
/dev/sdb5 ocfs2 node31, node32, node33, node34
/dev/sdb6 ocfs2 node91, node90
/dev/sdf1 ocfs2 Not mounted
/dev/sdq1 ocfs2 node34, node35
/dev/sdcf1 ocfs2 Not mounted
/dev/sdcf2 ocfs2 Not mounted

注意:這個(gè)命令只列出起了o2bc服務(wù)的節(jié)點(diǎn)機(jī)的名字,對于那些沒
注意:這個(gè)命令只列出起了o2bc服務(wù)的節(jié)點(diǎn)機(jī)的名字,對于那些沒有起o2bc服務(wù)的節(jié)點(diǎn),將以節(jié)點(diǎn)號代替。

通過man命令獲得mounted.ocfs2的完全幫助。
附錄A
一個(gè)cluster.conf例子:
Sample /etc/ocfs2/cluster.conf
cluster:
node_count = 2
name = racdb
node:
ip_port = 7777
ip_address = 192.168.0.107
number = 7
name = node7
cluster = racdb
node:
ip_port = 7777
ip_address = 192.168.0.106
number = 6
name = node6
cluster = racdb

 

您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP