CNCF案例研究:AppDirect

AppDirect:AppDirect如何經過Kubernetes支持其工程人員的10倍增加linux

圖片描述

公司:AppDirect
地點:舊金山,加利福尼亞
工業:軟件shell

挑戰

AppDirect爲基於雲的產品和服務提供端到端的商務平臺。當軟件開發總監Pierre-Alexandre Lacerte於2014年開始在那裏工做時,該公司在「tomcat基礎架構上部署了一個單體應用程序,整個發佈過程很是複雜。」他說。「涉及有不少手動步驟,一個工程師構建一個功能,而後另外一個團隊接手更改。因此你有一個瓶頸,將一個功能發送給生產。」與此同時,工程團隊也在不斷髮展,公司意識到須要一個更好的基礎設施來支持這種增加並提升速度。tomcat

解決方法

「個人想法是:讓咱們建立一個團隊能夠更快地部署他們的服務的環境,他們會說,'好吧,我不想再創建單體。我想創建一個服務'。」Lacerte說。在決定於2016年初採用Kubernetes以前,他們考慮並製做了幾種不一樣技術的原型。Lacerte的團隊還將Prometheus監控集成到平臺中;下一布是追蹤。現在,AppDirect已在生產中部署了50多個微服務,在AWS和全球各地部署了15個Kubernetes集羣。服務器

影響

Kubernetes平臺幫助支持了工程團隊在過去幾年中的10倍增加。加上他們不斷增長新功能的事實,Lacerte說,「若是咱們沒有這種新的基礎設施,我認爲咱們的速度會慢下來。」遷移到Kubernetes和服務意味着部署變得更快,由於減少了對SCP命令的定製以及脆弱shell腳本的依賴性。部署新版本的時間從4小時縮短到幾分鐘。此外,該公司投入了大量精力爲開發者提供自助服務。「上線新服務不須要Jira門票或與三個不一樣的團隊會面。」Lacerte說。今天,該公司每週能夠看到1,600次部署,而以前是1-30次。該公司還經過將其市場和計費單塊,從傳統的EC2主機遷移到Kubernetes,以及利用自動縮放來實現成本節約,由於在工做時間內流量更高。架構

「這是一個巨大的工程文化轉變,但在規模和速度方面的好處是不能否認的。」 - ALEXANDRE GERVAIS,軟件開發者,APPDIRECT

憑藉其基於雲的產品和服務的端到端商務平臺,AppDirect自2009年以來一直在幫助Comcast和GoDaddy等組織簡化數字供應鏈。框架

當軟件開發總監Pierre-Alexandre Lacerte於2014年開始在那裏工做時,該公司在「tomcat基礎架構上部署了一個單體應用程序,整個發佈過程很是複雜。」他說。「涉及有不少手動步驟,一個工程師構建一個功能,而後建立一個拉取請求,以後一個QA或另外一個工程師驗證該功能。而後合併,其餘人將負責部署。因此咱們將一項功能運送到生產有瓶頸。」微服務

與此同時,40人的工程團隊正在發展壯大,該公司但願爲其產品增長愈來愈多的功能。做爲平臺團隊的一員,Lacerte開始聽取多個團隊的意見,他們但願使用不一樣的框架和語言部署應用程序,從Node.js到Spring Boot Java。他很快意識到,爲了支持增加和提升速度,公司須要一個更好的基礎設施,一個團隊自治的系統,能夠本身進行部署,併爲他們本身的生產服務負責。測試

「咱們在正確的時間作出了正確的決定。Kubernetes和雲原生技術如今被視爲事實上的生態系統。咱們知道在哪裏集中精力來應對咱們在擴展時面臨的新一輪挑戰。社區是如此活躍和充滿活力,這是咱們卓越的內部團隊的重要補充。」 - ALEXANDRE GERVAIS,軟件開發者,APPDIRECT

從一開始,Lacerte說:「個人想法是:讓咱們建立一個團隊能夠更快地部署服務的環境,他們會說,'好吧,我不想再創建單體。我想創建一個服務。’」(Lacerte在2019年離開了公司。)spa

經過與運營團隊合做,Lacerte的團隊得到了對公司AWS基礎架構的更多控制權和使用權,並開始了幾種編排技術的原型設計。「當時,Kubernetes有點地下,鮮爲人知。」他說。「但咱們看了社區,拉動請求的數量,GitHub上的速度,咱們看到它正在變得愈來愈有吸引力。咱們發現管理比其餘技術更容易。」他們使用Chef和Terraform配置在Kubernetes上跑了前幾個服務,而且隨着更多服務的增長,也有更多的自動化。「咱們在世界各地都有集羣 - 在韓國、澳大利亞、德國和美國。」Lacerte說。「自動化對咱們相當重要。」他們如今主要使用Kops,而且正在尋找來自多家雲提供商的託管Kubernetes產品。設計

