NO IMAGE

本文源於時速雲CEO黃啟功的一次線上分享,主題為《容器雲平臺在企業中的落地實踐》。文章主要從以下四個維度對Docker容器技術的發展及落地實踐進行了分析和介紹,在此梳理,以饗各位。

Topic:

  • 為什麼Docker會這麼火,它給我們帶來了什麼
  • Docker容器雲對目前雲端計算行業的影響
  • 傳統企業如何落地Docker容器技術
  • 時速雲某製造業客戶如何借力容器技術打造新一代的雲原生應用平臺

以下為線上分享全文:

我們先來看第一個問題,為什麼Docker會這麼火,它給我們帶來了什麼?

Docker容器技術應該是近年來最火熱的一個開源技術,它真正改變了企業應用從開發、構建到釋出、執行的整個生命週期。

通俗的講,Docker定義了一套應用從開發構建、部署以及執行的標準體系,它其實就像我們最早之前的集裝箱的發明,它使得應用的交付管理變得非常簡單。因為大家都知道,虛擬化是雲端計算的基石,其實基於容器技術的虛擬化改變了傳統意義上的虛擬化,從而會對整個雲端計算產生了很深遠的影響。

隨著谷歌、亞馬遜、微軟,還有國內的BAT、華為等雲端計算廠商加入對Docker開源技術的投入,整個圍繞Docker的市場其實被全面引爆了,出現了眾多像時速雲這樣圍繞容器技術的創業公司,以及生態圈。

據統計,截至今年年初,全球總共有將近50多萬個應用已經Docker容器化,兩年時間內,實現了3000%的增長,這一發展速度其實早已經超過了以前傳統的像openstack等這些虛擬化技術。

基於Docker的容器服務,我們稱之為CaaS,就是容器級服務,它涵蓋了IaaS跟PaaS兩者的優勢,它其實是一種更輕量級的虛擬化,可以解決應用的部署、開發運維、微服務這些問題。

而且我覺得未來的SaaS也都將會容器化,因為容器比虛擬機器更輕量靈活,而且能夠更快的加速業務的交付,所以我認為,未來Docker對SaaS的交付也會帶來一個質的改變。

Docker主要有以下幾個應用場景:

  • 開發運維,它打破了開發和運維之間的壁壘,提高了整個業務應用從開發、構建、部署、整合、執行等整個生命週期的效率。具體來講,就是它會通過一個標準的Docker映象作為應用的一個交付件;
  • CI/CD,翻譯成中文叫持續整合跟持續部署,它可以讓開發人員快速的開發和測試應用,同時達到一個目的,就是讓整個業務應用能夠更快速的交付;
  • 微服務,微服務相對於傳統的單體結構,有非常多的好處。它能夠把單體單塊結構拆分成多個元件,每個元件執行在獨立的容器內,這樣對於容災容錯以及高併發都會有非常大的好處;
  • 提高系統的資源利用率, Docker容器的執行不需要額外的hypervisor支援,它是核心級的虛擬化,可以實現更高的效能以及效率,這也是很多像傳統的資料中心廠商看中Docker的一個原因。

其他的應用場景包括像混合雲,比如中介軟體,SaaS應用,跟OpenStack的結合,以及資料中心這些都是比較典型的一些應用場景。

接下來我們看看第二個問題,Docker容器雲對目前雲端計算行業的一個影響。

Docker作為新一代的雲端計算技術,其實在整個行業非常知名而且已經風靡全球,它為整個IT領域輸出一個集裝箱的概念,正如集裝箱在運輸領域的作用,它可以把原來一些非標準的東西統一放在一個集裝箱裡,讓它能夠加速整個運輸的效率。

這正如我們的軟體世界領域一樣,就是說我們會把不同的軟體架構,技術棧統一封裝在一個以容器為單元的集裝箱裡去做管理跟執行,這樣會大大提高我們整個軟體交付的效率。

對於企業來說,通常希望產品具有兩個特點:

  • 快速交付,我們能夠非常快速的響應市場或客戶需求的變化;
  • 業務能夠永遠線上,比如說面對使用者爆發式的增長,以及頻繁的軟體更新,能夠保證業務持續,不會被中斷。

隨著雲端計算的發展, SaaS已經解決了我們對計算資源,儲存、網路這些基礎設施的需求,我們開始對開發運維一體化、持續整合、持續交付、以及微服務等產生迫切需求。因為隨著市場的變化,我們往往需要整個業務能夠隨著市場的變化實現快速交付,這樣的需求會變得越來越迫切。

