iT邦幫忙

0

虛擬化規劃

對小弟的理解是, 只要原本是有實體伺服器的服務端, "幾乎" 皆可用 virtualize 的方式做資源跟硬體分配即可達到不比用原本實體機器上的效能差; 今天小弟在某內部會議中有長官提到, Oracle database 的部份不建議使用, 最好使用實體機, 但以目前技術來講不管是 server 還是 storage 的部份做虛擬化不論在效能或是 HA 部分都有一定的成熟度跟表現, 試問為何 DB 及資料儲存方面不適合, 更或者有其他應用伺服器不建議使用?

看更多先前的討論...收起先前的討論...
主要差異在於『大量I/O讀寫對虛擬機器非常損耗效能』

當然有人覺得不會,如果vm實體機器的IOPS破千,『或許』這樣的差異就不大

最簡單的方法就是針對某個Guest持續讀寫大量資料,即可發現其他Guest的效能大幅降低了

除非效能設定部份把每一台Guest限定好

簡單說:
1.Host等級夠高、夠強
2.效能設定好
那麼就沒有我說的問題(大量讀寫io將拉低VM效能)
即便如此,個人依舊不建議DB主機、File Server放到VM裡
smilecola iT邦新手 4 級 ‧ 2012-12-28 11:20:20 檢舉
照這樣說 HOST 的等級跟效能夠高夠好表示硬體規格還是直接影響 IOPS...刻意用一台機器還要切 LUN 出來這樣用...聽起來感覺是有了表面上的經濟效益~但事實上還是得 base on the hardware level ...是否以理解來說~即便利用其他 software solution 來幫助 DB 虛擬化的架構還是非常有限吧? 因為大部份還是卡在硬體效能會決定 IO 問題...
是的

主要好處在於:環境簡化、省電、容易遷移備援等
jameslwg iT邦新手 4 級 ‧ 2015-05-20 12:08:24 檢舉
我公司資料庫同server 比較大, 現在用有9TB的ahsay, 你可以參考一下:
http://www.ahsay.com/jsp/tc/home/
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
14
James
iT邦大師 6 級 ‧ 2012-12-26 08:08:23
最佳解答

一台實體伺服器上只有一個 DB VM 的虛擬化,還是有提高可用性的好處,雖然會浪費虛擬化軟體授權,但是比起做DB CLUSTER還是比較便宜,而且維護相對容易,至於IO問題,可以利用實體硬碟對應或直接在虛擬機裡掛載ISCSI,就可以解決。

看更多先前的回應...收起先前的回應...
外獅佬 iT邦大師 1 級 ‧ 2012-12-26 10:01:00 檢舉

bruck提到:
提高可用性的好處

那也得看是不是有這樣的需求...
有些資料庫,並沒有這麼即時的需求,
停個幾天沒有什麼關係,甚至也看到過不少資料庫一個禮拜只需要備份一次
這樣的案例,就沒有高可用性的需求...
一切都要評估需求的啦

u8526425 iT邦大師 1 級 ‧ 2012-12-26 11:12:36 檢舉

這種方式的盲點在於只能處理Hardware failure問題 (還不含storage)
OS與DB本身出錯仍然無能為力
花這種錢的效益有待考慮

James iT邦大師 6 級 ‧ 2012-12-26 12:32:36 檢舉

會耗很多資源的資料庫主機,大多數都會有不能中斷的需求,差別在於可以容忍的中斷時間,DB CLUSTER一樣是共用STORAGE,如果STORAGE出問題一樣沒救。

James iT邦大師 6 級 ‧ 2012-12-26 12:42:40 檢舉

如果實體硬碟和虛擬硬碟對應正確的話,因為系統更新或中毒OS出錯時可以還原快照點,而不影響資料庫檔案。

u8526425 iT邦大師 1 級 ‧ 2012-12-26 14:46:39 檢舉

虛擬化的快照
並不適合當做備份使用
久了會有效能問題

James iT邦大師 6 級 ‧ 2012-12-26 17:09:29 檢舉

把DB的資料檔對應到實體硬碟,就會排除在快照以外,OS的檔案大多數都在開機時載入,比較不受IO效能影響。

James iT邦大師 6 級 ‧ 2012-12-26 17:26:52 檢舉

就算不用快照,從備份檔還原虛擬機OS(不含資料檔)通常也只要30分鐘,針對需要緊急復原的系統,也可以定期CLONE出另一個備援虛擬機,遇到問題時只要關機,開備援機就可以了,當然對應的實體硬碟資料如何保護就包含在這樣的架構中。

u8526425 iT邦大師 1 級 ‧ 2012-12-27 08:32:13 檢舉

你都能停機做restore了
建cluster意義就降的很低
何況你的cluster並不能處理某些狀況
所以花出去的錢並沒有發揮很好的作用
我看根本也不用買ESXi授權做cluster
直接買CDP就可以了

James iT邦大師 6 級 ‧ 2012-12-27 08:58:39 檢舉

我沒有提到ESXI的CLUSTER,我也不建議用ESXI的CLUSTER。CDP當然也是一種可行的SOLUTION。我想定的情況是機房已經導入虛擬化後,對於IO量大、可用性需求相對較高但是可以接受停機一個小時左右的某些資料庫主機,能不能也納入同一個虛擬化平台方便統一管理。我的答案是可以,如果只是單純討論備援方案,當然有很多比虛擬化更合適的方案。

