12月9日,深信服容器云產品研發(fā)部研發(fā)負責人Jacky在信服云《云集技術學社》系列直播課上進行了《DevOps技術原理與實踐》的分享,詳細介紹了DevOps技術的發(fā)展、開發(fā)中的關鍵技術、相關問題和注意點。以下是他的分享內容摘要,想要了解更多可以關注“深信服科技”公眾號觀看直播回放。
看點一:DevOps全景
在軟件工程的發(fā)展中,開發(fā)模式從最開始瀑布模式、敏捷模式到現(xiàn)在把敏捷中的運維和開發(fā)串起來形成的DevOps模式。軟件技術架構從最開始的單體架構、到分層架構再到現(xiàn)在的微服務架構。交付方式也從原來上線一個業(yè)務部署在物理機上,到部署在虛擬機上,然后到當前可能更多的部署在容器里面?;A設施也從原來建立機房的數(shù)據中心,到只關注一個云主機,到現(xiàn)在用戶更關注的是東西怎么發(fā)布到云上。
開發(fā)模式、軟件架構、交付方式和基礎設施的發(fā)展雖然是獨立的,但是在特定時期又相互交織。例如,在DevOps環(huán)境下,常用的部署方式是容器的方式,應用架構是微服務的架構,基礎設施是云。
不同企業(yè)的DevOps模式是不同的。DevOps一般是從組織、技術、流程三個方面發(fā)揮作用,大致上都會有開發(fā)人員、版本控制系統(tǒng)、構建服務器、工件庫、代碼倉庫、包管理器、自動化案例庫、測試環(huán)境、預發(fā)布環(huán)境、生產環(huán)境、監(jiān)控系統(tǒng)、流水線等部分。組織是保證,技術是推動DevOps前進的核心生產力,流程是準則。最終實現(xiàn)文化升級,實現(xiàn)學習型和使命型的文化。
看點二:Devops時代軟件開發(fā)關鍵技術
DevOps時代下,有著6項軟件開發(fā)的關鍵技術。
流水線:流水線將各個分散的人物流串起來,形成一個自動化的工作流。流水線是DevOps的核心。常用的流水線實現(xiàn)有:Jenkins、Travis CI、CruiseControl、Buildbot、Apache Gump、Cabie、gitlab。目前業(yè)界比較常用的流水線是Jenkins。深信服云原生流水線的實現(xiàn)則主要是基于k8s架構在云原生平臺上去構建流水線的管理工具。
云原生平臺:作為DevOps的載體,云原生平臺是DevOps的必要條件,它管理著多云環(huán)境下的K8s集群和云平臺。以容器技術為核心的云原生平臺為DevOps插上了翅膀,通過構建完善的PaaS能力或中臺,能大大提升DevOps的效率。
微服務:當應用系統(tǒng)龐大到需要十幾個獨立業(yè)務才能完成,在這種情況下必須把業(yè)務拆成足夠小的細顆粒才行,微服務通過自動化的方式讓每一個模塊都可以獨立運行、獨立維護、獨立治理。管理、度量、管控三位一體的微服務治理,讓DevOps在業(yè)務側流轉起來。
監(jiān)控:它是DevOps的晴雨表。沒有監(jiān)控,用戶就無法了解系統(tǒng)在線上的運行情況。監(jiān)控和告警是DevOps真正自動起來的保障。
測試和自動化:測試和自動化是從代碼分支管理時就已經運行。在構建環(huán)境時會進行靜態(tài)代碼掃描、編譯告警分析等操作。而到了測試環(huán)境,則針對功能、回歸、API、UI等多方面進行測試保證集成功能可以發(fā)布。預發(fā)布時,還要進行極個別的動工測試、持續(xù)壓力測試、回歸測試、灰度/金絲雀和演練。最終發(fā)布到生產環(huán)境時會進行流量治理和運用混沌工程注入故障檢測系統(tǒng)穩(wěn)定性。測試和自動化是DevOps成功與否的指標。
開源社區(qū):DevOps之所以屬于敏捷的一個延伸,是因為它小步快跑的思路跟敏捷其實是一致的,只是DevOps把線上和線下這塊拉通了。DevOps目的是形成一個很小的作戰(zhàn)單元,更快地去反映和解決問題。實現(xiàn)這個目的的唯一路徑是使用更加先進的工具,開源社區(qū)正好就給它提供了這些工具。
看點三:DevOps的問題和注意點
關于DevOps,Jacky在直播課上介紹了三點注意事項:
安全問題:近幾年,安全左移成為了業(yè)界共識,即從開發(fā)階段就要開發(fā)安全系統(tǒng)。DevSecOps要求從一開始就要考慮應用和基礎架構的安全性。
混沌工程:通過在生產分布式系統(tǒng)上進行實驗,主動找出脆弱環(huán)節(jié),從而使得系統(tǒng)真正可靠起來?;煦绻こ膛c常用的微服務治理結束相結合,實現(xiàn)運行狀態(tài)的真正高度可用。
團隊建設:DevOps轉型到最后是文化的轉型??低碚摫砻鬈浖O計的架構反應了團隊的組織和溝通架構。DevOps實際上是一場自上而下的組織變革,必須有組織保障,因此團隊建設至關重要。
還想學習云計算的更多干貨嗎?敬請鎖定下期直播,云集技術學社還將邀請更多的專家,分享他們對云計算技術的理解和實踐經驗。
(免責聲明:本網站內容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網站出現(xiàn)的信息,均僅供參考。本網站將盡力確保所提供信息的準確性及可靠性,但不保證有關資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。
任何單位或個人認為本網站中的網頁或鏈接內容可能涉嫌侵犯其知識產權或存在不實內容時,應及時向本網站提出書面權利通知或不實情況說明,并提供身份證明、權屬證明及詳細侵權或不實情況證明。本網站在收到上述法律文件后,將會依法盡快聯(lián)系相關文章源頭核實,溝通刪除相關內容或斷開相關鏈接。 )