通過一種以應用為中心的新一代雲平臺,使用者不需要關心資源的申請,軟體的部署和安裝,這種自動化的運維全部交給了雲平臺,可以真正讓企業聚焦在自己的業務本身,所以這也是Docker給大家帶來的便利,Docker的誕生其實在整個應用交付,以及在開發運維方面,都帶來了一些實質的變化。

Docker容器雲將會給整個虛擬化開發運維、微服務、持續整合與持續交付,傳統的中介軟體以及我們的SaaS帶來一個很深刻的變化。 我曾經說過,Docker將會成為主流,未來SaaS應用也基本上都會容器化。應用可以不再執行在一個固定的虛擬機器中,而是以這種輕量級可擴充套件的容器為執行單元。

Docker會對目前的雲端計算行業造成一個衝擊,比如我們可以看到現在OpenStack、OpenShift都在擁抱或者融合Docker,Docker同時也在打造自己的生態圈,比如說定義自己的基礎設施,比如說我們可以看到有基於輕量級的作業系統,比如說CoreOS, rancher這樣的公司出來,所以我們可以看到這是一個跟舊有的雲端計算行業相互融合、相互進步的一個方向。

我們認為Docker未來會出現一個爆發式的增長,而且越來越多的傳統行業會擁抱Docker,然後利用基於Docker容器技術的PaaS雲平臺去加速業務應用的交付,繼而實現業務的增長和創新。

第三個問題是傳統企業如何落地Docker容器技術?

我們知道網際網路創業都講究痛點,做企業級市場也是一樣,我們只有找到企業的痛點,然後很好的幫助客戶去解決,然後客戶才會願意買單,目前企業在應用運維管理這些方面,主要面臨以下幾個方面的痛點:

  • 應用迭代緩慢,業務交付經常被推遲;
  • 傳統的單體架構應用難以維護和擴充套件;
  • 應用的運維管理比較複雜。

從時速雲實際落地的客戶案例來看,目前我們主要從開發運維、微服務、運維管理這幾個角度去切入,然後針對企業如何落地Docker容器雲,我們主要分為四個步驟:

第一步 是可以把我們傳統的應用容器化,如果是單體架構的應用,可以考慮拆成微服務的模式,然後讓業務應用整個以容器為單元去執行。

把應用容器化以及拆分成微服務架構可以帶來非常多的好處:

  • 支援多種技術棧的應用,比如可以選擇最合適的技術去開發業務:
  • 提高資源的利用率,以及支援自動的彈性伸縮擴充套件,比如說快速容災容錯等等。

第二步是加速開發構建部署的過程,也就是我們所說的CI/CD,持續整合跟持續交付。DevOps全流程交付的意思是說,我們可以從業務應用開發,比如說通過Gitlab提交一段程式碼能夠自動的觸發整個程式碼庫的自動構建,它會push到統一的企業映象倉庫,我們根據之前定義的部署規則,它可以自動部署到測試,或者是生產環境。

Devops全流程交付能夠讓我們從開發、構建、整合、部署、執行等整個應用的生命週期變成自動化的方式。

第三步和第四步我們可以應用一些更高階的服務,比如應用編排、負載均衡,彈性伸縮,還有大資料,中介軟體等等。

最後和大家分享一個時速雲的實際落地案例,某製造行業客戶如何借力容器技術打造新一代PaaS雲平臺。

該企業客戶的IT業務十分複雜,它的IT業務主要是由第三方外包服務商提供,整個IT部門主要是做系統業務應用的運維管理,所以不同的外包商提供的服務,給IT部門的運維管理造成了非常大的困難。

 

20161101232843

 

針對這一客戶對運維管理和專案交付的需求,我們在網路隔離,防火牆模式下去部署系統,然後時速雲提供了多種網路的部署模型,並且以分層架構的模式去部署容器叢集管理系統。

下面這張圖是針對客戶的三層網路架構專門做的一個部署,時速雲容器雲平臺的一個網路模型圖。

 

20161101232850

 

我們通過這種基於Docker的PaaS雲平臺,給客戶提供了一個包含DevOps、開發運維、微服務架構、CI&CD、運維管理等在內的針對性的解決方案,從而讓客戶能夠輕鬆的管理大量的外包服務開發商,並且讓業務實現快速交付。

原文:容器雲平臺在企業中的落地實踐