群暉+DOCKER,一個更好的DEVOPS+WEBOS雲平台及綜合雲OS選型


本文關鍵字:dualrunning os bootloader設想,dockerized os subsystem appmodel,雲devops學編程

經過前面對於群暉的討論,我們知道它是一個從bootloader到os都很有特色的系統,我們重點討論了黑群暉的bootloader能安裝到不同平台的方式,我們還討論了如何更好更省事地使用常見群暉套件實現單文件夾同步+同步套件省事同步,及配合訪問點服務器使用(frp,公網IP盒子)的方式。,甚至討論了使用webstation作code snippter空間及利用docker實現類似live code snippter hosting空間的功能,后來我們知道這是devops

綜合上群暉總歸是一個好用的web化的雲OS,這要歸結於它可以安裝到遠端,平台管理和APP都是基於WEB的,也要歸結於它支持VMM和docker可以分虛機同時運行多個VM,最重要的還是docker ------ docker是一個同時支持應用和平台虛擬化的東西,docker可模擬subos lxqt效果,也可實現devops.下面我們細細道來。

關於雲OS的bootloader pe,從diskbios到cloudbios

pe和bootos越做越復雜的情況有很多,如群暉的webassit,它實際上是一個純凈的pe和liveos,我們稱其為dsmpe,包含了大量大容量存儲和網卡的驅動的OS,本身並不作為直接可用的系統存在一個安裝到實機的驅動解包和適配過程,負責系統功能的是pat,webassit負責的是建立可用的磁盤結構安裝和引導pat並后續更新,另外,一台機器開二個同時運行的OS是很現實的需求(one client,one server,非dualboot而是dual running),實際上在xaas系列中我們不斷看到過這類系統,如host/guest os(colinux cooperative but not dual running),虛擬機,docker OS,subsystem OS,crossover 模擬器,cloudwall(VS前面的方案,唯有它建立起cloudbox,cloudos,clouddevops,cloudappmodel全包的方案)那些,但我們並沒有接確到一種能在系統啟動時支持雙OS會同時啟動並運行的PE或工具。

diskbios即是這方面的努力,在diskbios設想中我們提到在一個類似WINPE的環境中實現虛擬機管理的功能,且在發布dbcolinux時我們在一個linuxpe中實現了集成vps管理器的功能,結合OpenVZ Web Panel管理這樣的東西,我們可以實現dsmpe類似的東西,多/system(x)這種方案既保留了虛擬機方式也保留了docker方式的虛擬粒度還很自然化。------ 但那文並沒有講到如何使這些VPS運行起來,如何引導進入的方式,------ 提供PE和如何提供雙OS,其實這可以是一個相關的問題。

當然如果直接采用PE中套虛擬機管理器+集成VPS WEB plane的想法會更簡單,但除了WEB plane,還有其它更優雅的方式嗎,傳統類grub boot的方式會更簡單有效么?比如,它或許可是一個強化的grub loader,比如為dbcolinux增加dualos bootloader running功能,可以直接單次boot二個系統,一個OS是linux+vnc thin client,然后選擇性boot into guest os through grub.....這些留在后面討論。

關於雲OS本身app和硬件。從minportalbox到minlearnbox,從WEB appmodel到私有gui appmodel

經過前面一系列的xaas討論,我們明白我們要追求的generic os其實是一種涵蓋支持realhw(見《利用colinux打造雲環境》),雲主機(見《阿里雲winpevirtio裝ISO》),無屏小主機(見接下來文尾《mac mini 2014上裝黑群暉》),虛擬機等硬件裝機環境,提供支持os subsystem(win10 wsl,fydeos anriod container,wine appcontainer,linux container) app,webapp,remote x11 gui app,local gui app(dsm lxqt)的雲OS,它有這么幾個特點,1,要支持多硬件平台,要能以web方式(准確來說,遠程都可以,分布式指代遠程,也指代一種可負載容錯的多節點結構)支持安裝分發程序與OS系統本身,2,要支持虛擬多OS APP和多種遠程APP,----- 而這,其實就是雲OS的一般特征。

