2020年,塑造云原生世界的四大趨勢
對于云原生社區而言,2019年是非常關鍵的一年,這一年相關消息多得眼花繚亂。但是,到了2020年,如果你后退一大步看的話,就會發現云原生空間將出現4大關鍵趨勢。
2014年6月,谷歌宣布擁抱Docker,并且開發一種新的開放源代碼工具來管理大規模計算基礎架構上的計算運算工作。當時這一舉動被稱作是一場革命,有外媒甚至在其文章標題寫道“谷歌開源了其在云計算領域的秘密武器!”
它就是Kubernetes,被認為將引發云計算技術的巨大變革,以及促進龐大社區的誕生;同時,在谷歌、微軟、阿里巴巴和AWS正在進行的云計算市場份額主導之戰中,Kubernetes也將起到重要作用。
Kubernetes的功能其實很簡單。Docker使標準化的可移植件的移動變得更加容易:只要安裝了Docker的環境下,將您的代碼、庫和配置放入Docker容器中,就可以在任何地方運行它而無需考慮運行平臺。現在,您擁有了一系列應用,這些應用打包在多個容器中,并且可以在數據中心和云環境中的一系列異構計算機上運行。
那么,誰來辨別哪個容器在哪里運行?這種異構硬件將如何充當一臺統一的計算機角色來運作呢?這就是所謂的業務流程,Kubernetes即承擔了這一角色。
當然,這個想法并不新鮮。但是Kubernetes承諾可以讓開源社區利用谷歌數十年來的經驗。這些是許多企業的夢想,這意味著他們可以獲得谷歌級別的技術并在此基礎上開發自己的電子游戲。
這也成為一項谷歌出色的戰略舉措,標準化編排將使用戶更容易運行Docker化的計算工作,這將促進他們過渡到Docker新范例的標準。Docker化的“云原生”工作運算比整體式舊應用更易于在云中運行,并且它們也更容易在云之間遷移,也就是成為“可移植的”。這意味著,會有更多的企業可以將其計算遷移到云平臺,這就擴大了云計算市場;又可以從一個云平臺遷移到另一云平臺,這樣人們從AWS遷移到谷歌云平臺也變得越來越容易。間接地,Kubernetes云供應商的兼容性也在變得標準化。
Microsoft Azure原本采用AWS的服務,在2014年8月迅速采用Kubernetes,而亞馬遜花了四年時間才能提供托管的Kubernetes產品的服務。
在最初的POC之前,企業已經意識到運行Kubernetes需要非常專業的技能和大量配套軟件。興奮過后,用戶對采用Kubernetes的態度變得更加謹慎;在技術方面,Kubernetes的態度也變得更加認真且保守。
谷歌將Kubernetes捐贈給了一個新成立的基金會,即Cloud Native Computing Foundation,該基金會的任務是托管開源項目,以構建“全球技術基礎設施的關鍵組件”。社區正在不斷壯大,一年一度的Kubecon會議也從小型的1000人活動演變成為了遍布全球的1.2萬人活動。
那么,到2020年,云原生的趨勢將是什么呢?
1.深入企業
最初,Kubernetes只是運用在一些小型POC項目中,但現在已被大規模采用。在網絡安全公司Stackrox的一次民意測驗中顯示,2019年成為了Kubernetes成為容器編排的主導年:86%的受訪者使用它來進行編排工作,高于2018年的57%。根據Kubernetes平臺的Diamanti:“與2018年相比,我們清楚地看到開源容器管理正在進入IT企業主流。”
Rancher,CoreOS和OpenStack等公司都在使用Kubernetes的解決方案,Kubernetes的發布有一段時間了,但仍有大量企業需求仍未滿足,比如權限、治理、成本控制、集成等方面。
所以,我們在2019年還看到了很多新聞:例如在The Open Policy Agent在被Cloud Native Computing Foundation基金會接受后,創企Styra獲得了1400萬美元的融資;Kubecost解決了大規模管理基礎架構成本的問題等。
預計會有越來越多的企業級初創公司對外發布消息,利用Kubernetes解決許可、治理、單一虛擬管理平臺和成本控制問題。
2.混合云就是一個官方的Kubernetes產物
從一開始就很明顯,Kubernetes將在多重云上運行,可跨越不同的公共云服務提供商。尚不清楚的是,混合云本身是否會直接出現在我們的可選擇視野中。這一答案取決于那些云服務的運營巨頭,他們是會選擇擁抱混合云這種產物,并允許其產品與本地Kubernetes解決方案兼容,還是需要大量的集成或膠合產品才能使用,增加終端用戶的使用成本呢?
微軟在此方面的意向比較清楚,Microsoft Azure最早就包含了混合云。亞馬遜也在2018年底加入了這個行列,現在正在逐步推出其AWS Outposts。谷歌似乎到目前為止一直不愿接受混合云。
2019年是混合云獲勝的一年。現在,它已得到3個主要云提供商的支持。混合Kubernetes產品也將于2020年推出。微軟在機器學習方面不如谷歌,在云產品平臺又不如亞馬遜,它的優勢正在逐漸消失。
3.云原生的安全性
雖然,Kubernetes已被企業采用,且不僅限于POC,并可以在多個環境中運行。但是,Kubernetes在安全性方面承受著很大的壓力。原來在安全程度較低POC項目中,部署測試運行良好,但是一旦轉向那些生產級的計算運行中,就需要更高的安全級別了。為了滿足這一需求,新一波的網絡安全創企正在崛起。
近十年的趨勢顯示,開發人員和運營團隊一直在轉向敏捷型和DevOps范例。這意味著代碼將被頻繁地、快速地運送,并且也被快速部署。連續的代碼發布和連續的代碼部署,一切都將變成增量或連續式的,快速更新迭代以適應新的環境。
還有一種大趨勢是將網絡安全某種程度上掌握在開發人員自己手中。隨著部署到生產的過程越來越多地由開發人員掌握,而不是脫離開發的運營者。例如,Snyk花費1.5億美元幫助開發人員發現其代碼、容器或Kubernetes集群中的漏洞。Anchore獲得了2000萬美元的資金,用于構建“可在Kubernetes本地上運行的全面容器安全平臺”。希望能有更多幫助開發人員評估其應用安全性的工具出現。
4.邊緣計算
在過去的兩年中,我們聽到了很多有關“邊緣”的信息。我們現在這個時代,連汽車和冰箱中都是計算機程序,數據傳輸量也在不斷增加,那么為什么不在數據附近進行運行呢?何必再到數據中心中去進行計算?在邊緣進行計算,然后在把計算結果集合在一起,這樣可以減少帶寬需求,提高安全性和隱私性并優化計算使用過程。
事實是,包括Kubernetes在內的軟件堆棧并不一定要在數據中心之外的那些異構計算環境上運行。例如,智能手機或智能手表,它們通常功能較弱,并且處理開銷較小。
那么我們如何處理堆棧呢?
2019年有許多相關新聞,例如:領先的商業Kubernetes發行商之一Rancher發布了k3s,“專為無人值守、資源受限、遠程位置或物聯網設備內部的生產工作運行而設計”。Virtual Kubelet 1.0,一個使您可以將Kubernetes擴展到無服務器容器環境(尤其是在邊緣基礎架構上)的系統。
堆棧的邊緣已經成熟。預計電信公司或設備提供商會陸續發布重要消息。