CNCF案例研究:Nav

CNCF案例研究:Nav

一家初創公司如何通過Kubernetes將其基礎設施成本降低50%

公司:Nav
地點:猶他州鹽湖城和加利福尼亞州聖馬特奧
工業:爲企業提供金融服務

挑戰

Nav成立於2012年,爲小型企業提供三個主要商業信用局 - Equifax、Experian和Dun&Bradstreet - 的商業信用評分,以及最符合他們需求的融資方案。五年後,該創業公司發展迅速,“我們的雲環境變得越來越大,我們對這些環境的使用率極低,例如低於1%。”工程總監Travis Jeppson說。“我們希望我們對雲環境的使用與我們實際需要的內容更緊密地結合在一起,因此我們開始關注容器化和編排,以幫助我們能夠運行彼此不同,但可以共享類似資源池的工作負載。”

解決方法

在評估了許多編排解決方案後,Nav團隊決定採用在AWS上運行的Kubernetes。Kubernetes周圍社區的實力強大,以及Google的出身。此外,“其他解決方案往往相當笨重、非常複雜、非常龐大,而且很難立即管理。”Jeppson說。“Kubernetes爲我們提供了一種非常簡單的方法,可以作爲符合我們當前需求的編排解決方案,而且它的可擴展性使我們能夠在未來增長並能夠構建更多特性和功能。”

影響

這個由四人組成的團隊在六個月內完成了Kubernetes的啓動和運行,Nav的25個微服務的完全遷移在另外六個月內完成。結果令人印象深刻:首先使公司走上了這條道路的資源利用率,從1%增加到40%。推出一項新服務過去需要兩個開發者兩週;現在只需一個開發者不到10分鐘。部署增加了5倍。該公司節省了50%的基礎設施成本。

“Kubernetes爲我們提供了一種非常簡單的方法,可以作爲符合我們當前需求的編排解決方案,而且它的可擴展性使我們能夠在未來增長並能夠構建更多特性和功能。” - TRAVIS JEPPSON,工程總監,NAV

Nav成立於2012年,爲小企業提供三個主要商業信用局 - Equifax、Experian和Dun&Bradstreet - 的商業信用評分,以及最適合他們需求的企業財務健康和融資方案的詳細信息。工程總監Travis Jeppson表示,其使命歸結爲,“提高小企業的成功率。”

幾年前,Nav認識到自己走向成功的障礙。業務發展迅速,“我們的雲環境變得越來越大,我們對這些環境的使用率非常低,比如低於1%。”Jeppson說。“大多數問題都與擴展能力有關。我們只是在砸錢。'讓我們啓動更多的服務器。讓我們做更多的事情來處理增加的負擔。'而我們是一家創業公司,這可能會導致我們的死亡。我們沒有錢在那種東西上燒。”

此外,每項新服務都必須經過10個不同的人,這需要兩週時間才能完成。“所有的補丁管理和服務器管理都是非常手動完成的,因此我們都必須觀察,並保持良好狀態。”Jeppson補充道。“這只是一個非常麻煩的系統。”

“社區絕對至關重要:能夠傳遞各種想法,談論我們所面臨的許多類似挑戰,並獲得幫助。我喜歡我們能夠出於不同的原因解決同樣的問題,但在此過程中互相幫助。” - TRAVIS JEPPSON,工程總監,NAV

Jeppson曾在以前的工作中使用容器,並將該技術推薦給Nav的管理層,作爲解決這些問題的方法。他在2017年初獲得了綠燈。“我們希望我們對雲環境的使用與我們實際需要的更加緊密結合,因此我們開始關注容器化和編排,以幫助我們運行彼此不同的工作負載,但可以分享類似的資源庫。”他說。

在評估了許多業務流程解決方案後,該公司決定採用在AWS上運行的Kubernetes。Kubernetes周圍社區的力量強大,加上起源自谷歌。此外,“其他解決方案往往相當笨重、非常複雜、非常龐大,而且真的難以管理。”Jeppson說。“Kubernetes爲我們提供了一種非常簡單的方法,可以作爲一個符合我們當前需求的編排解決方案,但它的可擴展性也可以讓我們隨之增長,並在以後構建更多特性和功能。”

