作者:北京老李:DevOps布道師吼畏、IT管理咨詢師。EXIN授權EXIN DevOps Master(大師級)講師(首批全國十名)嘁灯、首批ITIL Expert講師泻蚊、EXIN授權EXIN Agile /Lean IT 認證講師、PMP丑婿、Prince2專家級性雄、EXIN云安全管理没卸、ISO20000 LA、ISO27001 LA等多項認證秒旋。先后在北京约计、上海、廣州等地主導軟件開發(fā)迁筛、系統(tǒng)集成煤蚌、咨詢服務等工作,主要研究方向云安全管理细卧、DevOps落地實施尉桩。
1.你理解的DevOps是什么?
參考回答:DevOps(Development和Operations的組合詞)是一組過程贪庙、方法與系統(tǒng)的統(tǒng)稱蜘犁,用于促進開發(fā)(應用程序/軟件工程)、技術運營和質量保障(QA)部門之間的溝通止邮、協(xié)作與整合这橙。融合了精、敏捷导披、持續(xù)交付屈扎、輕量級的ITSM(ITIL4、The Toyota way盛卡、chatops助隧、AIOps),通過文化滑沧、自動化并村、精益、度量滓技、共享等管理實踐哩牍,實現(xiàn)了業(yè)務價值的持續(xù)交付,也可以稱做敏捷2.0版令漂。
DevOps有很多反模式膝昆,也有很多DevOps的神話(myths)。其中包括:DevOps是一個過程叠必、敏捷= DevOps荚孵、我們需要一個單獨的DevOps組、Devops會解決我們所有的問題纬朝、DevOps是指開發(fā)人員管理產品收叶、我們不能做DevOps因為我們已經很牛了等等內容。
DevOps的核心內容:CALMS
2.敏捷開發(fā)與DevOps的關系
參考回答:敏捷開發(fā)被用作瀑布開發(fā)實踐的替代方法共苛。在敏捷中判没,開發(fā)過程更加迭代和增量蜓萄,在開發(fā)的每個階段都有更多的測試和反饋,而不是瀑布開發(fā)的最后一個階段澄峰。DevOps2.0是敏捷過程的解決最后一公里的綜合方法嫉沽。沒有敏捷管理方法就沒有DevOps。
EXIN pre-Master課程:DevOps基礎實踐方法Scrum俏竞、Lean IT
3.DevOps工程師的職責是什么?
參考回答:DevOps工程師與敏捷開發(fā)團隊緊密合作绸硕,站在業(yè)務價值視角,拉動IT從業(yè)務需求到運營交付胞此,確保通過高質量(JKK)的自動化測試,實現(xiàn)持續(xù)集成和持續(xù)交付等IT技術功能所需的環(huán)境臣咖。DevOps工程師必須經常與開發(fā)保持聯(lián)系(SRE模式跃捣、豐田模式漱牵、持續(xù)交付模式、協(xié)作模式)疚漆,使環(huán)境中所有需要的部分都能無縫地工作酣胀,實現(xiàn)高質量的增量迭代∪⑵福可以擴展說說相關工具闻镶。
DevOps元素表
4.DevOps可以與ITIL最佳實踐融合?
參考回答:DevOps實踐可以與ITIL流程兼容丸升∶可以支持更短的交付周期,提升業(yè)務的前置時間和更高的部署頻率狡耻,通過DevOps可以解決配置管理的相關的問題和版本管理過程的快速反饋墩剖。當應用DevOps中的輕量級ITSM,使敏捷的組織更加高效夷狰。
DevOps可以與ITIL完美融合
5.DevOps完美實現(xiàn)一定要用容器嗎?
參考回答:Docker 是容量實現(xiàn)的一種技術岭皂,Docker 是一個開源的應用容器引擎,讓開發(fā)者可以打包他們的應用以及依賴包到一個可移植的容器中沼头,然后發(fā)布到任何流行的 Linux 機器上爷绘,也可以實現(xiàn)虛擬化。DevOps應用容器进倍,可以完美實現(xiàn)DevOps2.0所需要的功能土至。
容器是輕量級虛擬化的一種形式,比chroot重猾昆,但比虛擬化的功能實現(xiàn)輕陶因。它們在使用與主機相同的內核時提供進程之間的隔離,并在內核中提供cgroups功能毡庆。? 每個VM實例化都需要啟動一個完整的OS坑赡。vm占用大量系統(tǒng)資源烙如。這很快就會增加大量的RAM和CPU周期。容器主機使用linux內核的進程和文件系統(tǒng)隔離特性毅否。
CoreOS是為運行容器而設計的linux發(fā)行版亚铁,主要使用自己的rkt格式,但也支持其他格式螟加。它最初基于ChromeOS并支持Docker徘溢。替代它的是canonical的ubuntu snappy或red hat enterprise linux原子主機。
6.持續(xù)集成做為最基礎的DevOps功能具有哪些特性?
參考回答:大師Martin Fowler對持續(xù)集成是這樣定義的:持續(xù)集成是一種軟件開發(fā)實踐捆探,即團隊開發(fā)成員經常集成他們的工作然爆,通常每個成員每天至少集成一次,也就意味著每天可能會發(fā)生多次集成黍图。每次集成都通過自動化的構建(包括編譯曾雕,發(fā)布,自動化測試)來驗證助被,從而盡快地發(fā)現(xiàn)集成錯誤剖张。許多團隊發(fā)現(xiàn)這個過程可以大大減少集成的問題,讓團隊能夠更快的開發(fā)內聚的軟件揩环。
持續(xù)集成服務器的功能是持續(xù)集成不同開發(fā)人員正在進行的提交工作屡限,實現(xiàn)代碼存儲庫的所有變更遇八,并檢查編譯單元測試、集成測試錯誤,應用敏捷XP方法逝撬,可以實現(xiàn)需要每天構建幾百次到上千次(業(yè)務需求)耘纱,在每次提交之后废登,實現(xiàn)高質量的代碼集成輸出工作橘原。
7.應用DevOps推薦的腳本語言有哪些?
參考回答:《鳳凰項目 一個IT運維的傳奇故事》指出:轉變主要不是基于自動化貌亭,相反柬唯,這種不可思議的改進來自于調整關于工作系統(tǒng)的策略和控制半成品的策略,確保有一個高效的跨職能團隊圃庭,讓所有事情都為約束點服務锄奢,以及管理好工作交接。
DevOps不能缺少自動化剧腻,自動化不能缺少腳本拘央。但也應注意這不是成功的所有,是必須之路之一书在。腳本語言又被稱為擴建的語言灰伟,或者動態(tài)語言,是一種編程語言,用來控制軟件應用程序栏账,腳本通常以文本(如ASCII)保存帖族,只在被調用時進行解釋或編譯。就腳本語言而言挡爵,建議是越簡單越好竖般。但,腳本語言本身并不像理解設計模式和開發(fā)范例(如過程式茶鹃、面向對象或函數(shù)式編程)那樣重要涣雕,因為我們要關注業(yè)務與業(yè)務價值。
目前闭翩,有幾種腳本語言可用挣郭,什么語言最適合DevOps方法?沒有完美的回答,但在今天2019年來看疗韵,如果你在使用Ansible那么Python語言是最好的兑障,如果你在Chef那么Ruby是最好的。如果你在用HP opsware或BMC bladelogic,當然廠商的腳本語言在你已有廠商產品的前提下是最好的伶棒,我們要學會“適境而為”旺垒,不要想著總很家里買新衣服彩库,而家里的衣柜都沒有地方了肤无,并且服務器的運行壓力越來越大。
不是哪一個腳本語言好骇钦,而是要應用保證現(xiàn)有財務投資的前提下宛渐,什么最合適,這才是關鍵眯搭。
8.配置管理工具在devops中的作用是什么?
參考回答: 配置管理工具是指支持完成配置項標識窥翩、版本控制、變化控制鳞仙、審計和狀態(tài)統(tǒng)計等任務的工具寇蚊。 自動化的配置管理工具可以幫助DevOps實現(xiàn)持續(xù)流水線的技術支持基礎。使用CM工具棍好,可以幫著管理與存儲關于系統(tǒng)仗岸、軟件、測試相關的版本和構建及配置信息借笙,并提供軟件和測試軟件之間的可跟蹤性扒怖。成功的DevOps從配置管理開始。
例如:Puppet是全面配置管理領域的標準工具之一业稼。 Puppet 基于 Ruby 開發(fā)盗痒。
例如: Chef 是一個配置管理開源工具,Chef 作為 master-client 模式運行低散,需要一個單獨的工作站來控制 master 俯邓。Chef 基于 Ruby 開發(fā)骡楼。
例如:Ansible是一種開源工具,可以根據(jù)需要將其設置為 master-client 模式稽鞭。 基于 SSH , 不需要在遠程節(jié)點安裝任何代理君编。使用 YAML,應用Python語言川慌。
9.DevOps可以應用在AWS上嗎吃嘿?
參考回答: AWS提供了一組靈活的服務,旨在使公司能夠使用AWS和DevOps實踐以更高的速度和可靠性創(chuàng)建和交付產品梦重。這些服務簡化了調試和基礎設施管理兑燥、應用程序代碼部署、自動化軟件發(fā)布過程以及對應用程序和基礎設施性能的監(jiān)控琴拧。Amazon使用了AWS CodeCommit降瞳、AWS CodeDeploy、AWS CodePipeline等工具蚓胸,這有助于簡化devops,快速交付業(yè)務價值挣饥。
AWS:DevOps流水線與codePipeline
10.與CVS相比,Git的主要優(yōu)勢是什么?
參考回答:最大的優(yōu)勢是Git是分布式的沛膳,CVS是集中式的扔枫。CVS中的更改是按文件進行的,而Git中的更改(提交)總是引用整個項目锹安。Git提供的工具比CVS多得多短荐。功能對比
北京老李:CVS、SVN叹哭、GIT功能對比
11.什么是post mortem meetings忍宋?
參考回答:在這個會議上,我們討論出了什么問題风罩,應該采取什么步驟糠排,這樣失敗就不會再次發(fā)生。事后分析會議并不是要找出問題的癥結所在超升,而是要防止再次發(fā)生類似的工作入宦,和ITIL中的問題管理是相類似的管理方法。并應重新計劃新的設計基礎設施廓俭,以便盡可能減少停機時間云石。如果錯誤我們無法避免,那么我們應從錯誤中學習研乒,以提交IT整體的質量管理汹忠。
12.你如何在我公司實踐DevOps?
參考回答:作為一名DevOps工程師,我會對DevOps項目管理的管理目標宽菜、敏捷交付谣膳、持續(xù)集成進行管理,并從敏捷項目管理新三角《敏捷項目管理》出發(fā)铅乡,與團隊一起設定目標继谚,實現(xiàn)簡化的ITIL工作流,維護敏捷的DevOps管理范圍阵幸,研究和引入新的技術或框架花履,通過DevOps 流水線,實現(xiàn)從需求轉化為工作流從整體工具鏈進行全局優(yōu)化挚赊。
Lean IT:精益看板與精益領導力課程與DevOps
北京老李建議的實現(xiàn)DevOps管理路徑為三種:
實踐DevOps有多種路徑和方法诡壁,基于EXIN DevOps2.0課程體系,實現(xiàn)DevOps三種路徑的實現(xiàn),荠割,三條實現(xiàn)路徑分別是:
EXIN:三條DevOps實踐路徑
第一條從精益Lean IT看板出來妹卿,實現(xiàn)DevOps管理與DevOps流水線的管理與技術融合工作實踐。
第二條從敏捷scrum出發(fā)蔑鹦,實現(xiàn)DevOps管理與DevOps流水線的管理與技術融合工作實踐夺克。
第三條從輕量級的ITIL出發(fā),實現(xiàn)DevOps管理與DevOps流水線的管理與技術融合工作實踐嚎朽。
歡迎爬樓铺纽,看更多北京老李-DevOps相關內容,ITIL內容請關注”豆列“
https://www.douban.com/note/708968150/ DevOps Master課程總結:知否知否火鼻,應是DevOps肥ITIL瘦(送ITIL4前生今世)
https://www.douban.com/note/708218842/? DevOps Master課程總結:學習沒有捷徑(送DevOps安燈正確方法)
https://www.douban.com/note/694641377/ DevOps Master鳳凰項目沙盤總結:DevOps黃金三步法
https://www.douban.com/note/700603657/ DevOps Master鳳凰項目沙盤總結:履霜堅冰至室囊,轉型應自強不息
https://www.douban.com/note/693053178/ DevOps Master鳳凰項目沙盤總結:通過DevOps實現(xiàn)IT組織轉型
https://www.douban.com/note/689504940/ DevOps Master鳳凰項目沙盤總結:DevOps起始質量之獨孤九劍
https://www.douban.com/note/645016138/ DevOps鳳凰沙盤:一場精益敏捷探索之行
https://www.douban.com/note/629890513/DevOps鳳凰沙盤:一場百玩不厭的質量感悟
https://www.douban.com/note/630638887/DevOps課后總結之DevOps游戲系列-DevOps的獨孤九劍
https://www.douban.com/note/637665261/DevOps Master課程:回憶我與DevOps之父Patrick的交流
https://www.douban.com/note/647732431/ DevOps:10本DevOps推薦書及47個DevOps兼容工具
https://www.douban.com/note/647732431/ DevOps:10本DevOps推薦書及47個DevOps兼容工具
https://book.douban.com/review/9110485/ DevOps:轉型從正確地認知開始
https://www.douban.com/note/651734552/ DevOps:從I型人才到E型人才
https://www.douban.com/note/651734953/ DevOps:智能服務臺是企業(yè)不能缺少的基石
https://book.douban.com/review/8928323/ DevOps布道師:終身學習是終身成長的源動力
https://book.douban.com/review/8820627/ 《把讀到的知識轉化為能力三步法及完美學習的四步法》
https://www.douban.com/note/643862694/ DevOps Master課程:腳踏實地學Pre-Master,一步一個腳印成為DevOps Master
https://book.douban.com/review/8805640/ DevOps布道師為深度工作寫的序:深度工作是心身的一種修練方法
https://book.douban.com/review/8795275/ 咨詢基本功:咨詢顧問基本功之書面溝通及“補充大餐”
https://www.douban.com/note/643251358/ DevOps定義編年史:通過DevOps定義看DevOps發(fā)展
https://www.douban.com/note/637838681/ DevOps應用:光大銀行DevOps1.0到DevOps2.0研討會
https://www.douban.com/note/639093367/ DevOps應用:民生銀行IT一體化管理與自動化發(fā)展(1)
https://www.douban.com/note/638965340/ DevOps應用:工商銀行DevOps進行時
https://www.douban.com/note/696842302/ DevOps應用:工商銀行DevOps進行時(2018年)
https://www.douban.com/note/641427886/ DevOps應用:DevSecOps云下安全與云等保(云博會內容提前曝光)
https://www.douban.com/note/646007197/ 敏捷辯論
https://www.douban.com/note/655617439/ 敏捷服務管理:數(shù)字化轉型核心
https://www.douban.com/note/696148785/ DevOps Master課程總結:IT運維的昨天魁索、今天、明天(IT運維四大“坑”)
艾利·高德拉特? “在瓶頸之外的任何地方作出的改進都是假象盼铁,在瓶頸之后作出任何改進都是徒勞的粗蔚,而在瓶頸之前作出的任何改進則只會導致瓶頸處堆積更多的庫存∪幕穑”
【1】精益管理方法的術語
【2】高維度思考法
【附】高德拉特《目標》五個聚焦步驟:
第一步是確認約束點鹏控,直到確定那的確是整個部門層面的約束點,對非約束點的任何改進都只是幻覺肤寝,得不到實際任何價值当辐;
第二步是利用約束點,尋找突破這些約束的辦法鲤看,確保不讓約束點浪費任何時間缘揪,永遠不要讓約束點遷就別的資源而干等著,而是應該專注于IT運維部對當前所需完成工作中優(yōu)先級最高的那一項,一直都要這樣找筝;
第三步蹈垢,使企業(yè)或部門的所有其它活動服從于第二步中提出的各種措施;
第四步袖裕,具體實施第二步中提出的措施曹抬,使第一步中找出的約束環(huán)節(jié)不再是整個部門的約束點;
第五步急鳄,回到步驟1谤民,別讓惰性成為約束,持續(xù)不斷地改善疾宏;