DevOps时代,企业数字化转型需要强大的工具链
伴隨時代的飛速進(jìn)步,中國的人口紅利帶來了互聯(lián)網(wǎng)業(yè)務(wù)的快速發(fā)展,巨大的流量也帶動了技術(shù)的不斷革新,研發(fā)的模式也在不斷變化。傳統(tǒng)企業(yè)紛紛效仿互聯(lián)網(wǎng)的做法,結(jié)合DevOps進(jìn)行數(shù)字化的轉(zhuǎn)型。
通常提到DevOps,大家浮現(xiàn)在腦海里面可能是研發(fā)規(guī)范、持續(xù)交付、敏捷迭代相關(guān)的一系列事項,組織上推行打破部門墻,文化上推行活潑、皮實、互助等方式促進(jìn)效能提升。但是,除了這些,還需要更多的工具、技術(shù)來讓這一切真正的落地。
所謂的DevOps,指的是開發(fā)運維一體化,也被稱之為開發(fā)運營一體化、開發(fā)測試運維一體化,現(xiàn)在有些領(lǐng)域也衍生出來更多提法:開發(fā)安全運維一體化(DevSecOps)。總之,都是在致力于產(chǎn)品從開發(fā)到落地的整個生命周期過程管理。
我們目前也處于數(shù)字化轉(zhuǎn)型的新時期,面對DevOps的具體落地,大家需要了解這幾樣新時代神器:Docker、Kubernetes、Jenkins、Spring Cloud、Service mesh.他們是DevOps技術(shù)棧的典型代表,也可以說必不可少的支撐技術(shù),我們來悉數(shù)一下這些神器們。
Docker的出現(xiàn)可謂是極大的推動了DevOps的發(fā)展,讓DevOps重新燃起新的青春。Docker最大的顛覆在于鏡像的理念,將應(yīng)用所需的依賴環(huán)境,全部隔離起來,讓應(yīng)用的部署插上了翅膀。可以說基于容器來構(gòu)建服務(wù)棧的方式變得非常優(yōu)雅,遠(yuǎn)遠(yuǎn)超越了自動化腳本的方式。
Kubernetes代表了新一代云計算熱潮的PaaS平臺技術(shù)方案,可以簡單的類比為OpenStack、CloudFoundry的替代方案(當(dāng)然還是有很多不同之處的)。作為容器集群管理系統(tǒng),為容器化的應(yīng)用提供部署運行、資源調(diào)度、服務(wù)發(fā)現(xiàn)和動態(tài)伸縮等一系列功能,可以將容器編織成一個大大的云。
Spring Cloud,這個名字起的可以說,非常契合時代發(fā)展的脈絡(luò)!在很多場合,很多人眼里,Spring Cloud就是微服務(wù)!雖然這么理解有失偏頗,但他提供的眾多特性,確實解決了微服務(wù)研發(fā)過程中的很多痛點,是微服務(wù)架構(gòu)的集大成者。這是繼Dubbo RPC框架以后的新秀,也迅速的深入人心,幾乎成了業(yè)界寫微服務(wù)代碼的主要框架。
Docker容器的出現(xiàn),從另一個角度來講,極大的促進(jìn)了微服務(wù)的發(fā)展,每一個容器可以形象的打包為一個個的小盒子,而微服務(wù)就是裝在小盒子里面的寶藏,每一次的服務(wù)調(diào)用,就像是在散發(fā)光芒。
容器技術(shù)的火爆,徹底的顛覆了PaaS平臺的構(gòu)建方式,企業(yè)進(jìn)行數(shù)字化落地也有了更好的選擇。尤其是彈性伸縮、自定義網(wǎng)絡(luò)、環(huán)境隔離等特性,加上CI、CD過程可以結(jié)合Docker鏡像和Compose編排,使得新一代PaaS平臺脈絡(luò)也更加清晰,應(yīng)用從源碼態(tài)到運行態(tài),一條鏈路就可以完美跑下來。以下是可供參考的基于DevOps工具鏈的平臺架構(gòu):
有了上面的這些神器,一個基于DevOps理念的PaaS平臺就基本落地了,但人類不止于這點小進(jìn)步,在服務(wù)調(diào)用的層面不斷開拓創(chuàng)新,提出了更優(yōu)秀先進(jìn)的提升方案,于是就有了Service Mesh。
Service Mesh 又譯作“服務(wù)網(wǎng)格”,作為服務(wù)間通信的基礎(chǔ)設(shè)施層,是云原生應(yīng)用的必要支撐,可以將它比作是應(yīng)用間的TCP/IP,負(fù)責(zé)應(yīng)用間的網(wǎng)絡(luò)調(diào)用、限流、熔斷和監(jiān)控,可以將網(wǎng)絡(luò)功能從代碼中剝離出來。采用 Service Mesh, 你不用在服務(wù)代碼中實現(xiàn)用于可靠通信的模式如斷路、超時等,類似地,Service Mesh 也提供了服務(wù)發(fā)現(xiàn)、服務(wù)可見性等其他功能。以下是Service mesh的架構(gòu)圖:
可以說Service Mesh經(jīng)歷了幾個發(fā)展階段,也代表了以應(yīng)用為中心的網(wǎng)絡(luò)通信進(jìn)步:
1.從最原始的主機(jī)之間直接使用網(wǎng)線相連;
2.網(wǎng)絡(luò)層的出現(xiàn);
3.集成到應(yīng)用程序內(nèi)部的控制流;
4.分解到應(yīng)用程序外部的控制流;
5.應(yīng)用程序的中集成服務(wù)發(fā)現(xiàn)和斷路器;
6.出現(xiàn)了專門用于服務(wù)發(fā)現(xiàn)和斷路器的軟件包/庫,如 Twitter 的 Finagle 和 Facebook 的 Proxygen,這時候還是集成在應(yīng)用程序內(nèi)部;
7.出現(xiàn)了專門用于服務(wù)發(fā)現(xiàn)和斷路器的開源軟件,如 Netflix OSS、Airbnb 的 synapse 和 nerve;
8.最后作為微服務(wù)的中間層 service mesh 出現(xiàn);
可以看到,技術(shù)界發(fā)展到這個時期,針對DevOps落地這件事,實現(xiàn)工具已經(jīng)很豐富了,可以說層出不窮,不斷的刷新著我們的工具鏈。企業(yè)在數(shù)字化轉(zhuǎn)型的過程中,也可以根據(jù)團(tuán)隊的實力,選擇適合自己的工具。當(dāng)然,真正的轉(zhuǎn)型成功,是需要工具、規(guī)范、文化、技術(shù)、業(yè)務(wù)等全方位配合,匹配到企業(yè)的發(fā)展節(jié)拍,創(chuàng)造新的業(yè)務(wù)增長奇跡。
轉(zhuǎn)載于:https://blog.51cto.com/14084875/2345382
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的DevOps时代,企业数字化转型需要强大的工具链的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Azure实践之如何批量为资源组虚拟机创
- 下一篇: 一个小菜鸟给未来的菜鸟们的一丢丢建议