我們一直提到和實現的diskbios tinycolinux,就是這個最終目的和generic os的概括,所以現在,這個diskbios不妨稱為cloudbios os。

群暉作為一個很好用的WEB化的cloudos。支持web appmodel(page ui appmodel),它還有硬件方案,符合cloudbox->cloudos->cloudappmodel全包的方案,但卻沒有clouddevops支持,需要掛靠docker,論更符合傳統方式的雲OS或更集成化的雲OS,還有fydeos和cloudwall這種,fydeos雖然是客戶端的但是也可以用在服務端,它支持docker os as subsystem/guestos,和多種subsystem appmodel

群暉利用docker很輕松能實現這種docker os as subsystem, subsystem appmodel,linux視圖形為APP gui model,加入了協議和網絡,形成了remote app model,即x11架構,這對於本地游戲沒有優化,然而對建立遠程程序天然形成優勢。我們在前面說過,任何一種邏輯棧配上一種GUI棧,就是APPMODEL,vs vnc和遠程桌面,x11可以直接從docker subsystem中透出,如利用xmingw,或dockerized x11 gui appmodel這種remote app結合teamviewr app窗口模式這種或硬件化的oraykvm這種,如果能做到這個,我們就可以將沒有port到那個平台的客戶端以remote app viewer的形式投射到那里。類遠程桌面。等5G一提速,雲streamable游戲和remote gui app就興起來了,web興許不用了它的時代就終結,因為WEB始終是一種過渡方案,它體驗不如原生,它的優點是管理難實用,像雲游戲做成webgame其體驗就十分不好。

還有,fydeos這種docker as subsystem將docker維持在os subsystem級,還有一個好處,因為每一個docker app總要帶系統鏡像然后才是分級的APP聯合文件系統,docker app總是有點粒度太大,as subsystem復用就強多了,類似anriod container app,linux container app,crossover windows app(docker wine appmodel),就可以充分抵消一個APP一個OS的docker aufs帶來的性能和存儲損耗。

甚至還可以有,私有APP model,unform server/client app model,可以使一個程序的界面都托管在雲上,就不用專門的客戶端開發了,甚至瘦終端可以是僅帶x11和vpn的手機。

而cloudwall作為雲操作體統的特點在前面我們講到是多端原生同步化,還有其devops特性。這利用群暉加DOCKER也能達成。見下。

關於雲OS的devops,從yunappmodel到ci backend yunappmodel

雲OS最鮮明的一個特別是其對DEVOPS的支持,linux+docker可輕易實現,docker in docker和docker可透露volume1服務可以很容易使之支持CI變身devops。其實本地也有devops,像cpp的sandstorm用的那套ekam,https://github.com/capnproto/ekam可以是devops,gitlab runner based也可以是。關鍵是有一個可以編譯源碼且自動化的程序存在,無關乎你將它做進docker還是什么東西,而docker不但能CI編譯也能運行構建后的APP。docker很容容易被做成ci builder。

在群暉上利用DOCKER也能實現DEVOPS。


這應該是xaas系列最后一篇關於群暉的文章了。整書關於整個現代編程開發的選型,就是圍繞,雲OS,雲devops開發,雲APP,展開的,整個demos選型也是這樣,所以新demo中先提出一個os,再jupyterengitor再APP這種,但其實cloudwall這種才是最簡易和全包的方案,為了學習起見我們做的是從基礎做起的方式,或許我們以后會權宜先在群暉上把dbcolinux docker化,在群暉上把deprecated demos遷移到docker,再考慮后續為它建立jupyterbackend devops支持,甚至自有硬件支持BOX化的方式,所以bcxszy不如叫cloudlearnprogramming。mineportalbox不如叫cloudlearnprogrammingbox


(此處不設回復,掃碼到微信參與留言,或直接點擊到原文)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM