邊緣運算 vs 雲端運算 分散式或集中式,哪種架構適合你?

在後疫情時代,每家企業都必須審視公司的數位營運架構是否能夠滿足敏捷性,可自動化,安全性及遠端維運的基本條件。過去鮮少有人採用完全分散式的營運架構,但疫情讓人了解其實遠程維運自動化不僅可行,還是未來對付疫情捲土重來的最佳利器。集中式營運就如同雞蛋放在同一籃子,每顆蛋與蛋之間容易產生碰撞甚至感染,就如同不同種族的人聚在一起,因爲文化習慣不同,容易產生磨擦一樣,這會帶給企業工作人員極大的困惱及壓力。所以我認為如果要營運一家跨國公司,實體連結其實並非重點,你要讓僱員可以在其生長所在的地方透過網路連結工作,如同現今IT 架構使用分散式運算一樣。如果你再去看看美國矽谷或是日本東京那種企業及人口高度集中的地區,物價及房租高漲,再加上身處高強度的工作環境,這些因素都會導致員工身體及心靈的傷害,例如今年日本萬聖節電車殺人放火事件,主嫌才24歲,不就是年輕人對這個社會感到失望嗎?但疫情改變了一切,讓人們知道其實分散分流工作很不錯,你可以住在郊區工作,省下大量的通勤時間也避免在擁擠大城市工作造成染疫的風險。當工作與生活能夠更加平衡時,疫後為何還要回到以前的生活?所以很多美國人選擇離職,去找尋他們理想的工作與生活模式。

當然企業營運方式還是要看老闆的思維而定,要改變既定的框架運作,真的不是一件容易的事。這涉及公司的資訊系統是否可以支撐分散式運作。這也來到另外一個討論的重點就是企業的資訊架構究竟是要上雲端還是在地端部署架構?雲端運算 (cloud computing) 相對邊緣運算 (edge computing or fog computing) ,一個是集中式管理一個是分散式管理。我們就來比較一下其優缺點。

雲端運算的優點

應用系統可以快速上線

例如疫情期間,很多公司被迫分流上班及在家工作。同時學校也關閉,學生必須在家上線上課程。但很大一部份的公司或學校並無視訊會議及網路教學的系統,因此使用雲端服務會是最快的方式。也就是說雲端服務基本上可以來應急,這對資訊基礎建設本來就匱乏的中小企業尤其有幫助。

網路及電力供應的穩定度

一般雲端運算所採用的資料中心具有事先規劃設計好的備援網路及不斷電系統,這會讓系統運作時不會受到停電或是網路斷線的干擾。所以如果你的辦公室地點經常會有停電/電力維修/網路不穩的現象,雲端服務可能會是比較好的選擇。

API 串接較容易

隨者數位化服務的成熟,系統與系統之間資訊的讀取與上傳變得愈來愈重要,這都需要仰賴API 來串接系統。例如廠商開發電子發票雲端服務系統就是串接財政部國稅局的API,如果要自行建置ERP 串接國稅局進行電子發票開立會需要一定程度的API 工程師來作程式開發,對缺乏人力資源的中小企業來說,這時可能使用廠商的雲端服務會是比較好的選擇。

雲端運算的缺點

雲端服務容易大規模斷線

現今主要雲端服務供應商如Google 或是 AWS 還有社群巨頭 Facebook ,即便基礎設施再優異,可能只因為一個工程師下錯指令,都會造成大規模斷線。所以如果公司所有營運架構都在雲端運作其實風險蠻高的。畢竟企業內網斷線會比網際網路斷線機率低很多。(Podcast: 臉書,IG,WhatsApp 全都安靜的一天

雲端服務其實費用高昂

雲端服務就像去便利商店買東西,給你便利開出系統上線但它絕對是不便宜。記得之前詢問過國內某資料中心,僅只租用一6U 空間,放一台伺服器及網路設備,一個月就要 NT 12000。即便是使用公有雲服務,4G 的記憶體加上100G 的儲存空間就要每月 NT 3000。比較起來使用現今最新伺服器主機,價格才5-10 萬,加上運作開源Proxmox 虛擬機平台,等同可以開出30-50 個VM 或是容器,成本還是便宜許多。

雲端服務就是一個封閉式的管理框架

封閉式管理框架如同使用Windows 作業系統一樣,必須要熟悉選單及視窗操作。對於我們經常使用Linux 指令管理的人員來說,幾秒鐘可以完成的事,使用視窗界面有時還會迷路,要花好幾分鐘才能找到。又如要建構虛擬機前面的防火牆,只能乖乖遵守雲端架構的管理方式,造成系統管理人員被限制在那一個框架,常常動彈不得。另外雲端服務就是數位群聚,其實有一定的風險,可以參考這篇文章

邊緣運算的優點

邊緣運算可用的資源更豐富

誠如上面所提,比起雲端服務,自行購買伺服器不論就 CPU/ 記憶體/儲存空間/網路頻寬 都遠遠勝過購買雲端服務所可以提供的運算資源。另外就作業系統選擇上,並非你要的作業系統版本雲端服務都可以涵蓋的到。

邊緣運算可以提供更及時的反應時間

為何電動車需要配備強大的AI 晶片作運算,原因無他就是反應速度。如果電動車蒐集的資料需要上傳雲端判斷再回傳到車上做反應,那車子可能已經撞上分隔島了。相同的很多工業生產流程需要即時反應,否則會有良率的問題,這些都需要靠邊緣運算系統做即時判斷才行。

邊緣運算的範圍更廣泛

相較雲端運算偏向伺服器的運算,邊緣運算涵蓋 工作站/伺服器/行動裝置/IOT 系統/感測器/網路通訊裝置/VPN 防火牆/工業電腦等,這些都是維運公司或工廠的必要配備,雲端服務僅能涵蓋一小部分。

邊緣運算更適合做資料分析及人工智慧

當你打算將所有資料上傳雲端做分析時,你會發現過多沒有整理過的資料傳上雲端既占空間又增加費用支出。而且傳輸需要時間及頻寬,這些都是會影響專案進度。但使用公司內工作站或伺服主機做AI 運算不用考慮上雲的成本,內部資料傳輸也較網際網路快很多。

邊緣運算的缺點

邊緣運算設備需要自己維護

使用雲端服務如果機器故障會有專人維護,但邊緣運算則需要倚賴 IT 人員或是委外廠商做修復。這需要投入一些IT人力資源或是找尋合適的廠商才能維運邊緣系統。

邊緣運算初期投入成本較高

很多公司不願意建置自己的系統是因為看到雲端服務好像按月計費比較便宜,但那是錯的。如果邊緣系統透過虛擬化技術將資源極大化,那麼長期來看雲端服務的成本可能是邊緣運算的數倍。只不過財務報表上它就是一份高額支出,但如果長期攤提下來其實還好。

結論

綜合上述所說,我認為企業數位營運架構中邊緣運算比上雲端運算至少要有八比二的比例。也就是邊緣運算重要性遠大於雲端運算,這樣才是技術與成本優化的最佳架構。就如同企業運作一樣究竟是要集中管理還是分散式協作各有利弊,但我認為分散式架構會是未來的趨勢,過度的集中就如同疫情襲捲全球一樣,因為從來沒有人好好思考分散式協同工作的議題,造成大城市染疫風險飆高,那雲端運算大斷線是不是也會一來再來?


分享


WSL 玩玩就好,使用真正的Ubuntu Desktop 來工作吧!