內容來源:2017年6月17日,亞馬遜AWS解決方案架構師蒙維在“DevOps MeetUp”進行《使用codedeply實現自動化軟體部署》演講分享。IT 大咖說(id:itdakashuo)作為獨家視訊合作方,經主辦方和講者審閱授權釋出。
閱讀字數:971 | 4分鐘閱讀
摘要
AWSCodeDeploy 是一項可以將程式碼自動部署到任意例項中的服務,這些例項包括 Amazon EC2 例項和在本地執行的例項。藉助 AWS CodeDeploy,您可以更輕鬆地快速推出新功能、避免在應用程式部署過程中出現停機,並能幫助您簡化應用程式更新。您可以使用 AWS CodeDeploy 自動執行軟體部署流程,而無需進行手動操作,手動操作容易出錯。此服務還可以與您的基礎設施進行擴充套件,以便您可以輕鬆部署到一個或上千個例項中。本次講座將介紹AWS CodeDeploy基本工作原理和開發設計細節,通過現場演示環節向參會者展示CodeDeploy在程式碼自動化部署上的強大功能。
我們為什麼要開發CodeDeploy?
亞馬遜內部使用了敏捷開發模式,軟體架構採用面向服務的架構,並開發了一系列工具來協助軟體開發和部署。
自動化部署;去除手工操作;最小化停機時間;當基礎設施擴充套件後,同時更新軟體部署。
什麼是CodeDeploy?
定義
AWS CodeDeploy 是一項可以將程式碼自動部署到任意例項中的服務。
優勢
能夠做到自動部署,最小化停機時間,甚至做到零停機。還有集中控制,便於使用。
自動部署
在開發、測試和生產環境間一致性部署應用程式版本;
與Auto Scaling整合;
可隨著基礎設施一起擴充套件,可部署一臺或數千臺EC2。
最小化停機時間
最小化停機時間的核心思想就是保證它在任何時間都要有可工作的伺服器。對EC2例項執行輪流更新,跟蹤被部署應用的健康狀況,部署過程能夠被停止或回退。
集中控制
可從AWS管理控制檯、CLI、SDK和API啟動、控制和監控部署,以部署組的方式組織管理你的測試或生產環境,跟蹤檢視部署歷史。
便於使用
可部署任何型別應用並且重用已有的安裝程式碼;與現有的軟體交付工具鏈整合使用;可使用AWS合作伙伴提供的預整合方案。
如何開始使用CodeDeploy?
如何工作
AmazonS3中會放要交給它釋出的原始碼、二進位制、相關的頁面動態檔案,以及自己開發部署的指令碼。所有的管理控制通過AWS CodeDeploy,Amazon EC2是一個用於放程式的目標機器。
Application
Application就是你希望在一次部署中釋出到伺服器上的任意內容集合。
Deployment Group
希望同時部署一致版本的一組EC2例項。
軟體開發過程各個階段有不同的部署需求
開發:最小化資源分配、快速啟動、很少或沒有自動化測試。
測試:資源分配需要支援效能測試、除錯資訊顯示、自動化測試。
生產:根據業務變化自動擴充套件、日誌檔案、健康檢查。
我們使用CodeDeploy還可以做什麼?
自動化部署;使用合作伙伴方案與已有CI/CD過程進行整合;多平臺部署;與CloudFormation進行整合。
今天的分享就到這裡,謝謝大家!