本文英文版來自VentureBeat,中文版由天地會珠海分舵編譯。當以Docker為首的容器正在席卷全球,蔚然成風的顛覆著原來的應用開發(fā)和發(fā)布方式的時候,容器標準之爭卻從來沒有消停過。而標準之爭這場沒有硝煙的戰(zhàn)爭又帶來了對用戶沒有任何意義的巨大浪費,這時就很需要有一個統(tǒng)一的標準出來一統(tǒng)江湖,結束這場無謂的戰(zhàn)爭。此時,OCP 就應運而生了...
這幾個星期對于容器以及互聯(lián)網軟件行業(yè)來說都是值得高興的日子。在六月下旬的DockerCon大會上,Docker以及其他社區(qū)發(fā)布了大量的非常有意思的消息。
這其中最重要的消息應該算是公布了由Docker和CoreOS主導的,開始建立一個開放容器格式標準的“開放容器項目(OCP)“。
一個標準的建立過程是非常乏味的,起碼對大部分人來說是這樣的。但是如果沒有一個統(tǒng)一的標準的情況下,標準之爭的戰(zhàn)火將會對容器這個新興產業(yè)帶來極端的破壞。大家可能還記得最近的一場關于DVD標準的藍光vs.高清晰度DVD的格式標準之爭。主要的視頻生產商在DVD標準之爭打得不可開交,消費者同時也在隔岸觀火靜觀其變,而不是盲目的就去買一個所支持的格式不確定是否會成為標準的產品(如果大家再多等幾年的話,可能他們就會直等到當今視頻流媒體的出現(xiàn)了。至于流媒體,這又是另外一個故事了)
Docker的首席執(zhí)行官Ben Golub打了個比方來形容這種格式標準之爭所帶來的浪費:這就好比火車軌道的寬度標準之爭。與其無休止的為究竟多寬的軌道才是標準打得不可開交,大家不如(坐下來統(tǒng)一一個標準)關注應該如何打造處一個更好的引擎。
這就是為什么OCP能夠得以誕生的原因了。下面就是對OCP標準的更詳盡的一些描述。
OCP詳情
OCP存在的目的是打造一個“開放容器格式”的標準。這里的格式包括容器鏡像格式以及運行時環(huán)境。
Docker為OCP組織貢獻了他們的libcontainer項目,并更名為runC,正是這個項目為OCP奠定了技術基礎。而來自CoreOS 的“應用容器”項目,APPC, 也會是形成新的OCP格式的很大一部分。APPC往往是因為它的rkt格式而為世人所知曉(rkt是APPC的實現(xiàn)標準)。根據CoreOS的熟悉執(zhí)行官 Alex Polvi所述,“我相信來自APPC的很多核心概念都將會成為OCP新標準的一部分。“
OCP是在Linux基金會的資助下運行的項目,在本文撰寫的時候已經有21個成員加入(其中創(chuàng)始成員包含項目創(chuàng)始成員包括 CoreOS, AWS, Google, Redhat, VMware, EMC, 華為)。
OCP究竟意味著什么
OCP之所以對于我們是個振奮人心的消息主要體現(xiàn)在3個主要方面。
首先,盡早的為容器格式建立一個標準,這樣用戶就不大可能因為技術或者工具底層實現(xiàn)細節(jié)的差異而受困于容器提供商的封鎖。大家如果有著從安卓手機切換到蘋果手機(反之亦然)的經歷的話,肯定對兩者電源和數據線的標準的不統(tǒng)一而深惡痛絕,因為他們沒有采取統(tǒng)一的開放標準,所以一方的數據線和電源是不能用于另外一方的。
其次,降低提供商的封鎖對用戶來說能夠帶來即時可見的好處。如我們前面所說的標準之爭會讓消費者遲疑不敢在運營商做出技術決定之前下手購買相關產品。如果標準定下來了,大家就無需徘徊觀望了。從而用戶就可以更快的應用上相關的技術,采取該技術的企業(yè)也可以加速的一往無前的向前推進自己產品的開發(fā),而無需等到一大幫競爭者都跟自己站在同一起跑線上才開始往前推進。
最后,OCP的出現(xiàn)將會讓圍繞容器的工具加速的產生。否則,如果是標準之爭還在持續(xù)的話,工具開發(fā)者也會和消費者一樣會徘徊在應該選擇哪個標準的兩難境地。而最終確定誰是最終的贏家的分析過程是非常耗時且代價昂貴的,這里因等待而多消耗的每多一小時,就意味著你會晚一小時給用戶提供解決方案來解決他們的痛點,那么就意味著更多的競爭者就會出現(xiàn)。如果開發(fā)人員看不清楚最終哪一方將會是標準之爭的勝出者的話,他常常就迫于無奈需要對不同的格式都進行支持。我自己作為一個工具開發(fā)者,對于OCP的出現(xiàn)我是歡喜雀躍的。
善意的提醒
OCP的出現(xiàn)確實是個好消息,但,這并不意味著所有問題都已經迎刃而解了。
這個開放標準也會存在一個陰暗面:成員之間因為各自利益的考慮而在訂立該標準的過程中所引發(fā)的暗箱操作和無意義的復雜斗爭。隨著競爭對手 Docker和CoreOS緊隨其他19個成員加入到OCP的創(chuàng)始人行列,就意味著整個標準的訂立過程中就會充滿著陳槍舌戰(zhàn),大家為各自利益著想而對標準訂立的分歧只會讓拖慢標準訂立的過程,甚至還會有人嘗試改變整個標準訂立的方向來迎合他們自身的利益。
就拿OpenStack來說吧,盡管它獲得了快速的發(fā)展和解決了用戶真正的痛點,但是它還是逃脫不了上面提及的這些問題。OpenStack結果是做的比本應該的還要復雜,最終是在用戶采納程度上付出了代價。在我看來,避免過于復雜對于OCP這個新標準來說就是至關重要的。