對(duì)很多公司來說軟件許可是個(gè)挑戰(zhàn)。令人困惑的術(shù)語、特殊的條件以及不同的產(chǎn)品變種使許可變得復(fù)雜而且非常耗費(fèi)精力。但唯一不變的是硬件,許可跟隨硬件進(jìn)行遷移雖然麻煩,但仍然是可行的。
虛擬化改變了這一切。我們不再受硬件限制而且能夠按需分配核心、CPU以及內(nèi)存。然而很多軟件許可模式已經(jīng)跟進(jìn),使得顧客想知道他們做的是不是合法的。灰色區(qū)域很廣,而不遵守規(guī)則的后果可能很嚴(yán)重。
基于物理CPU的軟件許可模式發(fā)生改變
企業(yè)許可最為流行的方式之一是基于CPU。在Intel的超線程及多核技術(shù)引入前,處理器只有一個(gè)大腦,事情非常簡單——一個(gè)CPU或者大腦通常等同于一個(gè)許可。需要多個(gè)CPU的服務(wù)器通常要配置2個(gè)或4個(gè)CPU,但每個(gè)CPU仍只有一個(gè)大腦。
硬件的進(jìn)化引入了核心的概念。多核也就是每個(gè)CPU多個(gè)大腦變成了現(xiàn)實(shí)。這對(duì)用戶有利,用戶獲得了更強(qiáng)大的處理能力,但只需要支付單個(gè)CPU的許可費(fèi)用。
Intel更近一步,單個(gè)核心能夠虛擬地將工作負(fù)載分離到單個(gè)物理核心的兩個(gè)虛擬核心上。單個(gè)CPU現(xiàn)在可能有四個(gè)物理核心,每個(gè)核心能夠干兩個(gè)核心的活兒。單個(gè)CPU現(xiàn)在看起來有8個(gè)大腦。在大多數(shù)情況下,這對(duì)用戶有利,就看許可模式什么時(shí)候能夠趕上硬件的發(fā)展速度了。
現(xiàn)在很多廠商使用基于核心進(jìn)行許可的模式,該方式增加了混亂。例如,微軟的Windows Server 2012 數(shù)據(jù)中心版基于CPU而非核心進(jìn)行許可,只要對(duì)所有物理CPU進(jìn)行了許可,在虛擬環(huán)境下就允許用戶在每臺(tái)主機(jī)上無限制運(yùn)行虛擬機(jī)。這一簡單的概念有利于用戶。在2016數(shù)據(jù)中心發(fā)行版中,微軟要求基于核心進(jìn)行許可。核心許可基于2的倍數(shù)銷售,價(jià)格與舊有的許可機(jī)制相同,直到每個(gè)CPU超過了8個(gè)物理核心,這是數(shù)據(jù)中心版每個(gè)CPU能夠使用的最少核心數(shù)。
盡管這聽起來很合理,真正的問題是當(dāng)每個(gè)CPU的核心數(shù)超過8個(gè)時(shí)會(huì)發(fā)生什么。在2016年初,Intel封裝的CPU達(dá)到了18個(gè)物理核心。這可能會(huì)導(dǎo)致微軟顯著增加之前8核心基礎(chǔ)模式的價(jià)格。價(jià)格可能會(huì)非常高,致使企業(yè)要重新思考如何配置服務(wù)器。更多的核心、更好的理念可能會(huì)放棄減少核心數(shù)量以更好地利用軟件許可的想法。
談到虛擬化,對(duì)管理員來說,服務(wù)器許可往往是最簡單的。放置桌面或者使用VDI是如此復(fù)雜,實(shí)際上需要法律援助以把許可協(xié)議搞清楚。在最初的設(shè)備制造商協(xié)議中,桌面操作系統(tǒng)一直與硬件相關(guān)聯(lián),這使得在硬件設(shè)備上運(yùn)行桌面操作系統(tǒng)時(shí)解決許可問題相當(dāng)輕松。現(xiàn)在你需要付費(fèi)購買服務(wù)比如軟件保障或者虛擬桌面接入訂閱以運(yùn)行虛擬桌面。軟件許可模式可能令人困惑而且往往基于用戶進(jìn)行許可,在擁有共享資源的環(huán)境中很難追蹤。
此外,瘦客戶端本身可能需要一個(gè)操作系統(tǒng)許可訪問虛擬桌面。這也是VDI與成本優(yōu)勢作斗爭的主要原因。部分虛擬桌面許可可能伴隨著特定的硬件,需要與操作系統(tǒng)廠商確認(rèn),因?yàn)殡S時(shí)都可能發(fā)生變化。
Oracle提出挑戰(zhàn)
許可同樣適用于應(yīng)用領(lǐng)域。應(yīng)用許可有所不同,可以通過用戶數(shù)、CPU或者無限制連接的核心數(shù)進(jìn)行追蹤。服務(wù)器產(chǎn)品,包括微軟SQL的許可模式已經(jīng)從CPU轉(zhuǎn)向了核心。
監(jiān)管這一概念通常像服務(wù)器許可那樣簡單明了,但有一個(gè)明顯的例外——Oracle。由于Oracle直接與其他主要的hypervisor廠商進(jìn)行競爭,該公司不遺余力阻止用戶使用其他廠商的hypervisor。
首先,Oracle支持應(yīng)用在非Oracle虛擬化平臺(tái)上運(yùn)行,但并沒有進(jìn)行認(rèn)證。這意味著如果Oracle產(chǎn)品出現(xiàn)了已知問題,那么可以獲得支持。如果是一個(gè)新問題,那么必須聯(lián)系hypervisor廠商獲得支持,而且有時(shí)候要在物理硬件上復(fù)現(xiàn)該問題。更糟糕的是,Oracle不支持其所謂的資源“軟分區(qū)”。這意味著你不能使用一個(gè)hypervisor限制虛擬機(jī)的CPU或核心數(shù)量。因此所有的CPU/核心必須在主機(jī)中進(jìn)行許可,因?yàn)樘摂M機(jī)只能夠在任何一個(gè)CPU/核心上運(yùn)行。對(duì)很多用戶來說,這使得在傳統(tǒng)hypervisor上虛擬Oracle的價(jià)格過于昂貴。
許可模式的進(jìn)化
許可充滿了不明確的措詞、描述有限的術(shù)語,而且軟件許可模式澄清的越多越容易混淆。然而,有一些正在變得確定:首先,基于CPU的許可正在被基于核心的許可或者基于用戶模式的許可所取代。而且許可對(duì)內(nèi)存的限制大多數(shù)已經(jīng)取消了。
訂閱以及捆綁正在成為常態(tài),但用戶必須非常謹(jǐn)慎,因?yàn)椴煌漠a(chǎn)品的軟件許可模式可能不同。確定需求需要花時(shí)間并進(jìn)行研究,考慮正在用的,你想用的以及不同產(chǎn)品之間的交互。隨著時(shí)間的推移以及不斷的付出,應(yīng)該可以取得成功。