今天,雖然單體應用仍然存在,但提交和功能愈來愈少。全部團隊都部署在新的基礎架構,服務是常態。AppDirect如今擁有50多個微服務器,在AWS和全球各地部署了15個Kubernetes集羣。

Lacerte的策略最終奏效,由於Kubernetes平臺對部署時間產生了很是實際的影響。因爲減少了對SCP命令的定製以及脆弱shell腳本的依賴性,部署新版本的時間從4小時縮短到幾分鐘。此外,該公司投入了大量精力爲開發者提供自助服務。「上線新服務不須要Jira門票或與三個不一樣的團隊會面。」Lacerte說。今天,該公司每週能夠看到1,600次部署,而以前是1-30次。

「若是咱們沒有這種新的基礎設施,我認爲咱們的速度會放慢不少。」 - PIERRE-ALEXANDRE LACERTE,軟件開發總監,APPDIRECT

此外,Kubernetes平臺在過去幾年中幫助支持了工程團隊10倍的增加。「全部權,AppDirect的核心價值,反映了咱們獨立於單體代碼庫提供服務的能力。」與Lacerte合做的軟件開發者Alexandre Gervais說道。「小型團隊如今擁有咱們業務領域模型的關鍵部分,他們在專業知識的分離領域運營,對整個代碼庫知之甚少。這減小並隔離了一些複雜性。」加上他們不斷增長新功能的事實,Lacerte說,「若是咱們沒有這種新的基礎設施,我認爲咱們的速度會慢下來。」該公司還經過將其市場和計費單塊從傳統的EC2主機,遷移到Kubernetes,以及利用自動縮放來實現成本節約,由於在工做時間內流量更高。

AppDirect的雲原生堆棧還包括gRPC和Fluentd,該團隊目前正在設置OpenCensus。該平臺已經集成了Prometheus,所以「當團隊部署他們的服務時,他們會收到通知、警報和配置。」Lacerte說。「例如,在測試環境中,我想在Slack上收到一條消息,在生產中,我想要一條Slack消息,我也但願收到傳呼。咱們已經與PagerDuty集成。團隊對他們的服務擁有更多的全部權。」

「咱們從'推送代碼分支'的文化轉到代碼庫以外的使人興奮的新職責:功能和配置的部署;應用程序和業務指標的監控;以及在中斷狀況下的隨叫隨到的支持。一個巨大的工程文化轉變,但在規模和速度方面的好處是不能否認的。」 - PIERRE-ALEXANDRE LACERTE,軟件開發總監,APPDIRECT

這固然也意味着更多的責任。「咱們要求工程師擴大他們的視野。」Gervais說。「咱們從'推送代碼分支'的有限度工做文化,轉到代碼庫以外的使人興奮的新職責:功能和配置的部署;應用程序和業務指標的監控;以及在中斷狀況下的隨叫隨到的支持。一個巨大的工程文化轉變,但在規模和速度方面的好處是不能否認的。」

隨着工程隊伍的不斷增加,平臺團隊面臨着新的挑戰,即確保Kubernetes平臺可供全部人訪問和使用。「咱們怎樣才能確保當咱們爲團隊增長更多人員時,他們能提升效率,提升工做效率,並知道如何在平臺上開發?」Lacerte 說。「因此咱們有佈道者、文檔、一些項目實例。咱們作演示,咱們有AMA會議。咱們嘗試不一樣的策略來引發全部人的注意。」

在他們Kubernetes之旅的三年半時間裏,Gervais認爲AppDirect「在合適的時間作出了正確的決定」,他說。「Kubernetes和雲原生技術如今被視爲事實上的生態系統。咱們知道在哪裏集中精力來應對咱們在擴展時面臨的新一輪挑戰。社區是如此活躍和充滿活力,這是咱們卓越的內部團隊的重要補充。展望將來,咱們的重點將是經過在平常運營中提供額外的商業價值來從生態系統中獲益。」


KubeCon + CloudNativeCon + Open Source Summit大會日期:

  • 會議日程通告日期:2019 年 4 月 10 日
  • 會議活動舉辦日期:2019 年 6 月 24 至 26 日

KubeCon + CloudNativeCon + Open Source Summit贊助方案
KubeCon + CloudNativeCon + Open Source Summit多元化獎學金現正接受申請
KubeCon + CloudNativeCon和Open Source Summit即將首次合體落地中國
KubeCon + CloudNativeCon + Open Source Summit購票窗口,當即購票!
CNCF邀請你加入最終用戶社區

相關文章
相關標籤/搜索