

# 開發與部署程序
<a name="a-sus-development-deployment"></a>

**Topics**
+ [SUS 6 您的開發和部署程序如何支持您的永續性發展目標？](w2aac19c15c15b5.md)

# SUS 6 您的開發和部署程序如何支持您的永續性發展目標？
<a name="w2aac19c15c15b5"></a>

透過變更開發、測試和部署實務來尋找降低永續性影響的機會。 

 最佳實務： 

# SUS06-BP01 採用可以快速引入永續性改進的方法
<a name="sus_sus_dev_a2"></a>

 在將潛在改善部署到生產環境之前，先對其進行測試和驗證。在計算改善所帶來的未來潛在利益時，應考慮測試成本。開發低成本測試方法，以交付小幅改善。 

 **若未建立此最佳實務，暴露的風險等級：** 中 

## 實作指引
<a name="implementation-guidance"></a>
+  在開發程序中新增永續性要求。 
+  允許資源平行運作，以開發、測試和部署永續性改進。 
+  在部署到生產環境之前，測試並驗證潛在永續性影響改善。 
+  使用最低可行的代表元件測試潛在改善。 
+  在將經過測試的永續性改善可用時將其部署至生產環境。 

## 資源
<a name="resources"></a>

 **相關文件：** 
+  [AWS 提供永續性解決方案](https://aws.amazon.com/sustainability/) 

 **相關範例：** 
+  [實驗室：將](https://www.wellarchitectedlabs.com/sustainability/300_labs/300_cur_reports_as_efficiency_reports/) 成本和用量報告轉換為效率報告 

# SUS06-BP02 讓工作負載保持在最新狀態
<a name="sus_sus_dev_a3"></a>

 最新的作業系統、程式庫和應用程式可改進工作負載效率，讓您更輕鬆地採用更有效率的技術。隨著供應商提供符合自身永續性目標的功能，最新軟體也可能包含更準確測量工作負載對永續性影響的功能。 

 **常見的反模式：** 
+  您假設您目前的架構將變成靜態，且不會隨著時間而更新。 
+  您沒有任何系統或定期規律可評估更新的軟體與套件是否與您的工作負載相容。 
+  您會隨時間導入架構變更，而且無需理由佐證。 

 **建立此最佳實務的優勢：** 藉由建立讓工作負載保持在最新狀態的程序，您將可採用新的特性和功能、解決問題，並且改善工作負載效率。

 **未建立此最佳實務時的曝險等級：** 低 

## 實作指引
<a name="implementation-guidance"></a>
+  定義相關程序和排程來評估工作負載的新功能和執行個體。利用雲端的靈活性快速測試新功能對您的工作負載有何改善，藉以： 
  +  降低永續性的影響。 
  +  獲得效能效率。 
  +  消除已計劃改善的障礙。 
  +  提升測量和管理永續性影響的能力。 
+  清查工作負載軟體和架構，並識別需要更新的元件。您可以使用 [AWS Systems Manager 清查](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-inventory.html) ，從您的 Amazon EC2 執行個體收集作業系統 (OS)、應用程式和執行個體中繼資料，並快速了解哪些執行個體正在執行您的軟體政策所需的軟體與組態，以及哪些執行個體需要更新。 
+  了解如何更新工作負載的元件。 
  +  使用下列工具管理 [Amazon Machine Images (AMI)](https://aws.amazon.com/amis/) for Linux/Windows 伺服器映像的更新： [EC2 Image Builder](https://aws.amazon.com/image-builder/)。 
  +  您應使用 [Amazon Elastic Container Registry (Amazon ECR)](https://docs.aws.amazon.com/AmazonECR/latest/userguide/what-is-ecr.html) 搭配現有管道來 [管理 Amazon Elastic Container Service (Amazon ECS) 映像](https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_on_ECS.html) 和 [管理 Amazon Elastic Kubernetes Service 映像。](https://docs.aws.amazon.com/=AmazonECR/latest/userguide/ECR_on_EKS.html) 
  +  AWS Lambda 包含 [版本管理功能。](https://docs.aws.amazon.com/lambda/latest/dg/configuration-versions.html) 
+  使用更新程序自動化，以減少部署新功能的工作量，並避免手動程序引起的錯誤。使用 [AWS Systems Manager Patch Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) 之類的工具自動執行系統更新的程序，並使用 [AWS Systems Manager 維護時段來排程活動](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-maintenance.html)。 

## 資源
<a name="resources"></a>

 **相關文件：** 
+  [AWS 架構中心](https://aws.amazon.com/architecture) 
+  [AWS 最新消息](https://aws.amazon.com/new/?ref=wellarchitected&ref=wellarchitected) 
+  [AWS 開發人員工具](https://aws.amazon.com/products/developer-tools/) 
+  [AWS Systems Manager Patch Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) 

 **相關範例：** 
+  [Well-Architected 實驗室：清查和修補程式管理](https://wellarchitectedlabs.com/operational-excellence/100_labs/100_inventory_patch_management/) 
+  [實驗室：AWS Systems Manager](https://mng.workshop.aws/ssm.html) 

# SUS06-BP03 提高建置環境的使用率
<a name="sus_sus_dev_a4"></a>

 使用自動化和基礎設施即程式碼，在需要時啟動生產前環境，並在不使用時將其關閉。常見的模式是排程可用性時間，使之與開發團隊成員的工作時間一致。休眠是一種有用的工具，可保留狀態，並在需要時快速讓執行個體上線。使用具有高載容量的執行個體類型、Spot 執行個體、彈性資料庫服務、容器和其他技術，以根據使用量調整開發和測試容量。 

 **若未建立此最佳實務，暴露的風險等級：** 低 

## 實作指引
<a name="implementation-guidance"></a>
+  利用自動化來最大化開發和測試環境的使用率。 
+  使用自動化來管理開發和測試環境的生命週期。 
+  使用最低可行的代表環境來開發和測試潛在改善。 
+  使用隨需執行個體補充開發人員裝置。 
+  使用自動化來最大化建置資源的效率。 
+  使用具有高載容量的執行個體類型、Spot 執行個體和其他技術，以根據使用量調整建置容量。 
+  採用原生雲端服務來獲得安全的執行個體 Shell 存取，而非部署堡壘主機機群。 

## 資源
<a name="resources"></a>

 **相關文件：** 
+  [AWS Systems Manager Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html) 
+  [Amazon EC2 高載效能執行個體](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) 
+  [什麼是 AWS CloudFormation？](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 

# SUS06-BP04 使用受管 Device Farm 進行測試
<a name="sus_sus_dev_a5"></a>

 受管 Device Farm 可將硬體製造和資源使用的永續性影響分散給多個租用戶。受管 Device Farm 提供多種裝置類型，因此您可以支援較舊且較不熱門的硬體，並避免不必要的裝置升級對客戶的永續性造成影響。 

 **若未建立此最佳實務，暴露的風險等級：** 低 

## 實作指引
<a name="implementation-guidance"></a>

 使用具有代表性硬體集的受管 Device Farm 進行測試，以了解變更的影響，並迭代開發以最大化支援的裝置。 

## 資源
<a name="resources"></a>

 **相關文件：** 
+  [什麼是 AWS Device Farm？](https://docs.aws.amazon.com/devicefarm/latest/developerguide/welcome.html) 