基于任何云托管服務構建的大規模和高彈性應用程序都需要自動驗證、基礎設施啟動、開發和部署、質量保證和基礎設施管理。傳統的基礎設施管理正在被為產品開發生命周期的所有階段構建 CI/CD 管道所取代。
什么是開發運營?
DevOps是軟件開發和運營的結合。這是公司在敏捷開發過程中吸收的一種文化。持續集成、持續交付和持續部署的新方法隨著 DevOps 的興起而出現,其重點是:
團隊之間的溝通、協作和凝聚力
應用變更、配置和部署自動化的最佳實踐
更快地交付解決方案
監控和規劃高速產品更新
CI/CD 擺脫了手動門,實現了驗收環境的全自動驗證,以確定管道是否可以繼續生產。
持續集成側重于代碼存儲庫中各個開發人員的軟件開發周期。這可以在一天內多次執行,主要目的是盡早發現集成錯誤、更緊密的凝聚力和更多的開發協作。主要活動包括靜態代碼分析、單元測試和自動評審。
持續交付側重于在測試、暫存或生產環境中的自動化代碼部署,批準更新以實現自動化軟件發布過程,搶先發現部署問題。
開發運營的優勢
改進的協作、運營支持和更快的修復
提高靈活性、敏捷性和可靠性
基礎設施安全和數據保護
更快的維護和升級
通過數字化戰略實現項目轉型
提高業務和 IT 團隊的速度和生產力
AWS 提供了一組開發人員工具,可用于在完全安全、可擴展、可維護且易于與現有 CI/CD 工具(如 Ansible、Chef、puppet、Terraform 等)集成的情況下實現開發運營 CI/CD。
AWS 為虛擬機或基于容器的服務提供 CI/CD,以及用于管理(創建、更新和刪除)所有其他服務(如數據庫、存儲、計算機、機器學習等)的選項。
安全支柱的核心是保護信息、系統和資產,同時滿足業務需求。
適用于開發運營集成的 AWS 服務
AWS CloudFormation:提供為基礎設施和服務準備模板的工具。模板可以用 JSON 和 YAML 編寫,并且可以通過版本控制進行管理。這些模板可以在 Jenkins 或任何其他使用 AWSCLI 的 CI 服務器上執行。Terraform 為 AWS 資源管理器提供了具有豐富控件的選項,并通過狀態管理進行了擴展。
AWS OpsWorks:通過與配置管理軟件 (Chef) 集成和應用程序生命周期管理等附加功能,提供更高級別的自動化。
AWS CodePipeline: 持續交付和發布自動化服務,有助于順利部署。設計用于簽入代碼、生成代碼、將應用程序部署到暫存、測試應用程序以及將其發布到生產環境的開發工作流。
AWS CodeCommit: 托管專用 Git 存儲庫的安全、高度可縮放的托管源代碼管理服務。
AWS CodeDeploy:功能使您能夠在最短的停機時間內跨 Amazon E2C 隊列部署應用程序,集中控制并與現有軟件版本或持續交付流程集成。有第三方工具,如Claudia和Serverless,可以部署AWS lambda和elastic beanstalk。
AWS ElasticBeanstalk:支持自動化和許多其他 DevOps 最佳實踐,包括自動化應用程序部署、監控、基礎架構配置和版本管理。應用程序和基礎架構更改可以輕松地后退和后滾。
亞馬遜云服務器:高度可擴展且安全的容器服務,用于存儲 docker 映像。
AWS XRay: 記錄和跟蹤所有服務之間的通信,并檢測性能和應用程序權限中的問題。
亞馬遜云科技配置:審計工具,用于監控現有 AWS 賬戶資源,并在基礎設施發生任何更改時觸發警報。
AWS CloudTrail:支持治理、合規性、運營審計和風險審計。
AWS CloudWatch:實時監控所有 AWS 資源和應用程序。為托管服務提供大量指標,以設計儀表板、警報和觸發器。
如今,傳統的功能領域正在瓦解,IT和開發人員角色合并并遵循一系列系統原則。
基礎結構即代碼:以開發人員處理所有最佳做法和測試的代碼的方式對待基礎結構。AWS 提供以開發運營為中心的創建和維護基礎設施的方式。
持續部署:DevOps 策略的核心概念。其主要目標是實現生產就緒應用程序代碼的自動部署。
自動化:專注于基礎結構和應用程序的設置、配置、部署和支持
監控:溝通和協作是 DevOps 策略的基礎。為了促進這一點,反饋至關重要。
安全性:關注安全性仍然至關重要。基礎設施和公司資產需要得到保護,當出現問題時,需要迅速有效地解決這些問題。
為了使云軟件解決方案之旅順利、高效和有效,必須遵循 DevOps 原則和實踐。DevOps 已成為當今技術世界中任何云解決方案不可或缺的一部分。
審核編輯:郭婷
-
代碼
+關注
關注
30文章
4788瀏覽量
68612 -
虛擬機
+關注
關注
1文章
917瀏覽量
28197 -
AWS
+關注
關注
0文章
432瀏覽量
24368
發布評論請先 登錄
相關推薦
評論