16
hector958
iT邦研究生 2 級 ‧ 2012-12-25 17:36:42

ORACLE自己有虛擬化,如果有人說ORACLE資料庫不適合跑在上面的話....我想ORACLE原廠不會同意他的說法吧。

至於非原廠人士、或是沒實際測試過的人士的講法,可能是有先入為主的觀念或是以前虛擬化技術還不成熟時的刻板印象吧。

http://www.oracle.com/us/technologies/virtualization/overview/index.html?origref=http://www.oracle.com/us/technologies/virtualization/oracle-vm-server-for-sparc/overview/index.html

jazozazo iT邦高手 1 級 ‧ 2012-12-25 18:45:27 檢舉

贊同 +1
虛擬化不是不行 而是請讓專業的來處理
硬體要怎部屬 架構要怎調整
不是說玩就玩
都是要經驗的

16
kivava
iT邦新手 4 級 ‧ 2012-12-26 06:52:46

如果你家的 DB 吃的資源不多,跑在 VM 上的確是無所謂。

但一般使用的 DB,吃 CPU, 記憶體, 硬碟,是個吃系統資源的怪物,一台高階伺服器的效能怕都無法完全應付 DB 所需,更別提透過 VM 轉換後的效能損失

一台實體伺服器上只有一個 DB VM 的虛擬化,有意義嗎?

16
u8526425
iT邦大師 1 級 ‧ 2012-12-26 08:10:33

一個實際案例是這樣
兩台64GB RAM的主機做ESXi HA
有人執意將SQL server開到40GB記憶體再丟到ESXi上面
這造成什麼問題 ?
HA會有問題, 預設需要保留記憶體給HA用
也就是兩台最多只能用32GB
不然HA啟動轉移時, 記憶體不夠會有非常大的影響
要嘛效能大降, 要嘛需調整為部份OS不隨HA轉移

要做當然可以做
但請回頭想想虛擬化的意義與限制是什麼
謹慎評估你的環境是否適合這樣做

darkeryu iT邦新手 1 級 ‧ 2012-12-27 01:25:04 檢舉

不好意思請問一下, 為何只能使用 32GB? 兩台ESXi 只有一台VM, 假設設定記憶體保留40G, admission control policy 25%(default), 這樣不會有 swap file, 記憶體至少也有40G可用吧?

u8526425 iT邦大師 1 級 ‧ 2012-12-27 08:26:22 檢舉

這是HA的預設的機制
GuestOS要能順利fail over
實體主機需提供足夠的硬體資源
這一點沒問題吧
假設HA cluster只有兩台主機
在記憶體來講
那是不是至少要保留一半的記憶體預備給fail over過來的GuestOS使用 ?
不然就有performance impact

如果你只有一個GuestOS
也沒有起FT
那另一台就沒有GuestOS能用
Fail over就算有warning應該也沒問題
但是代價與所得會不成比例

u8526425 iT邦大師 1 級 ‧ 2012-12-27 09:15:54 檢舉

而且麻煩的是
其他GuestOS因為一個不應該進現有Virtual的主機而可能失卻HA的保護
那SQL還是for test的
真的是講不聽
所以技術上不是不能做
但是你要通盤瞭解後果再做決定

10
darkeryu
iT邦新手 1 級 ‧ 2012-12-27 01:15:41

我想虛擬化的主要目的除了有效利用硬體資源外, 還可以提供DR, 老實說個人贊成犧牲一部分的效能來達成DR的目的, 要實體機器上硬體損壞嚴重到必須重建系統, 虛擬化的環境能夠很快的復原, 不需要太多的中斷時間.
新的VMware, Hyper-V 全大多數都仰賴 share storage, 若儲存裝置夠力, 應該就不至於影響太大的效能.

6
id8051
iT邦新手 4 級 ‧ 2012-12-29 00:47:23

小弟個人以下情形多來幾次,應該就會發現虛擬化的好.
1.老闆要你1小時內建一台server馬上對應------任性鬼又剛好打你考績失神
2.硬體掛了,等料件要1個月----------死定了Orz
3.設備老舊,找不到零件可維修更換,--------等死哭
4.重要db記憶體cpu效能不足,要增加硬體,老板不給停機-------我不是神仙馬,要吃草的!怒
5.機房裡伺服器滿山片野,硬體定期保養維護-------暈
.......以上小弟都遇到了......還有很多

不過Db也真的是吃資源大怪受不了,跟L牌吃油兇狠一樣
這不可否認,但如果db很重要,多花一點錢提高安全性,減個5趴效能
換來背後的管理方便性,這才是給自己留路走的作法

不過,想問一下
有人用vm虛擬化架構跑oracle過嗎?效果如何?

James iT邦大師 6 級 ‧ 2013-01-02 08:47:24 檢舉

rp7410 4G RAM 獨立 FIBER STORAGE 移到 XENSERVER 半虛擬化 CENTOS 16G RAM 共用 SAS STORAGE。 效能略為提昇,使用者感覺不出明顯差異。

我要發表回答

立即登入回答