Jeppson的四人工程服務團隊在六個月內完成並運行了Kubernetes(他們決定使用Kubespray來啓動集羣),Nav的25個微服務和一個主要的單體在另外六個月內完成完全遷移。“我們無法重寫一切;我們無法停機。”他說。“我們必須不停運行,我們必須保持可用,我們必須有最少的停機時間。因此,我們對構建管道、度量標準和日誌記錄非常滿意,然後圍繞Kubernetes本身:如何啓動它、如何升級它、如何爲它提供服務。我們一點一點地移動。”

“Kubernetes通過允許我們以前從未有過的所有這些新自由爲Nav帶來了如此多的價值。” - TRAVIS JEPPSON,工程總監,NAV

該過程的一個關鍵部分包括培訓Nav的50名工程師,並對新工作流程以及遷移路線圖保持透明。Jeppson在整個過程中定期進行演示,併爲整個工程師團隊提供一週每天四小時的實驗室。然後他在GitLab中創建了一個存儲庫來存放所有信息。“我們展示了所有前端和後端開發者如何進入,使用kubectl自己創建自己的命名空間。”他說。“現在,很多時候,他們只是來找我們說,'這已經準備就緒。'我們點擊GitLab中的一個小按鈕,讓它進入生產階段,就完成了。”

自從遷移工作於2018年初完成以來,結果令人印象深刻:首先使公司走上了這條道路的資源利用率,從1%增加到40%。推出一項新服務過去需要兩個開發者兩週;現在只需一個開發者不到10分鐘。部署增加了5倍,從每天10個增加到每天50個。該公司在計算方面節省了50%的基礎設施成本。“接下來我們想進入數據庫方面,一旦我們這樣做,那麼我們將繼續降低成本。”Jeppson說。

Kubernetes還幫助Nav滿足其合規需求。之前,“我們必須將一個應用程序映射到一個服務器,主要是由於數據的合規性規定不同。”Jeppson說。“使用Kubernetes API,我們可以添加網絡政策,隔離該數據並在需要時對其進行限制。”該公司將其羣集隔離到一個不受限制的區域和一個限制區域,該區域有自己的一組節點,用於數據保護。該公司還使用Twistlock工具確保安全性。“這使夜間睡眠變得更加容易。”他補充道。

“我們現在處理的流量是四到十倍,而且就像'哦,是的。我們很好。Kubernetes爲我們處理這個問題。'” - TRAVIS JEPPSON,工程總監,NAV

隨着Kubernetes的到位,Nav團隊也開始採用Prometheus來改進系統的指標和日誌記錄。“Prometheus制定了一個關於衡量標準的標準,這對開發者來說非常容易採用。”Jeppson說。“他們可以自由地展示他們想要的東西,做他們需要的東西,並保持他們的代碼庫清潔,這對我們來說絕對是必須的。”

Nav來年接下來的是:查看跟蹤、存儲和服務網格。他們在KubeCon花了很多時間與其他公司交談之後,目前正在評估Envoy、OpenTracing和Jaeger。“社區絕對至關重要:能夠傳遞各種想法,談論我們所面臨的許多類似挑戰,並獲得幫助。我喜歡我們能夠出於不同的原因解決同樣的問題,但在此過程中互相幫助。”Jeppson說。“還有很多要做的事情,關於可擴展性,圍繞能夠真正完全採用雲原生解決方案。”

當然,這一切都始於Kubernetes。憑藉這項技術,Jeppson的團隊已經建立了一個平臺允許Nav擴展,並“通過允許我們以前從未有過的所有這些新自由爲Nav帶來了如此多的價值。”他說。

關於新產品的討論,過去常常陷入困境,因爲他們必須等待六個月才能建立一個隔離環境,然後找出如何處理流量高峯。“但現在對我們來說沒什麼。”Jeppson說。“我們現在處理的流量是四到十倍,而且就像'哦,是的。我們很好。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邀請你加入最終用戶社區

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章