雲原生時代來臨,開發者如何適應雲原生開發環境?

JFrog傑蛙科技發表於2021-08-18

雲原生應用理念經過幾年的落地實踐已經得到企業市場的廣泛認可,雲原生應用更是成為企業數字化轉型的必選項。基於雲原生技術架構衍生的產品和工具,已經逐漸應用在開發者的日常工作當中。

近日,全球最具影響力的諮詢機構Forrester聯合阿里雲釋出《雲原生開發者洞察白皮書》,JFrog中國首席架構師王青受邀參與該白皮書的編寫。 Forrester首次定義雲原生時代開發者的能力模型,助力開發者擁抱雲原生技術,實現開發者自身的轉型。

早在2020 年IDC釋出的報告中,曾提到在未來的 3-5 年,軟體製品的數量會越來越多,到 2025 年,全球會出現520M 個應用,超過 60%的企業軟體版本的部署頻率為 1 天,甚至更短。軟體釋出的種類也越來越多,Go、Maven、Docker、NPM 等型別的製品會不斷的從研發中心構建出來,並推送到雲環境進行部署。同時,由於開發者不熟悉雲資源的使用,且依賴大量的開源軟體,導致開發的軟體遇到了部署難、安全管控難、傳輸慢等常見問題。

這樣就給開發者帶來一個新的挑戰:開發者如何將製品快速的分發到各個雲原生環境進行快速、安全的釋出?我認為開發者需要從以下幾個方面做出改變。

一、軟體供應鏈安全可控

在雲原生環境下,你的服務極有可能是對網際網路開發服務的,由於開發者使用的依賴包往往來自於網際網路公有倉庫,這就使得使用了開源軟體的應用容易被駭客攻擊。大家可以嘗試在雲環境中安裝一個 Jenkins 直接對外提供服務,用不了幾天就會被駭客攻擊,並且在你不知情的情況下種下木馬,去挖礦或者執行其他任務。

我們應該如何解決?

整個部署過程必須使用自動化工具來保障軟體供應鏈的安全可控,應當透過自動化工具自動生成軟體物料依賴清單 SBOM,並實時掃描依賴包的漏洞風險和 License 合規性。開發者應該使用實時的開源元件分析工具,進行實時的 SAST 靜態應用安全掃描,在開發階段把已知的安全漏洞掃描出來,並根據優先順序進行修復。參考以下操作流程:

1.1 使用Sonarlint 進行靜態程式碼掃描,實時修復漏洞

雲原生時代來臨,開發者如何適應雲原生開發環境?

1.2 在IDE中安裝JFrog外掛,實現開源元件漏洞和License的合規性檢查

雲原生時代來臨,開發者如何適應雲原生開發環境?

透過對開源軟體供應鏈的掃描,實現對依賴的管控。

在構建過程中,自動收集軟體物料清單 SBOM 如下:

雲原生時代來臨,開發者如何適應雲原生開發環境?

透過自動的依賴清單收集,能夠清晰的定義軟體版本的依賴資訊,以及依賴元件的漏洞掃描資訊和 License 合規性資訊。

二、面向雲資源的部署

開發者在雲原生環境下,想要實現應用的部署,必須熟悉雲資源的型別,從而將雲資源的欄位從應用配置中抽取出來,這樣才能實現一次構建,處處執行。以 Kubernetes 應用開發為例,開發者之前在本地配置的資料庫、儲存、埠等配置都需要抽取出來,定義成 YAML 檔案的變數,抽象成 Helm Chart,這樣開發者在本地開發配置的程式內, 不做任何修改,只透過修改應用的 Chart Values檔案,即可實現雲環境的適配

雲原生時代來臨,開發者如何適應雲原生開發環境? 雲原生時代來臨,開發者如何適應雲原生開發環境?

三、 Docker映象高效分發

當版本釋出之後,需要具備快速、高效的將版本分發到多地資料中心、邊緣節點、IOT 裝置等能力,例如支援大檔案分片分發,支援 Docker 映象的 P2P 分發等能力。

雲原生時代來臨,開發者如何適應雲原生開發環境?

Docker 映象的P2P分發將成為大企業在雲原生環境下的必備能力,透過 P2P 分發,能夠極大的提升 Docker 映象的下載速度,快速的將新功能部署在伺服器上,更快的給使用者帶來價值。


雲原生時代已經來臨,在雲原生的環境下,企業及開發者想要佔據先機,快人一步,就必須實現流動式的軟體版本釋出,才能在釋出頻率越來越快的將來站穩腳跟,奮勇前進。

新增小助手微信:JFrogjiewachina,您將獲得《雲原生開發者洞察白皮書》


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69954434/viewspace-2787602/,如需轉載,請註明出處,否則將追究法律責任。

相關文章