Steve Hight
CHW 戰(zhàn)略技術(shù)項(xiàng)目總監(jiān)
Steve Hight 從事 IT 行業(yè)已有 15 年的時(shí)間,最近 10 年主要專門從事醫(yī)療保健行業(yè)。在 CHW 工作的 7 年里,他幾乎在每個(gè)基礎(chǔ)設(shè)施相關(guān)的團(tuán)隊(duì)都從事過容量方面的工作,其中包括 UNIX、Windows® 和存儲(chǔ),這是一件極具激情的事情。此外,Steve 還有過作為 DBA 和 JavaTM 編程人員的經(jīng)驗(yàn),這也進(jìn)一步豐富了其技術(shù)背景。作為戰(zhàn)略技術(shù)項(xiàng)目主管,Steve 將其豐富的經(jīng)驗(yàn)用于監(jiān)督與 IT 相關(guān)的各種項(xiàng)目,包括系統(tǒng)和存儲(chǔ)基礎(chǔ)結(jié)構(gòu)、應(yīng)用程序和數(shù)據(jù)中心設(shè)計(jì)。
有關(guān) Oracle® 存儲(chǔ)體系結(jié)構(gòu)的這第三部系列的最后部分著眼于 Oracle on NetApp 的現(xiàn)實(shí)部署。以前的文章主要側(cè)重于 NetApp 工程如何優(yōu)化使用 Oracle on NFS 和 Oracle on FC SAN。
當(dāng)有人聯(lián)系我寫一篇 Oracle on NetApp 文章時(shí),他們特意要求我講述我們運(yùn)行 Oracle on SAN 和 NAS 的情況。我告訴他們,"真為你們感到遺憾,你們竟然還在想著 SAN 或 NAS 方面的事。你們應(yīng)該談?wù)劷y(tǒng)一存儲(chǔ)以及使用哪一種協(xié)議可以最好地滿足每個(gè)客戶需求或應(yīng)用程序需求。SAN 和 NAS 術(shù)語早就都同"totally tubular"和"awesome"一起消失了。(它們都消失了,難道不是嗎?)
在 Catholic Healthcare West (CHW),我們至少有 117 個(gè)運(yùn)行約 150 個(gè)應(yīng)用程序的 Oracle 數(shù)據(jù)庫實(shí)例,其中的應(yīng)用程序都是由附帶 NFS、光纖通道和 iSCSI 協(xié)議的 55 個(gè) NetApp 存儲(chǔ)系統(tǒng)提供支持??傮w算來,我們有 750TB 以上的存儲(chǔ)。由于事實(shí)上有許多 IT 公司、應(yīng)用程序供應(yīng)商和 DBA 仍在考慮協(xié)議的條款,本文著重說明如下:
l 我們?nèi)绾螢槟硞€(gè)給定的應(yīng)用程序選擇要使用的存儲(chǔ)協(xié)議
l Oracle 統(tǒng)一存儲(chǔ)的優(yōu)勢
l 各種協(xié)議的優(yōu)缺點(diǎn)
坦白說,我們認(rèn)為第二章最有意思。統(tǒng)一存儲(chǔ)和獨(dú)有的 NetApp 數(shù)據(jù)管理工具的結(jié)合為我們管理 Oracle 環(huán)境提供了極大的能量。
選擇存儲(chǔ)協(xié)議
我們對 Oracle on NetApp 的第一次了解是許多年前從 NFS 開始的。如果 NetApp 說我們可以通過 NFS 運(yùn)行 Oracle,我們的第一反應(yīng)肯定會(huì)笑,因?yàn)樵诋?dāng)時(shí)那是一種非常異類的方式(有人現(xiàn)在還是這么認(rèn)為);回到那時(shí),我們的 DBA 仍然需要原始磁盤。當(dāng)我們從 SAP 轉(zhuǎn)換為 Lawson Financials 時(shí),我們也從傳統(tǒng)的存儲(chǔ)轉(zhuǎn)變?yōu)?NFS。Lawson 派出了一組工程師來保證配置。他們原來計(jì)劃要呆 5 天時(shí)間。第一天過后他們非常滿意;他們驗(yàn)證了解決方案之后就離開了。
從那時(shí)起,我們添加了許多其它 Oracle 應(yīng)用程序,在 NFS、光纖通道和 iSCSI 上都分別添加了一些。
此時(shí),您可能會(huì)想為什么我們會(huì)將不止一個(gè)存儲(chǔ)協(xié)議與 Oracle 一起使用以及我們?nèi)绾芜x擇要使用的協(xié)議。
現(xiàn)在,我們 Oracle 的標(biāo)準(zhǔn)是采用 NetApp 存儲(chǔ)的 Linux®,我們沒有區(qū)分光纖通道、iSCSI 或 NFS。我們現(xiàn)在很有信心運(yùn)行它。當(dāng)我們部署新的應(yīng)用程序時(shí),我們會(huì)依據(jù)提供應(yīng)用程序的供應(yīng)商最支持的那個(gè)協(xié)議作出決策。我們總是設(shè)法知道供應(yīng)商最適合或者在其上面部署最多的那個(gè)協(xié)議。有些供應(yīng)商只喜歡光纖通道,而其他供應(yīng)商則愿意甚至更想要支持其它選項(xiàng)。例如,我們的 Emageon 圖像存檔和通信系統(tǒng) (PACS) 指定使用 NFS。
以前,我們首選的選項(xiàng)不是 iSCSI,就是 NFS,是由于它們的協(xié)議彈性以及高昂的每個(gè)端口成本和光纖通道管理成本,但現(xiàn)在director級交換機(jī)上的每個(gè)端口成本已不再是問題(它不再明顯有別于 FC 和 IP),因此供應(yīng)商支持就成為我們考慮的首要標(biāo)準(zhǔn)。
要考慮的其它因素
如果您想要為您的 Oracle 環(huán)境決定選擇哪個(gè)協(xié)議,則除了供應(yīng)商支持,您可能還需要考慮其它一些因素。
l 與網(wǎng)絡(luò)小組的關(guān)系:我曾與一些人交談過,他們除了光纖通道之外其它任何因素都不想考慮,這是因?yàn)樗麄儧]有控制 IP 網(wǎng)絡(luò)或者與其網(wǎng)絡(luò)小組沒有保持良好的關(guān)系。如果您是這種情況,您可能發(fā)現(xiàn)長期使用 FC SAN 很有利。反過來說,F(xiàn)C SAN 明顯存在管理復(fù)雜性問題。如果您的公司不具備處理此事的技能,則采用駕馭標(biāo)準(zhǔn)以太網(wǎng)產(chǎn)品的協(xié)議可能是很好的選擇。
l 您的 DBA 需要什么?讓我們來看看,好的 Oracle DBA 很難找到,并且許多 Oracle DBA 都帶有好的和不好的強(qiáng)烈個(gè)性。有些人會(huì)比其他人更喜歡 NFS 和 iSCSI。若非逼不得已,我不會(huì)強(qiáng)迫好的 DBA 使用他/她不滿意的協(xié)議。
許多人始終認(rèn)為性能是一種因素,但坦白講我還沒有發(fā)現(xiàn)性能與任何協(xié)議問題有關(guān)。無論您選擇哪一個(gè),冗余都是很不錯(cuò)的選項(xiàng)。我們發(fā)現(xiàn) iSCSI 比 FC 要多 2% 至 4% 的開銷。這很可能是由于我們使用軟件啟動(dòng)端而非 iSCSI HBA 所致,任何情況都不足以構(gòu)成動(dòng)搖我們對協(xié)議的決心和我們提到過的其它事情的差距。
對我們而言,能夠使用我們所需的任何存儲(chǔ)協(xié)議的優(yōu)勢要大于任何特殊協(xié)議的相對優(yōu)勢或劣勢。閱讀了解我們在 Oracle 環(huán)境中使用統(tǒng)一存儲(chǔ)的詳細(xì)信息。
我們的 Oracle 環(huán)境中的統(tǒng)一存儲(chǔ)
多年來,CHW 通過采購不斷地發(fā)展。最后,我們形成了一個(gè)具有多種風(fēng)格的 UNIX® 和無數(shù)應(yīng)用程序的極具多樣性的環(huán)境。作為一個(gè)非盈利組織,我們必須基于嚴(yán)格的標(biāo)準(zhǔn)以降低成本和復(fù)雜性;我們主要采用技術(shù)并部署屬于開源、基于開放式標(biāo)準(zhǔn)或處于最低高度模塊化的解決方案。這不僅僅是對我們采用那些可將我們困在一種專有的單個(gè)供應(yīng)商解決方案的技術(shù)的很好的業(yè)務(wù)實(shí)踐。作為組織,我們經(jīng)常尋找創(chuàng)新且先進(jìn)的技術(shù)幫助改善病人護(hù)理,同時(shí)減少費(fèi)用。
這就是統(tǒng)一存儲(chǔ)很好的適應(yīng)我們環(huán)境的原因。我們可以部署存儲(chǔ)系統(tǒng)并確保我們將不需要其它部署來滿足我們未來的協(xié)議需求。NetApp 的統(tǒng)一存儲(chǔ)解決方案可滿足我們的 Oracle 需求并為我們提供可在所有協(xié)議上運(yùn)行的功能組合以簡化我們的 Oracle 數(shù)據(jù)管理。
Oracle 的要求
毫不夸張地說,我們的 Oracle 環(huán)境由在 Oracle 8.0.5 一直到 Oracle11gTM 和 Oracle RAC 所有產(chǎn)品上運(yùn)行的數(shù)百個(gè)應(yīng)用程序構(gòu)成。許多人將其 Oracle 應(yīng)用程序稱為"關(guān)鍵應(yīng)用程序",但當(dāng)您加入醫(yī)療保健時(shí),您就會(huì)覺得某些應(yīng)用程序確實(shí)至關(guān)重要。我們 Oracle 基礎(chǔ)設(shè)施的最關(guān)鍵要求就是可靠性,其次是可支持性。對我們而言,最重要的就是能夠不需要依靠外部各方就可以支持我們室內(nèi)的存儲(chǔ)。我們不喜歡這里成為玻璃房和大型 SAN,因?yàn)槲覀儾幌胍揽客馕飵椭覀儚氖鹿手谢謴?fù)。
CHW 正在使用的幾種應(yīng)用程序。
應(yīng)用程序 |
協(xié)議 |
目的 |
FC SAN |
Lawson 財(cái)務(wù)部 |
醫(yī)院財(cái)務(wù)部 |
Emageon |
NFS |
PACS 應(yīng)用程序(放射圖像) |
每個(gè)存儲(chǔ)系統(tǒng)具有多個(gè)應(yīng)用程序
目前,CHW 有 50 多個(gè) Oracle 服務(wù)器(包括 3 個(gè) RAC 群集)連接 NetApp 存儲(chǔ)。我們的 55 NetApp 存儲(chǔ)系統(tǒng)共有 750TB 數(shù)據(jù)符合 Oracle 和其它關(guān)鍵存儲(chǔ)對我們設(shè)備的需求。這些存儲(chǔ)系統(tǒng)易于配置和管理;由于我們擁有大量的系統(tǒng),我們可以使用 NetApp Operations Manager 監(jiān)視一切活動(dòng)。
我們的大多數(shù)存儲(chǔ)系統(tǒng)都在為多個(gè)應(yīng)用程序服務(wù)。除了 Emageon PACS 應(yīng)用程序(放射圖像)和 Exchange 之外,我們?nèi)魏我粋€(gè) NetApp 系統(tǒng)都不是專門服務(wù)于某個(gè)單個(gè)應(yīng)用程序。有了 NetApp 靈活卷(FlexVol® 卷),我們就不必?fù)?dān)心出現(xiàn)熱磁盤或磁盤競爭的情況。更高效地分配工作負(fù)荷。
將來我們將利用 FlexShareTM 把承載多個(gè)負(fù)載的存儲(chǔ)系統(tǒng)上的工作負(fù)荷區(qū)分優(yōu)先次序。我們至今還未使用它是因?yàn)?DBA 和其它組織都尚未意識(shí)到此功能的存在。一旦知曉后,我們就應(yīng)讓大多數(shù)優(yōu)質(zhì)應(yīng)用程序應(yīng)用此技術(shù)。
存儲(chǔ)系統(tǒng)可靠性和快速恢復(fù)
借助 Oracle on NetApp,我們知道存儲(chǔ)具有可靠性,并且在數(shù)據(jù)庫發(fā)生損壞時(shí),我們還可以輕松恢復(fù)存儲(chǔ),完全無需任何外界協(xié)助。在損壞發(fā)生前,我們經(jīng)??梢允褂?SnapRestore® 恢復(fù)到指定的時(shí)間點(diǎn),并且?guī)追昼妰?nèi)就可以重新運(yùn)行。此外,我們可以使用 FlexClone® 輕松地克隆數(shù)據(jù)庫用于測試/開發(fā)或其他目的,而不會(huì)消耗兩倍的存儲(chǔ)資源。
簡化配置
我們還可以使用 NetApp FlexVol 技術(shù)簡化配置。幾乎每次新 Oracle 應(yīng)用程序(或其它項(xiàng)目)進(jìn)入聯(lián)機(jī)狀態(tài)時(shí),我們都可以看到數(shù)據(jù)庫對存儲(chǔ)量的要求都是非常巨大的。借助靈活卷,我們可以將卷與不同的性能和容量需求相結(jié)合,并根據(jù)要求變化對它們進(jìn)行增長和壓縮。我們可以跟客戶說:"當(dāng)然,我愿意提供 1TB 用于您的新項(xiàng)目。"我們知道如果不是真正需要空間,它是不會(huì)減少的。簡化配置可讓我們過量地配置存儲(chǔ)并在必要時(shí)不斷的增加卷,而不是預(yù)先分配大型卷并在第一年都從不使用它。
數(shù)據(jù)保護(hù)
依我的經(jīng)驗(yàn),大多數(shù)數(shù)據(jù)保護(hù)軟件都很難配置,也很難掌握,并且往往不會(huì)像廣告中所說的那么有效;最終會(huì)成為板凳軟件。這就是我們?nèi)绱艘蕾?SnapshotTM 和 SnapRestore 的原因。它簡單,大家都使用并且都相信它。
我們的數(shù)據(jù)保護(hù)環(huán)境正利用 NetApp Snapshot 副本的組合用于滿足快速恢復(fù)需求和定期磁帶備份。既然可以利用 SnapManager® for Oracle,我們正考慮將其用于新的部署。我們都知道,從腳本解決方案轉(zhuǎn)移至產(chǎn)品解決方案需要一定時(shí)間,但我們也看到了使用產(chǎn)品簡化這個(gè)過程以及供應(yīng)商提供支持的優(yōu)點(diǎn)。我們將最終實(shí)現(xiàn)這個(gè)目標(biāo)!
了解協(xié)議差別
雖然我們對協(xié)議不太了解,但顯然還是有些差別。正如我之前所說,這些差別還不足以讓我們從其它協(xié)議中選出一個(gè),但如果您要為您的環(huán)境選擇一個(gè)存儲(chǔ)協(xié)議那就應(yīng)該考慮這些差別了。
我們喜歡 NFS 的易管理性和無狀態(tài)性。我們可以通過 NFS 一分鐘內(nèi)恢復(fù) 200GB 的數(shù)據(jù)庫,這是難能可貴的。另一方面,支持 NFS 的供應(yīng)商較少,并且 NFS 在各個(gè)平臺(tái)上也不太一致。不同的客戶端平臺(tái)所要求的修補(bǔ)程序集和優(yōu)化性能調(diào)整也各不一樣。我們都也知道供應(yīng)商修補(bǔ)程序會(huì)破壞 NFS。好像 direct NFS 會(huì)解決許多這樣的問題。我們正在就未來部署積極研究這種技術(shù)。
從另一方面看,光纖通道也是主流協(xié)議。它在平臺(tái)之間更加一致、預(yù)測性更強(qiáng)、也更可靠。盡管借助 NetApp,它未發(fā)生很大改變。但是,它確實(shí)增加了管理復(fù)雜性并且配置速度也有一些減慢。
iSCSI 協(xié)議易于管理并且和 NFS 一樣富有彈性。我們有時(shí)為了執(zhí)行維護(hù)采取手動(dòng)故障轉(zhuǎn)移 iSCSI 上的 NetApp 集群的方法,并且正如 NFS 一樣,我們沒有出現(xiàn)任何停機(jī)情況。由于故障轉(zhuǎn)移速度要非常快,所以應(yīng)用程序未曾中斷。我對碰到不熟悉 iSCSI 的人一直都感到很驚訝,就好像 iSCSI 還沒有成為主流。我們已經(jīng)調(diào)查了使用基于硬件的 iSCSI initiator 的情況,但最后決定停止使用它們,因?yàn)?CPU 的最低開銷不符合卡的成本和其它管理開銷。
按協(xié)議列出的一些優(yōu)點(diǎn)和缺點(diǎn)。
|
優(yōu)點(diǎn) |
缺點(diǎn) |
FC SAN |
l 可靠和可預(yù)測性 l 廣泛的行業(yè)支持 |
l 管理復(fù)雜 l 配置較慢 |
NFS |
l 便于進(jìn)行日常管理 l 無狀態(tài) l 卓越的恢復(fù) |
l 修補(bǔ)和調(diào)整* l 各個(gè)平臺(tái)上的都不同 l 支持的應(yīng)用程序供應(yīng)商較少 |
iSCSI |
l 免費(fèi) l 無狀態(tài) l 每個(gè)端口的成本低 |
l 不如 FC 的支持廣泛 l 2% 至 4% 的 CPU 開銷 |
*借助 Oracle11g 中的 direct NFS 客戶端,不再需要修補(bǔ)和調(diào)整。
充分利用存儲(chǔ)
在 CHW,我們更愿意購買更少量且更大型的存儲(chǔ)系統(tǒng)并將各個(gè)系統(tǒng)用于多個(gè)工作負(fù)荷。除非您有特別的性能要求,否則沒有任何理由將存儲(chǔ)系統(tǒng)專門分配給一個(gè)應(yīng)用程序。目前的存儲(chǔ)系統(tǒng)在大多數(shù)情況下都完全可以快速服務(wù)多個(gè)應(yīng)用程序。通過選擇支持 NFS、CIFS、光纖通道和 iSCSI 的統(tǒng)一存儲(chǔ),我們可以使用最適合應(yīng)用程序的協(xié)議并在必要時(shí)作出更改。統(tǒng)一存儲(chǔ)可以讓我們靈活地滿足 Oracle 和其它關(guān)鍵應(yīng)用程序的所有存儲(chǔ)要求。