全球頂級專家為你解讀:什麼是真正的 DevOps
編者按
本文是 Skytap 內容主編 Noel Wurst 對 DevOps Enterprise Summit (DOES)的不完全綜述,內容包括了 Noel 和一些與會嘉賓的思考,旨在勾畫 DevOps 當下的局勢,以及未來的趨勢。以及 DevOps 的真正價值——DevOps 正幫助越來越多的企業邁向非凡成功之路。本文系 OneAPM聯合高效運維聯合編譯整理。
以下為譯文:
正如 Elisabeth Hendrickson 的閉幕演講的標題「It’s all about feedback」,因此筆者也撰寫了自己的參會感,注以下斜體字是筆者參加演講時現場所記。
Day 1
Gene Kim 在主題演開幕詞中指出,對比2014年的600張售票,本次會議售票激增到1200張,而之所以形成這個局面,主要是因為 DevOps 當下已經切實預備運用於許多大型專案,全世界都在期盼從中獲取價值。
(重新)構建一個工程文化——Target 的 DevOps 實踐
關鍵人物:
Ross Clanton, Director
Heather Mickman,Senior Group Manager
Target 的 Ross Clanton 和 Heather Mickman 對「pre-DevOps」那個過程分享的直率令人感動。摘錄:
「Target 多年前就曾困惑於工程師的重要性。我們知道必須改變現狀……我們在 silos 中巢狀 silos ……單伺服器支撐需要十個團隊才能完成,而 IT 部門處於一片混亂,以至於大部分的開發流程都耗在等待佇列中。」
Ross 說:
「我們得到了很多稱讚,但這還只是剛剛開始——我們正從事著非常有意思的工作,但還有很長的路要走」。
Target 的發言奠定了本次會議的主題,不僅僅是分享其發展和運營團隊的成功,還講述了不久前的糟糕境況。
雖然很多人會說圍繞 DevOps 的原則已是舊談,但成功 DevOps 的舉措所帶來的收穫,讓整個過程中的挫折和失敗也都變得有意義。
企業 DevOps:由 Metrics、Empathy 和 Empowerment 所驅動的轉型過程
Jody Mulkey,Ticketmaster CTO
Jody 用足球來比喻:長久以來,開發和運維都被認為是功能相反的團隊。在足球場上,運維被視為防守,試圖阻止開發者(進攻)的射門。但運維其實也應該歸為進攻,盡一切努力給開發者爭取充足的時間來得分。
從2011年到2014年,Ticketmaster 的開發者人數增加230%,而運維人數只增加了12%。 Mulkey 卻說「這可不是好事」。
修復 bug 的平均時間以前是47分鐘,但現在是3.8分鐘。時下存在更多的挑戰,永遠需要修復錯誤,部門自視為是其他部門的對手,長時間等待。之所以老生常談,因為大多數企業都經歷著這些鬥爭。
Jody 的故事也非常有意思,他談到 Ticketmaster 如何成就「揹負著遺產前行」 ,以及 DevOps 是如何適用於傳統的大型機系統。
Ticketmaster 的售票引擎產生了25億的收入,儘管它首次提交程式碼是在1976年。正是這個系統和團隊的不懈努力支援著 Ticketmaster,使得修復 bug 的平均時間從47分鐘提升到如今的3.8分鐘。
USAA 和 IBM 的 DevOps 及創新
Michael Bueche, AVP IT Operational Excellence, USAA
Dibbe Edwards, VP Development, DevOps for Hybrid, IBM
當引入一個 DevOps 這樣的大型變革到企業時,建議一步步從小處開始,貪多嚼不爛。Michael Bueche 詳細地講述了 USAA 在推向市場前158天的歷程,及產品90天后部署敏捷方法的經歷,以及當前的每週目標。
「我們人類在確定行動或決定之前,會常常經歷一個非常糟糕的時期,以及在獲得結果前。把這種狀態比作‘熱爐’再恰當不過。試想,當你把手放在滾熱的爐子,要多久才能意識到疼痛?
並不需要一個星期。正如一個開發者在生產中出現 bug,而你直到6周後才發現這個問題,那麼找到責任人有多難?甚至即使你找到了,讓開發者回憶當時的問題和原因也很難。縮短反饋迴路非常有必要,也幫助行動對應其結果」——Michael Bueche
Dibbe 說:
「我們必須確保企業中有適用於 DevOps 計劃的可伸縮環境,同時還一直致力於尋求提高的方法。」
在 Michael 分享之前,筆者從來沒有聽說過「熱爐」這個比喻,的確非常適用於 DevOps、敏捷或現代化軟體交付。反饋迴路必須縮短,才能按時完成和防止生產過程的問題。
賦予開發/測試團隊可以按需獨立提供擴充套件性環境的能力,然後再更早更頻繁地進行檢測,獲取 bug 狀態的快照,使開發人員可以很容易地重現 bug 並予以消除。就像 Jez Humble 所說的——先在自己的環境下搞好!
DevOps 如何實現精益應用開發
Carmen DeArdo, DevOps Technology Leader, Nationwide Insurance
Carmen 說,Nationwide 也曾考慮過外包軟體交付,頂住了種種壓力,他們證明這是完全沒必要。從減少依賴、等待時間和未計劃的工作中,可以降低大量預算。
Carmen DeArdode 的幻燈片展示了妨礙 Nationwide Lean 交付的因素,以及與此同時,國外的企業在如何應對。
另一個恰當的運動和軟體類比,筆者認為這個觀點非常恰當:「如果你的團隊缺乏一體化的工具,就像你在完全不瞭解籃球隊的比賽情況下,卻要指導籃球隊的實戰訓練,所以根本無法針對實際問題進行操作。」
筆者確實非常喜歡 Carmen 的演講。超過200個敏捷團隊正在質量和生產方面做出顯著提升,但 Nationwide 仍然處於等待狀態,在各種規模的企業內都普遍感到這種狀態。
那麼,Carmen 和 Nationwide 到底做了什麼呢?他們從未停止推進,「在持續交付中採用 DevOps,在移動端、分散式、主機和其他技術中使用精益和敏捷技術。」
效果如何?
Carmen DeArdo 的幻燈片顯示,在引進精益應用開發後 Nationwide 的收穫。
以上是第1天的內容,根據一起參會的 Skytap 同事所說,某些錯過的其他回憶也同樣令人深省!可以在網上找找我們現場所錄的部落格,視訊中會包含其他會議!
Day 2
在輪渡大廈的 Boulettes Larder 享用了平靜安寧的早餐後,第二天也像第一天那樣,在匆忙的會議中進行。
銀行業務的 Innovation 和 DevOps
Tapabrata Pal, Product Manager, Capital One
Tababrata 說:
「為什麼要開源我們的工具?因為這是正確的做法,它們有助於一個持續實驗和學習的文化,開源令它變得更好。」
這是筆者在 Tapabrata 主題演講中唯一記錄的東西,但不是說其他的內容都不好。
老實說,事實恰恰相反。但他對開源工具的觀點確實令人影響深刻,以及簡單有力的答案,「這是應該做的……因為開源令它變得更好」,引起全場轟動的掌聲,以至於幾乎全場都起立為之喝彩。
Tapabrata 接著指出,Capital One 非常擅於獲得快速反饋,因為他們需要保證員工和客戶都高興。
有資源的團隊被稱為「辦公時間」,無論什麼專案都可以在那裡獲得幫助,以及「客戶之聲」專案可以讓客戶指出瓶頸位置——傳統思想這種情況只會出現在企業內部中。我很喜歡這個主意。
「我不是在構建網路軟體,為什麼要關心持續交付?」討論由 Jez Humble 主持
嘉賓從左到右依次是:Jez Humble、 Gary Gruver、Kathy Herring Hayashi、Hugo Gayosso 和 Anders Wallgren。
「如果你在打造精品,它會很快地融入市場。」因此,發現的錯誤越晚,付出的代價就越昂貴。在嵌入式軟體中,這會變得嚴重得多。汽車、醫療器械對高品質的需求,安全軟體是絕對必要的。”
觀眾提問:「這些變化需要什麼文化?」 「產品是容易投入的,並且IT部門不能只被當作成本中心……它們同樣應該被視作完成業務的根本。」
儘管這個討論專為嵌入式軟體行業設計,但該組的討論仍適用於大型機到移動端,以及介於兩者之間的平臺。這些天每個人都在說,交付生命週期晚期發現 bug 的成本遠遠超過早期,在進入客戶的手中之前。
「構建質量」可能需要嚴重破壞的現狀,無論團隊在這方面有多麼熟悉,「他們一直都做的方式」,多長時間才能負擔得起繼續沿著這條道路的成本?
正如這個小組所說,「IT不能只被看作是成本中心」 。對於軟體交付同樣適用,軟體交付也經常被當作成本中心,或者是獲取功能及釋出的障礙。
對虛擬環境、DevOps、連續檢測以及整個交付過程的其他改變的需求,改變著世人對該團隊的看法,並讓他們對軟體的速度和質量產生實質性的影響力。
迪斯尼的 DevOps ——企業意識
Jason Cox,Systems Engineering Disney Internet Group,Web Operations
這並不容易,但運維就有機會扭轉局面。那麼,如何為你的「DevOps Jedi」尋找成功的契機?
引用自迪斯尼,顯然所指的是開發/測試/運維團隊。
在該會議上,筆者沒有做任何記錄,因為不願意錯過 Jason 的每一句話。顯而易見,他不可思議的星球大戰理論,和前兩個月上映的《星球大戰7》遙相呼應,但即使沒有這部電影,他的演講仍然會讓人耳目一新。
筆者不清楚這周是否有人更明確地揭示組織中的繁文縟節、官僚機構、silos 和內戰的普遍現狀。
但這顯示出 Jason 的誠實和熱情,他說:「一切都尚待改變」。這讓在座的所有人都摩拳擦掌,想要帶著這份觸動和靈感迴歸自己的團隊。
就像許多人已經多次指出:沒有哪種方式是容易的。DevOps、敏捷方法、持續整合/測試/部署/交付都很艱難。有時說,「隨時都可以開始」,但這遠遠不夠。這些變化帶來的價值並非一蹴而就。
正如 Jason 所說,你需要被啟發。如果缺乏靈感,我強烈建議大家來聽聽 Jason 的演講,或許能激發你的相關思考。
持續交付的架構設計
Jez Humble,Author,Continuous Delivery
「在座的有做持續整合的嗎?」,幾乎所有人,1000名觀眾,都在舉手。「誰可以在發現 bug 的10分鐘內解決故障?」大家笑了笑,放下了手。
「你應該可以通過按鈕就能從釋出轉到生產狀態。每一個構建中的更新,而每一個版本都是候選版本……軟體應該永遠處於可檢驗狀態,並且始終可部署。開發者必須從一開始就關心這些內容。
DevOps 可能無法保證其安全性、可靠性和部署性。你必須儘早地構建這些內容。我們必須追溯到1970年代以來,我們所瞭解軟體開發的一些非常實用的內容。大多數獨角獸也只是效能達標的馬而已。」
關於 DevOps 定義的模糊性問題對筆者而言問題不大,但筆者同樣瞭解對於缺乏具體的、普遍能接受的定義會讓一些人抓狂。所以不足為奇,筆者也很欣賞 Jez Humble 對持續交付(CD)的定義:
也許,正是因為 Jez 根據結果來定義 CD 才使得其如此受歡迎,而並非採用單一指令性的全有或全無方法。
筆者不清楚你們中有多少人是 Jez Humble 的粉絲(我們當中倒是有很多)。然而,正是這種感覺,每次他演講或寫一本新書,整個世界都為之瘋狂。
Day 3
大型機應用程式的測試自動化
Rosalind Radcliffe,Distinguished Engineer,Chief Architect for DevOps and CLM,IBM
Rosalind Radcliffe 拉開 DOES 最後一日的序幕,她用 IBM 公司26年的工程師生涯體驗和通過虛擬化改變大型機系統的方法,很快打動了在場所有人。
相同的方法也用於 Skytap 和許多合作伙伴規定。在必要時,任何受限於硬體的任何開發和測試團隊,都難以獲得甚至不可能獲得訪問。
Rosalind 的主題演講非常出色,她作為是眾多企業演講者的一份子,向所有人證明 DevOps 實踐正在順利地被引入大型主機層面。
永恆的魅力?:容器與軟體供應鏈發生碰撞
Joshua Corman ,CTO, Sonatype
John Willis ,Director of Ecosystem Development, Docker
「IT運維已經迷失了20年時間;是 DevOps 讓我們成功返航」——John Willis
「我想要拯救生命。我們對軟體的依賴程度越來越大,是因為嵌入式的醫療裝置、汽車、家——我想要這些東西運作起來。」——Josh Corman
「我們需要為編碼構建程式碼。如果你並不熱血沸騰,不如選擇離開」——John Willis
如果迪士尼的 Jason Cox 獲得「最佳會議獎」,那應該是實至名歸,尤其是作為星球大戰迷的筆者,但這實際上這份容易也可以頒給 Joshua 和 John 的「永恆的魅力」主題演講。
當 Joshua 說,他不只是熱愛軟體或 DevOps,這是在挽救生命,你會相信他對於這份事業的熱愛。
用2010年在海地和智利的地震來舉例,能看到架構質量之間的差異,Joshua 指出,當海地的7.0級地震導致23萬人喪生時,智利更強的8.8地震只造成279人死亡。
這兩者之間的差距令人難以置信,其中一個原因就是智利嚴格的建築法規,而海地正缺乏這樣的規範。
「我們需要建立程式設計的規範」,Corman 說道。我們對軟體的依賴,可以促進社會交往或幫助移動商務交易,會迅速移動到同時取決於在複雜醫療裝置、汽車內建的軟體。
那些負責保證這些連線裝置正常執行,並防止黑客攻擊和故障的程式碼,更有責任保證工作質量。
關於反饋
Elisabeth Hendrickson,VP of Engineering, Pivotal’s Big Data Suite
「更多的測試者不等於質量更好」,避免:反饋流汙染、誤報警/故障、失真、丟失資訊
從開發者、測試者、運營、軟體的使用者/客戶、安全性到系統本身,DevOps 需要每個來源的快速反饋,並結合我們所聽到的採用反饋的組織所創造的優秀事蹟。
希望筆者的反饋對你有所裨益!