每兩年進行一次的CNCF調查洞悉了IT社群對雲原生技術應用的認知變化。這已經是CNCF第六次關註調查容器化管理市場的熱度。
-
自2017年12月以來,CNCF專案在生產環境應用平均增長超過200%,所評估的專案數甚至達到了372%的增長。
-
自2017年12月以來,受訪者中的大部分都使用了類似AWS Lambda(70%) 的平臺服務。這使得無伺服器技術的應用不斷增長,增幅達到22%。
-
雲原生技術的3大優勢為更快速的部署時間,改善彈性和雲可移植性。
-
5000員工以上規模的企業受訪者中,40%的企業在生產環境中部署了Kubernetes。
這是迄今為止收到過最多的調查回覆,共有2400人有效參與了調查,受訪者主要來自北美(40%)和歐洲(36%)。均為研發人員或IT相關的角色,分佈情況如下:
-
研發人員:49%
-
運維人員:36%
-
IT經理:11%
-
研發經理:14%
大多數受訪者都是來自於員工規模超5000人的公司,這使得本次調查的結果更偏向於在企業中CNCF技術專案的使用。參與者排名靠前的行業是科技(22%)、軟體(22%)、金融服務(9%)和電信(8%)。
本項調查是用英文進行的,中文版的調查目前還正在進行,結果將於今年晚些時候公佈。你可以透過下圖瞭解調查人群的詳細統計資訊:
在本次最新版的調查問卷中,我們額外添加了釋出方面的問題,以便更深入地瞭解公司如何管理他們的軟體開發週期。微服務架構的好處之一是靈活部署的能力,從而允許公司根據需要盡可能頻繁的進行應用釋出。在微服務之前,典型的釋出管理中,應用釋出頻率要低得多,通常是一年一兩次左右。本次調查中,這一點變化突出,除釋出頻率外,受訪者釋出週期的各種釋出佔比相當均勻:
-
每週釋出:20%
-
每月釋出:18%
-
每天釋出:15%
-
臨時釋出:14%
上述的大多數應用釋出都是採用自動化處理(42%),使用混合方法釋出的受訪者佔25%,還有27%的受訪者使用手動釋出。隨著自動化釋出的增長,管理CI/CD通道的工具也越來越流行,其中Jenkins是標桿性的工具(70%),其次是Terraform(27%)和定製指令碼(26%)。
此外,在程式碼檢查頻率方面,67%的受訪者每天多次檢查,每週檢查幾次為28%,每月檢查幾次的為6%。
至於伺服器數量規模(包括VMs,裸機器等),相較於在2017年12月的那次調查資料,我們看到5000+以上規模的受訪者有小幅增長, 由14%上升到17%;6-20臺機器的受訪者,從18%下降到16%;21-50臺機器的受訪者的佔14%,51-100臺機器的受訪者佔11%。
企業用雲的資料分佈情況是:自建資料中心佔比64%,私有雲佔比50%,還有77%的企業採用了公有雲的方案。
在採用容器化服務方面,大多數受訪者公司都部署在AWS平臺上(69%降至63%)。緊隨其後的依次是本地資料中心部署(從51%降至43%)、谷歌雲平臺(39%降至35%)、微軟Azure(從16%升至29%)、VMware(24%)和OpenStack(從22%降至20%)。括號內資料為相較於上次調查的資料。
上述數字表現延續了我們在去年看到的趨勢,但存在兩個顯著變化。首先是自有資料中心部署容器較2017年12月的51%下降到了43%,這很可能是由於私有雲的使用增加所導致的。其次,這是我們第一次在這些調查結果中看到在VMware上廣泛部署容器服務,在2017年12月的調查中,部署於VMware平臺的僅僅為1.2%而已。
73%的受訪者在生產環境採用容器化服務,剩餘的27%表示計劃在以後採用這項技術。這個資料在17年12月的調查分別是75%和25%。當前在POC環境採用容器化的受訪者有89%,而用於測試環境和開發環境的分別是85%和86%。
公司所執行的容器數量也同比基本保持穩定,執行容器少於50個的佔29%,50 -249個的為27%,250-999個的為17%,執行的容器數量超過5000個的為15%。和上次的資料對比,使用容器數不到50的公司增長明顯,從2017年12月的23%上升到29%,而容器數在250-999的公司數量略有減少,從22%下降到17%。
在容器管理工具方面,Kubernetes以83%的受訪者採用穩居第一。其次是Amazon ECS 佔24%,Docker Swarm佔 21%,Shell Scripts佔20%。2017年12月同型別資料分別是77%,18%,17%和12%,存在明顯的增長趨勢。
58%的受訪者在生產環境中採用了Kubernetes。同時,42%的受訪者正在為以後應用進行評估。而在人員規模5000以上的企業中,有40%的受訪者在生產環境中使用了Kubernetes。
在生產環境中,40%的受訪者運行了2-5個Kubernetes叢集,執行1個叢集的有22%,6-10個叢集的有14%,執行叢集數超過50個的受訪者公司為13%(2017.12資料為9%)。
在Kubernetes所執行的平臺環境方面,51%的受訪者執行在AWS(上期資料為57%),企業自有資料中心伺服器有37%(上期資料為51%),谷歌雲平臺從上期的39%下降到了32%,微軟Azure從23%降至20%,OpenStack從22%降至16%,然而,執行在VMware平臺上的卻從1%大幅升至15%。以下圖示展現了受訪者的Kubernetes所部署的平臺和容器所部署平臺的對比。
當採用本地部署時,大多數受訪者都趨向於選擇的環境和所選比例為:Minikube(45%),Docker Kubernetes(39%),on prem Kubernetes installations(30%)。
此外,我們還問詢了受訪者在管理應用程式的各個方面所採用的工具:
首選的打包工具是Helm,佔比68%,其次是Kubernetes內建的打包功能。
自動伸縮的應用情況,64%的受訪者採用了自動伸縮無狀態應用,其次是Java應用(45%),然後是任務/佇列處理應用(37%)。未採用自動伸縮技術的受訪者,可能是還沒有這個功能的應用意識或者不希望在目前對自有的工作負載採用自動伸縮技術。
Kubernetes的入口提供方應用最多幾位依次是:Nginx佔比64%(上期資料57%),HAProxy佔29%,F5佔15%(上期資料11%)和Envoy佔比15%(上期資料9%)。
受訪者向叢集外(如internet或其他虛擬機器)暴露服務的首要方式是透過負載均衡器(67%)。其次是L7 ingress(39%)和整合第三方負載均衡器提供33%。
在Kubernetes內部,受訪者進行多個團隊間的隔離,使用最多的技術是名稱空間(Namespaces)佔比71%,其次是獨立的叢集(51%),僅僅採用標簽的為(15%)。
受訪者進行Kubernetes應用隔離採用名稱空間(Namespaces)佔比78%,其次是獨立的叢集(50%),僅僅採用標簽的為(21%)。
雲原生專案有哪些優勢呢?受訪者提及最多的3個理由是:
用於生產環境和評估中的CNCF雲原生專案分佈情況:
資料顯示,許多CNCF專案在生產環境中的使用較我們上一次的調查有顯著的提升。例如容器服務由18%升至45%;CoreDNS由7%升至36%;Envoy由4%升至24%;Fluentd由38%升至57%; gRPC由18%升至45%;Jaeger由5%升至25%,Linkerd由3%升至16%,以及OpenTracing由8%升至21%。就平均值看,CNCF專案在生產環境的應用較上一次調查有200%以上的提升。
受訪者正在評估中的CNCF專案數同樣較上期調查增長明顯。例如容器服務由22%升至55%;CoreDNS由14%升至64%;Envoy由26%升至74%;Fluentd由22%升至43%; gRPC由16%升至55%;Jaeger由15%升至75%,Linkerd由15%升至84%,以及OpenTracing由25%升至80%。就平均值看,CNCF專案評估較上一次調查增長了372%。
CNCF新開發的專案也有很高的關註度,受訪者重點評估的專案如SPIRE(94%)、TUF(93%)、Open Policy Agent(92%)、Vitess(92%)和SPIFEE(92%)等,關註比值都非常高。
雲原生技術改變了企業設計,構建應用的方式,挑戰也是無法避免的。受訪者反饋所面臨的挑戰主要有:
-
研發團隊的文化轉變:41%
-
複雜度:由35%提高到40%
-
培訓不足:40%
-
安全性:由43%降到38%
-
監控:由38%降到34%
-
儲存:由41%降到30%
-
網路:由38%降到30%
對於這些挑戰,有兩個顯著的變化。首先,本次調查,雖然這是我們第一次明確詢問開發團隊的文化變化,但它卻被認為是使用和部署容器中的最大挑戰。其次,缺乏培訓是問卷選項以外的挑戰。儘管CNCF在過去的一年裡在Kubernetes培訓上進行了重度投入,措施包括免費和付費課程,以及為Kubernetes管理員和應用程式開發人員提供認證。因此,隨著專案的發展,我們將繼續投入更多的培訓資源開展新專案。
其餘的主要挑戰與我們過去的調查基本是一致,但是隨著有更多的資源和工具用於解決面臨的問題,這些選項的被選比例在持續下降。
同時,有一個有趣的現象是,隨著雲原生儲存專案應用的增長,儲存和網路作為挑戰的被選比例呈下降趨勢。雲原生儲存專案的應用情況如下:
-
Rook:生產環境應用的受訪者佔比11%,正在評估中的受訪者佔比89%(上期調查29%)。
-
Minio:生產環境應用的受訪者佔比27%,正在評估中的受訪者佔比73%(上期調查28%)。
-
OpenSDS:生產環境應用的受訪者佔比16%,正在評估中的受訪者佔比84%(上期調查分別為7%和14%)。
-
REX-Ray:生產環境應用的受訪者佔比18%,正在評估中的受訪者佔比82%。
-
Openstorage:生產環境應用的受訪者佔比19%,正在評估中的受訪者佔比81%(上期調查分別為31%和36%)。
在本次調查中,我們仍然持續跟進無伺服器技術的增長情況。38%的組織當前在使用無伺服器技術(上期同型別資料為31%)。其中32%是採用支援平臺,6%是採用安裝的軟體實現。
與上期資料的41%相比,仍有37%的受訪者沒有採用無伺服器技術,但有另外的26%的受訪者表示將在未來的12-18個月內計劃採用。
-
Kubeless:42%,上期資料2%
-
Apache OpenWhisk:25%,上期資料12%
-
OpenFaas:20%,上期資料10%
-
AWS Lambda服務:70%
-
Google Cloud Functions:25%,上期資料13%
-
Azure Funcitons:20%,上期資料12%
隨著無伺服器技術的使用增長,受訪者對無伺服器技術專案CloudEvents表現出了濃厚的興趣,80%的受訪者為我們評估了這個專案,還有21%的人在生產中使用它的技術。CloudEvents是CNCF無伺服器工作組所組織的成果,它旨在建立一個以通用的方式描述事件資料的規範。
對於剛剛涉足雲原生專案並期望學習更多相關知識的初學者,以下是受訪者學習雲原生技術的首要幾種方式:
20%的受訪者使用檔案來學習雲原生專案,這也是本次調查取用的首要資源。例如,SIG-Docs幫助維護的大量Kubernetes詳細檔案。這其中包括了從如何開始使用某個特定功能到以貢獻者身份參與專案的最佳方式等等的所有內容。每個CNCF專案在其網站上都有大量的檔案,可以點選https://www.cncf.io/projects/獲取。
12%的受訪者選擇參加KubeCon + CloudNativeCon,以瞭解更多他們正在使用的技術。KubeCon + CloudNativeCon集中了所有CNCF專案,並將來自開源雲原生社群的技術大咖聚集一堂,以進一步推動原生雲端計算的發展。這項活動每年在歐洲、中國和北美各舉行一次。
12%的受訪者會訪問CNCF網站和參加線上研討會。CNCF.io是所有雲原生專案的一個主要來源,提供包括近期活動、培訓、認證、部落格等等諸多主題的資訊。
CNCF線上研討會每週二上午10點到11點(PT)舉行。您可以檢視近期日程[1],並檢視往期線上研討會[2]的錄音和幻燈片。
有11%的受訪者會透過參加聚會和當地活動來瞭解雲原生技術。CNCF在我們會員體系下主辦了149個聚會,活動遍佈33個國家,涉及會員超過76000人。你可以點選這裡[3]檢視的你所在地的聚會。
您可以點選這裡[4]檢視近期CNCF和世界各地雲原生社群的活動,包括從會議到路演等等。
10%的受訪者透過Twitter獲取資訊。透過Twitter賬號,CNCF釋出專案、社群和基金會的新聞。讀者可以關註自己所喜歡的雲原生專案,點選這裡[5]可以找到這些Twitter串列(和相關的社交賬戶)。
-
https://www.cncf.io/events/?tribe_paged=1&tribe;_event_display=list&tribe-bar-search;=webinar
-
https://www.cncf.io/community/recorded-events/
-
https://www.meetup.com/pro/cncf/
-
https://www.cncf.io/events/
-
https://twitter.com/CloudNativeFdn
原文連結:https://www.cncf.io/blog/2018/08/29/cncf-survey-use-of-cloud-native-technologies-in-production-has-grown-over-200-percent/
Kubernetes應用實戰培訓將於2018年10月12日在深圳開課,3天時間帶你係統學習Kubernetes。本次培訓包括:容器基礎、Docker基礎、Docker進階、Kubernetes架構及部署、Kubernetes常用物件、Kubernetes網路、儲存、服務發現、Kubernetes的排程和服務質量保證、監控和日誌、Helm、專案實踐等,點選下方圖片檢視詳情。
長按二維碼向我轉賬
受蘋果公司新規定影響,微信 iOS 版的贊賞功能被關閉,可透過二維碼轉賬支援公眾號。
微信掃一掃
使用小程式