Linux中國
雲原生軟體的 6 個要求
許多年來,單體應用是實現業務需求的標準企業架構。但是,當雲基礎設施開始以規模和速度為業務加速,這種情況就發生了重大變化。應用架構也發生了轉變,以適應雲原生應用和 微服務、無伺服器 以及事件驅動的服務,這些服務運行在跨混合雲和多雲平台的不可變的基礎設施上。
雲原生與 Kubernetes 的聯繫
根據 雲原生計算基金會 (CNCF) 的說法:
「雲原生技術使企業能夠在現代動態環境中建立和運行可擴展的應用,如公共雲、私有雲和混合雲。容器、服務網格、微服務、不可變的基礎設施和聲明式 API 就是這種方法的典範。」
「這些技術使鬆散耦合的系統具有彈性、可管理和可觀察性。與強大的自動化相結合,它們使工程師能夠以最小的工作量頻繁地、可預測地進行重要的改變。」
像 Kubernetes 這樣的容器編排平台允許 DevOps 團隊建立不可變的基礎設施,以開發、部署和管理應用服務。現在,快速迭代的速度與業務需求相一致。構建容器以在 Kubernetes 中運行的開發人員需要一個有效的地方來完成。
雲原生軟體的要求
創建雲原生應用架構需要哪些能力,開發人員將從中獲得哪些好處?
雖然構建和架構雲原生應用的方法有很多,但以下是一些需要考慮的部分:
- 運行時: 它們更多是以容器優先或/和 Kubernetes 原生語言編寫的,這意味著運行時會如 Java、Node.js、Go、Python 和 Ruby。
- 安全: 在多雲或混合雲應用環境中部署和維護應用時,安全是最重要的,應該是環境的一部分。
- 可觀察性: 使用 Prometheus、Grafana 和 Kiali 等工具,這些工具可以通過提供實時指標和有關應用在雲中的使用和行為的更多信息來增強可觀察性。
- 效率: 專註於極小的內存佔用、更小的構件大小和快速啟動時間,使應用可跨混合/多雲平台移植。
- 互操作性: 將雲原生應用與能夠滿足上述要求的開源技術相結合,包括 Infinispan、MicroProfile、Hibernate、Kafka、Jaeger、Prometheus 等,以構建標準運行時架構。
- DevOps/DevSecOps: 這些方法論是為持續部署到生產而設計的,與最小可行產品 (MVP) 一致,並將安全作為工具的一部分。
讓雲原生具體化
雲原生似乎是一個抽象的術語,但回顧一下定義並像開發人員一樣思考可以使其更加具體。為了使雲原生應用獲得成功,它們需要包括一長串定義明確的組成清單。
你是如何規劃雲原生應用的設計的?在評論中分享你的想法。
via: https://opensource.com/article/20/1/cloud-native-software
作者:Daniel Oh 選題:lujun9972 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive
對這篇文章感覺如何?
太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
More in:Linux中國
如何通過 VLC 使用字幕
使用 VLC 媒體播放器播放和管理字幕的新手指南。
Unix 桌面:在 Linux 問世之前
僅僅開源還不足以實現開放,還需開放標準和建立共識。
Valve 對於 Ubuntu 的 Snap 版本的 Steam 並不滿意:原因何在
你可能會發現,Snap 版本的 Steam 並不如你期待的那樣好,你怎麼看?
Wine 9.0 發布,實驗性地加入了 Wayland 驅動
Wine 的這個新版本正在為未來做好準備!