2017年12月06日更新:為了澄清50%的效率提升來自於對開發人員構建/測試工作流的增強,並且補充了他們的CI整合環境。作為工作流的一部分,PayPal的開發人員在本地機器上使用Docker for Mac和Docker for Windows。
PayPal致力於金融服務的大眾化,並賦予大眾和企業在經濟全球化中的參與和發展。他們新的開放數字化平臺讓2.18億活躍賬戶持有者有信心以新的方式去做連線和交易。為了完成這些標的,PayPal建立了全球化網路,要求所有的使用者必須高可用:如果PayPal出現宕機,這種影響將會波及到很多依靠PayPal作為唯一支付解決方案的小型商業客戶。
PayPal開始求助於Docker企業版本,希望可以幫他們提高操作效率,當開發人員在本地開發和測試時,他們的構建-測試-部署週期速度提高了50%。 與此同時,他們透過Docker的動態佈局功能和基礎架構獨立性提高了應用程式的可用性; 透過使用Docker的自動化和明細化資源訪問控制來提高安全性。 除了運營收益之外,Docker在PayPal的使用也促進了開發人員的創新、新工具和架構的一些嘗試。由於Paypal應用程式和運營的複雜性,這在以前是非常難引入的。
PayPal雲平臺的開發總監Meghdoot Bhattacharya和他的團隊在過去兩年中幫助PayPal將Docker引入PayPal環境並將其用於標準應用交付平臺,他分享了這個交付的過程。 可以看下麵影片。
雖然PayPal可能不是一家“老牌”公司,但在他們17年多的時間裡,已經建立了一個全球支付處理平臺,其中包括成百上千的個人應用程式和服務。 正如通常的這種快速發展和增長水平一樣:構建、測試、部署和執行這些應用程式的過程也有很多不同的工具和流程。 對於開發團隊和運營,缺乏標準化往往會造成一些問題。 開發人員被鎖定在一套有限的工具和框架中。因為測試和運營團隊部署和執行每一個新的技術棧的負擔很重,因此很難再增加任何新的東西上去。對於操作來說,將應用部署到多個架構和多個雲上的壓力,每一個都有不同的檢測和過程,這樣就導致部署和維護的周轉時間變慢。
PayPal最初對Docker的使用只是為了建立一種單一的、一致的應用程式打包格式,這種格式可以用於盡可能多的現有應用程式。他們將重點放在業務的運營方面,建立統一的應用程式交付和運營模型,以解決圍繞應用程式孤島的問題。 PayPal在Docker官方現代化傳統應用程式[1]推出之前就已經進行了這個階段,但是他們分享了許多相同的策略和好處:從現有的應用程式開始,在現有的應用程式中,您已經擁有日常運營的內部專業知識, 將應用程式遷移到容器而不更改程式碼。 在這個階段,PayPal承認了幾個重要的好處,儘管這些應用程式本身仍然是一樣的:
隨著Docker容器格式和操作變得很好理解,PayPal開啟了開發者學習和使用容器的大門。由於Docker提供了一種執行應用程式的標準方法,開發人員可以自由的嘗試新的程式設計方法和框架,而運營和支援團隊不必要擔心這些複雜性。隨著開發人員加入Docker供應鏈[2],PayPal認識到透過使用桌面Docker進行本地化開發,構建和測試使開發人員生產力提高了50%以上。開發人員的本地開發環境也補充了他們的雲SDLC環境。使用Docker,每個開發人員,運營人員,測試人員和自動化工具都能使用相同的配置執行相同的應用程式。對於系統管理員來說,還有額外的好處。過去花費一整年時間才能推出的作業系統升級,現在只需要新一個容器映象的Dockerfile即可完成。隨著這些好處在PayPal內部傳播開來,原本不屬於試點的其他組織開始採用Docker作為自己的使用案例,PayPal的Docker試點團隊也幫助他們順利開展工作。
在第一個階段開始不到兩年的時間裡,PayPal已經把超過700個應用遷移到Docker,執行在15萬個容器中。這期間,PayPal在開發和測試Docker化應用程式方面的開發人員生產力提高了50%。像作業系統升級這類的專案,過去需要花費一年的時間,現在可以在開發,測試和生產過程中一次性更改。開發人員可以自由探索新興技術,無論應用程式如何操作人員和管理員可以同時使用同一套操作程式。
在最後階段,PayPal已經開始在他們所有的雲中推出一個完整的CaaS平臺。這個階段,他們專註於提高效率。到目前為止,遷移到新Docker Caas平臺的應用程式已經減少了資源消耗,提高了安全性和可用性,並使PayPal能夠為所有環境中的工具,監控和操作提供單一平臺。
PayPal實現Docker的過程是其他組織遵循的偉大藍圖。專註於採用可管理的步驟,建立一個可以諮詢和支援其他團隊的內部專家團隊,制定明確的標的和衡量結果是實現大幅度改善運營和發展轉型的關鍵。
-
https://goto.docker.com/mtakit
-
https://success.docker.com/article/Docker_Reference_Architecture-_Building_a_Secure_Supply_Chain
原文連結:https://blog.docker.com/2017/12/containers-at-paypal/
本次培訓內容包括:Docker容器的原理與基本操作;容器網路與儲存解析;Kubernetes的架構與設計理念詳解;Kubernetes的資源物件使用說明;Kubernetes 中的開放介面CRI、CNI、CSI解析;Kubernetes監控、網路、日誌管理;容器應用的開發流程詳解等,點選識別下方二維碼加微信好友瞭解具體培訓內容。
長按二維碼向我轉賬
受蘋果公司新規定影響,微信 iOS 版的贊賞功能被關閉,可透過二維碼轉賬支援公眾號。