容器化,原子化發行版以及 Linux 的未來
容器支持者認為未來屬於容器化作業系統,而其他人或許有不同看法。
自從 Linus Torvalds 在 1991 年釋出 Linux 以來,Linux 已歷經漫長的歲月。它已經成為企業級領域的主流作業系統。同時,我們看到桌面級領域出現了很多改進和調整,但在過去的 25 年來,主流 Linux 發行版的模式很大程度上沒有變化。基於軟體包管理的傳統模式依然統治著桌面級和伺服器級市場。
但隨著 Google 釋出了基於 Linux 的 Chrome OS,情況出現了微妙的轉變,Chrome OS 採用映象模式。Core OS (目前歸屬於 Red Hat) 受 Google 啟發推出了一款作業系統 Container Linux,主要面向企業級使用者。
Container Linux 改變了作業系統更新的方式,也改變了應用分發和更新的方式。這會是 Linux 發行版的未來嗎?這是否會取代基於軟體包的傳統發行版模式呢?
三種模式
SLE (SUSE Linux Enterprise) 的產品管理總監 Matthias Eckermann 認為目前存在 3 種模式,而不是 2 種。Eckermann 提到:“除了傳統模式(RHEL/SLE)和映象模式(RedHat 的 Atomic Host),還存在第三種模型:事務模式。SUSE CaaS 平臺 及 SUSE MicroOS 就採用這種模式。”
差異有哪些
Linux 使用者對傳統模式非常熟悉,它由獨立的軟體包和共享庫組成。這種模式有獨特的優勢,讓應用開發者無需將共享庫捆綁在應用中。由於庫不會多次引入,使得系統簡潔和輕便。這也讓使用者無需下載很多軟體包,節省了頻寬。發行版對軟體包全權負責,透過推送系統級別的更新,可以輕鬆地解決安全隱患。
RHEL (Red Hat Enterprise Linux)的產品管理總監 Ron Pacheco 表示,“傳統的打包方式繼續為我們提供精心構建和最佳化作業系統的機會,以便支援需要經過時間考驗的任務關鍵型工作負載。”
但傳統模式也有一些弊端。應用開發者受限使用發行版包含的庫,使其無法從發行版不支援的新軟體中獲益。這也可能導致不同版本之間相互衝突。最終,傳統模式給管理員增加了挑戰,使其難以讓軟體包一直處於最新版本狀態。
映象模式
映象模式應運而生。Eckermann 表示,“映象模式解決了傳統模式遇到的問題,它在每次迭代更新時替換整個作業系統,而不是單個的軟體包”。
Pacheco 表示,“當我們用映象作為作業系統的代名詞進行討論時,我們真正關心的是可程式設計式的開發和部署以及更好的整合式生命週期管理”,基於 RHEL 搭建的 OpenShift 被他用作示例。
Pacheco 認為基於映象的作業系統是一種延續,從手工打造並部署映象,到可大規模管理的高度自動化基礎設施;無論客戶使用哪種型別,都需要執行同樣的應用。他說,“你肯定不希望使用一個完全不同的部署模式,這需要重做很多工作”。
映象模式用新的庫和軟體包替代來整個作業系統,但也面臨一系列問題。在映象模式中,需要重建映象才能適應特殊環境的需求。例如,使用者有特殊需求,需要安裝特定硬體的驅動或安裝底層監控功能,映象模式無法滿足,需要重新設計功能以實現細粒度操作。
事務模式
第三種模式採用事務更新,基於傳統的軟體包更新,但將全部的軟體包視為一個映象,就像映象那樣在一次操作中更新全部軟體包。
Eckermann 表示,“由於安裝或回滾時操作物件是打包在一起的單一軟體包,使用者在需要時能夠做相應的調整,這就是差別所在。結合傳統模式和映象模式的優點,避免兩種模式的缺點,事務模式給使用者提供了額外的靈活性。”
Pacheco 表示,將精心構造的工作負載部署成映象的做法越來越成為主流,因為這種部署方式具有一致性和可靠性,而且可以彈性部署。“這正是我們使用者目前的做法,部署環境包括在預置裝置或公有/私有云上建立並部署的虛擬機器,或在傳統的裸機上。”
Pacheco 建議我們將這幾種模式視為作業系統角色的進化和擴充套件,而不是僅僅“使用場景的比較和對比”。
原子化更新的問世
Google 的 Chrome OS 和 Core OS 為我們普及了事務更新的概念,該模型也被 Red Hat 和 SUSE 採用。
Eckermann 表示,“我們必須認識到,用於容器主機的作業系統已經不再是關注點 —— 至少不是管理員的關注點。RedHat Atomic 主機和 SUSE CaaS 平臺都解決了該問題,實現方式在使用者看來很相似。”
SUSE CaaS 平臺、Red Hat Atomic Host和 Container Linux (前身是 Core OS)提供的不可變基礎設施 推廣了事務更新的使用。Red Hat 高階技術產品經理 Ben Breard 表示,“在事務模式中,主機總是會變更到已確認正確的新狀態,這讓我們更有信心執行更新,進而實現更快速的功能流、安全優勢以及易於採用的操作模式。”
這些新型作業系統使用 Linux 容器將應用與底層系統隔離,解除了傳統模式中基礎設施更新的諸多限制。
Breard 補充道,“當編排層可以智慧處理更新、部署,甚至最終實現無縫操作時,我們才會真正意識到該模式的威力和好處”。
展望未來
Linux 的未來會是什麼樣子?不同的人會給出不同的回答。容器支持者認為未來屬於容器化的作業系統,但依然擁有龐大市場的 Linux 供應商顯然不這麼認為。
當被問到原子化發行版是否會在很久以後將替換傳統發行版時,Eckermann 表示,“如果我回答肯定的,那麼表示我順應潮流;如果回答是否定的,意味著我還是站在傳統陣營。然而,我的回答是否定的,即 atomic 發行版在很久以後也不會替換傳統發行版,傳統負載和容器化負載將在資料中心、私有云以及公有云環境中共存。”
Pacheco 認為,從 Linux 的部署增長情況來看,一般情況下很難想象一種模式替換另一種模式。與其將多種模式視為相互競爭的關係,不如將原子化發行版視為作業系統進化和部署的一部分。
此外,在一些使用案例中,我們需要同時使用多種 Linux 發行版。Eckermann 表示,“想一想銀行和保險公司中大量的 PL/1 和 Cobol 系統。再想一想記憶體資料庫和核心資料匯流排系統。”
這些應用大多數無法進行容器化。就我們目前來看,容器化不是解決所有問題的萬金油。總是會同時存在多種不同的技術。
Eckermann 相信,隨著時間的推移,大量新的開發和部署將採用容器化,但仍然有不錯的理由,促使我們在企業級環境中保留傳統的部署方式和應用。
Pacheco 認為,“使用者需要經歷業務、設計和文化的轉型,才能最大化基於容器的部署帶來的優勢。好訊息是業界已經認識到並開始大規模轉變,就像歷史上大型機轉變成 UNIX,UNIX 轉變成 x86,x86 轉變成虛擬化那樣”。
結論
很明顯,未來容器化負載的使用量會持續增長,也就意味著原子化發行版的需求量持續增長。與此同時,仍會有不少工作負載執行在傳統發行版中。重要的是,這兩類使用者都在新模式上大規模投入,以便市場改變時可以做相應的策略改變。從外部觀察者的視角來看,未來屬於事務/原子化模式。我們已經見證了資料中心的發展,我們花了很長時間完成了從每個伺服器一個應用到“函式即服務”模型的轉變。Linux 發行版進入原子化時代的日子也不會太遠了。
via: https://www.linux.com/blog/2018/4/containerization-atomic-distributions-and-future-linux
作者:SWAPNIL BHARTIYA 選題:lujun9972 譯者:pinewall 校對:wxy
相關文章
- 資料庫容器化|未來已來資料庫
- 來自 Amazon 的容器專用 Linux 發行版“瓶裝火箭”Linux
- 原子化服務的官方解析來啦~
- ChemDraw 20:化學繪圖的未來已來mac/win版繪圖Mac
- 淺析未來化數字化展廳的發展前景
- CentOS Linux 的未來和功能的巨大變化CentOSLinux
- CoreOS,一款 Linux 容器發行版Linux
- ChemDraw 20:掌控化學繪圖的未來 mac/win版繪圖Mac
- JavaScript的進化和未來JavaScript
- 「CSS思維」元件化VS原子化CSS元件化
- 山東晟利談優化的未來發展WYX優化
- 擁抱模式化未來模式
- Linux 容器技術史話:從 chroot 到未來Linux
- 人臉識別應用領域以及未來的行業發展趨勢行業
- 【Dijkstra演算法】未優化版+優先佇列優化版演算法優化佇列
- 主流發行版之前的那些最早的 Linux 發行版Linux
- 未初始化變數引發執行時故障變數
- 恆訊科技談談:雲遊戲的發展以及未來?遊戲
- 服裝製造企業存在的問題以及未來行業發展計劃行業
- DTalk|自動化機器學習-人工智慧的未來機器學習人工智慧
- Linux下進行格式化行動硬碟(U盤)以及分割槽Linux硬碟
- 虛擬化和雲端計算未來發展趨勢薦
- Linux發行版Linux
- [譯] 預測你的遊戲的貨幣化未來遊戲
- 最受歡迎 Linux 發行版,來看看都有誰?Linux
- 未來的銀行:金融業數字化顛覆基礎知識
- 揭示汽車製造行業未來,盡在廣州自動化展!行業
- 什麼是Linux發行版?Linux發行版推薦Linux
- 未來的Linux世界Linux
- 探秘未來能源:太陽能發電園區的3D視覺化之旅3D視覺化
- 前端智慧化的未來 10 年,越早入行越吃香!前端
- 未來的元件化標準 —— 淺嘗Web Components元件化Web
- 向未來而生:百度的技術進化
- 模型驅動軟體開發 打造企業數字化未來模型
- Docker最全教程——Redis容器化以及排行榜實戰(十三)DockerRedis
- 如何使用Docker容器化改善你的開發流程Docker
- 未來,一切都將遊戲化?遊戲
- 隨著數字化深入,全景數字化網站才是未來網站