Oracle對Java虛擬化支持策略引爭論
Oracle的Java 7虛擬化支持策略令IT專業人士擔心他們的Java應用程序不能在自己所選擇的虛擬化平臺上得到恰當的支持。
本周Oracle發布了Java 7并明確地發布了支持策略公告,聲稱Java 7軟件開發包將不再支持VMware以及微軟的Hyper-V。Oracle一直在表示由于疏忽,“錯誤地創建”了支持策略頁面,但是對包括非Oracle組件的混合軟件棧,Oracle仍將繼續堅持其標準策略:除非用戶能夠證明軟件棧的問題因Oracle而起,否則Oracle將不會提供支持。
自從周五下午起,Oacle官方網站的支持策略仍舊沒有任何變化,其內容如下:
“當虛擬化在支持的 hypervisor上實現時,所有被支持的平臺在虛擬化后將同樣繼續支持。支持的hypervisor如下:Oracle VM 2.2、VirtualBox 3.x、4.x、Solaris Containers以及 Solaris LDOMs。VMware以及微軟的hypervisor不受支持。”
Java虛擬化支持值得商榷
IT專家非常小心地解釋了Oracle對Java虛擬化支持的描述。
Virtualization Practice的CEO Edward Haletky說:“Oracle的Java虛擬化支持策略敞開了解釋的大門,該問題需要一些‘另外的說明’。因此我們的問題基本上是需要一名律師給員工解釋許可證協議,看看是否違背了該協議。”
Edward Haletky繼續說道:“這是個問題,他們沒有說,‘是的,我們將支持它。你在哪兒運行并沒有關系’,這才是真正的答案。相反他們說,‘是的,我們繼續在這兒說一些含糊其辭的空話。’正是這些空話讓人感到困惑。”
Hub City Media是Java開發的應用程序開發商店,其CEO Steve Giovannetti說缺乏明確性對業務來說不是件好事兒。
“如果最糟糕的情況確實存在,Oracle將不再支持VMware上的Java,這絕對是個問題。” Steve Giovannetti說道,“如果你是摩根大通并且在虛擬化環境中運行Java應用程序,你要做的第一件事就是打電話給Oracle代表并要求他們解決這個問題。然后打電話給VMware,詢問他們會為你做什么。”
Jay Weinshenker開了一家咨詢公司,在他的個人博客上涉及了Java 7虛擬化支持的新聞。作為回應,Oracle的Java產品管理資深總監Henrik Stahl寫到:
“受支持的平臺頁面是使用標準的Oracle模板錯誤創建的,并不適用于Java。該頁面不久將被更新以澄清,只要沒有遇到特定平臺的問題,在經過認證的平臺上(例如,在該頁面提及的平臺)以及其他平臺上我們將明確支持Java。如果遇到了特定平臺的問題(比如,如果VMware出現故障),那么你只能聯系平臺供應商進行排錯并修復故障。”
一名Oracle的女發言人說公司支持Henrik Stahl所寫的內容。在采訪中,Weinshenker說如果該問題不解決,將會令他以及其他的數據庫管理員感到誠惶誠恐。
“最大的問題可能是,作為一名Oracle DBA以及超級管理員,運行諸如Oracle E-Business套件以及Oracle Agile等各種各樣的產品都嚴重依賴Java。” Weinshenker說道,“一旦上述產品通過Java 7的認證,Java 6不再被支持將是早晚的事兒。如果Java 7不支持VMware,那么我將面臨一個非常糟糕的窘境。”
為Oracle辯護
然而,另一家進行Java以及Eclipse開發的公司經理卻樂意為Oracle開脫。
“如果Oracle說它將支持在VMware以及Hyper-V上運行Java,那么必須在發布Java 7前對所有的hypervisor進行測試,這樣做簡直太傻了。”該經理說道,“他們在這兒說的是如果你不能在他們提供的四個虛擬機之上重現該問題,我不確定所有的區別都來自IBM。所有的公司(例如IBM)都在以相同的方式運轉。他們全面支持自己所有的產品線,但是如果你運行的是一個混合的堆棧,那么他們將不會支持所有的組件。”
在這名經理看來,由于Oracle歷來不擇手段的名聲,人們對Oracle所做的任何事都異常敏感。
“當Oracle收購了Sun以及Java,人們以為世界將走向滅亡,但是并未發生。”他說道,“Oracle在Java上花費了太多的錢卻不能將它抓在手里。”
Java虛擬化支持是個新問題,在Java 6的支持策略中沒有有提及虛擬化環境,很可能是因為Java 6 在服務器虛擬化浪潮之前就發布了。
“很明顯由于在強調云計算,現在虛擬化異常巨大。因此Oracle確定明確地解釋什么受支持,什么不受支持,而不是不提及虛擬化或者繼續對虛擬化模棱兩可。”該經理說道。
大量的軟件應用程序在虛擬化模式下運行和在物理環境下沒有什么不同。因此Oracle對虛擬化技術進行支持的立場對多數IT專家來說沒有什么意義。Giovannetti說道:“VMware能夠很好支持所有的軟件包”。
“話雖這么說,但Java是一種不同的野獸”。Giovannetti補充道,“一些Java虛擬機處理內存的方式會有一些不同,當你使用虛擬化環境時需要考慮這些不同。在操作環境中你需要對Java進行一些調整,這意味著在虛擬系統中支持JVM并不和物理系統完全相同。”
Oracle意欲何為?
對Oracle的譴責在于Oracle在使用它自己的虛擬化支持策略,而且它在數據庫以及企業應用程序市場占據統治地位,在奮力爭取更廣泛的采用Oracle VM hypervisor,目前和VMware相比,Oracle的VMypervisor市場份額相當小。
過去,Oracle借助其強大的數據庫侵入了曾經移交給第三方的新市場。例如,當Oracle提供了它自己的有競爭力的產品后,幾乎取代了Veritas存儲管理工具。
許多Oracle觀察者說他們認為Oracle正在使出渾身解數將用戶帶入由Oracle提供所有的解決方案。