- 卓越營運有五項設計原則:
- 將操作視為程式碼:在雲端,您可以將用於應用程式程式碼的相同工程規範套用到整個環境。您可以將整個工作負載(應用程式、基礎架構)定義為程式碼,並使用程式碼進行更新。您可以將操作流程實作為程式碼,並透過回應事件來觸發它們,從而實現流程的自動化執行。透過將操作視為程式碼,您可以減少人為錯誤,並確保對事件做出一致的回應。
- 頻繁進行小幅、可逆的變更:設計工作負載時,應允許組件定期更新。變更應以小幅度增量進行,以便在失敗時可以撤銷(盡可能不影響客戶)。
- 定期完善操作流程:在使用操作流程的過程中,尋找改進的機會。隨著工作量的變化,流程也應隨之調整。定期安排流程審查日,以驗證所有流程的有效性,並確保團隊成員都熟悉這些流程。
- 預見故障:進行「事前分析」演練,識別潛在的故障源,以便消除或減輕其影響。測試故障場景,驗證您對故障影響的理解。測試回應流程,確保其有效,並確保團隊熟悉其執行流程。定期進行模擬演練,測試工作負載和團隊對模擬事件的反應。
- 從所有營運失敗中學習:透過總結所有營運事件和失敗的經驗教訓來推動改進。在團隊之間以及整個組織內分享這些經驗教訓。
- 安全有七項設計原則:
- 建立強大的身分基礎:貫徹最小權限原則,並針對與 AWS 資源的每次互動實施職責分離,確保適當的授權。集中管理身份,並力求消除對長期靜態憑證的依賴。
- 啟用可追溯性:即時監控、發出警報並審核環境中的操作和變更。將日誌和指標收集與系統集成,以自動調查並採取行動。
- 在所有層面應用安全措施:採用縱深防禦方法,實施多重安全控制。應用於所有層面(例如,網路邊緣、VPC、負載平衡、每個實例和運算服務、作業系統、應用程式和程式碼)。
- 自動化安全最佳實務:基於軟體的自動化安全機制可提高您安全、快速且經濟高效地擴展的能力。建立安全架構,包括實施以程式碼形式定義和管理的控制措施,這些程式碼定義和控制措施位於版本控制的範本中。
- 保護傳輸中和靜態資料:將資料分類為敏感級別,並在適當情況下使用加密、令牌化和存取控制等機制。
- 避免人員直接接觸資料:利用各種機制和工具,減少或消除直接存取或手動處理資料的需要。這可以降低處理敏感資料時發生誤操作、篡改和人為錯誤的風險。
- 做好安全事件應對準備:制定符合組織要求的事件管理和調查策略及流程,以做好應對事件的準備。進行事件回應模擬,並使用自動化工具來提高檢測、調查和復原速度。
- 可靠性有五項設計原則:
- 自動故障復原:透過監控工作負載的關鍵績效指標 (KPI),您可以在超出閾值時觸發自動化流程。這些 KPI 應衡量業務價值,而非服務運作的技術細節。這樣可以實現故障的自動通知和跟踪,以及繞過或修復故障的自動恢復流程。借助更高級的自動化功能,甚至可以在故障發生之前預測並修復它們。
- 測試復原流程:在本機環境中,測試通常用於驗證工作負載在特定場景下是否正常運作。測試通常不用於驗證復原策略。而在雲端,您可以測試工作負載的故障方式,並驗證復原流程。您可以使用自動化工具模擬不同的故障,或重現先前導致故障的場景。這種方法可以暴露故障路徑,您可以在實際故障發生之前對其進行測試和修復,從而降低風險。
- 橫向擴展以提高整體工作負載可用性:以多個小型資源取代一個大型資源,以降低單一故障對整體工作負載的影響。將請求分散到多個小型資源上,以確保它們不會共用同一個故障點。
- 停止猜測容量:本地工作負載常見的故障原因是資源飽和,即工作負載的需求超過了其容量(這通常是拒絕服務攻擊的目標)。在雲端,您可以監控需求和工作負載利用率,並自動新增或移除資源,以維持最佳水準來滿足需求,避免過度配置或配置不足。雖然仍有一些限制,但某些配額可以控制,其他配額可以管理(請參閱「管理服務配額和約束」)。
- 管理自動化變更:基礎設施的變更應透過自動化方式進行。需要管理的變更包括自動化流程的變更,以便進行追蹤和審查。
- 效能有五項設計原則:
- 普及先進技術:將複雜任務委託給雲端供應商,讓您的團隊更輕鬆地實施先進技術。與其讓 IT 團隊學習如何託管和運行新技術,不如考慮以服務形式使用這些技術。例如,NoSQL 資料庫、媒體轉碼和機器學習等技術都需要專業知識。在雲端,這些技術變成了您的團隊可以使用的服務,使您的團隊能夠專注於產品開發,而不是資源配置和管理。
- 幾分鐘內即可實現全球部署:將您的工作負載部署到世界各地的多個 AWS 區域,可以以最低的成本為您的客戶提供更低的延遲和更好的體驗。
- 使用無伺服器架構:無伺服器架構無需您執行和維護用於傳統運算活動的實體伺服器。例如,無伺服器儲存服務可以充當靜態網站(無需 Web 伺服器),事件服務可以託管程式碼。這消除了管理實體伺服器的維運負擔,並且由於託管服務以雲端規模運行,因此可以降低交易成本。
- 更頻繁地進行實驗:借助虛擬和可自動化的資源,您可以快速使用不同類型的實例、儲存或配置進行比較測試。
- 考慮機制相容性:了解雲端服務的使用方式,並始終採用最符合工作負載目標的技術方案。例如,在選擇資料庫或儲存方案時,請考慮資料存取模式。
- 成本優化有五項設計原則:
- 實施雲端財務管理:為了在雲端實現財務成功並加速業務價值的實現,您需要投資雲端財務管理/成本優化。您的組織需要投入時間和資源來建立在這個新興技術和使用管理領域的能力。與安全或卓越營運能力類似,您需要透過知識累積、專案、資源和流程來建立能力,從而成為一個成本效益高的組織。
- 採用按需付費模式:僅需為實際使用的運算資源付費,並根據業務需求靈活調整使用量,無需進行複雜的預測。例如,開發和測試環境通常在工作日每天僅使用 8 小時。您可以在資源閒置時將其停止使用,從而節省高達 75% 的成本(40 小時對比 168 小時)。
- 衡量整體效率:衡量工作量帶來的業務產出以及交付工作量相關的成本。利用此指標,您可以了解透過提高產出和降低成本所獲得的效益。
- 停止在無意義的繁重工作上浪費資金:AWS 承擔了資料中心運維的繁重工作,例如伺服器的機架安裝、堆疊和供電。它還透過託管服務免除了您管理作業系統和應用程式的維運負擔。這使您可以專注於客戶和業務項目,而不是 IT 基礎架構。
- 分析和歸因支出:雲端運算使準確識別系統的使用情況和成本變得更加容易,從而可以透明地將 IT 成本歸因於各個工作負載所有者。這有助於衡量投資報酬率 (ROI),並使工作負載所有者有機會優化資源和降低成本。
- 永續性有六項設計原則:
- 了解您的影響:衡量雲端工作負載的影響,並模擬其未來影響。納入所有影響來源,包括客戶使用產品的影響,以及產品最終停用和退役的影響。透過檢討每單位工作所需的資源和排放,比較雲端工作負載的生產產出與整體影響。利用這些數據建立關鍵績效指標 (KPI),評估在提高生產力的同時降低影響的方法,並估算建議變更隨時間推移的影響。
- 制定永續發展目標:針對每個雲端工作負載,制定長期永續發展目標,例如降低每筆交易所需的運算和儲存資源。對現有工作負載的可持續發展改進進行投資回報率建模,並為所有者提供投資可持續發展目標所需的資源。規劃成長,並建立工作負載架構,使成長能夠降低影響強度(以適當的單位衡量,例如按使用者或按交易)。目標有助於支持企業或組織更廣泛的永續發展目標,識別倒退點,並確定潛在改善領域的優先順序。
- 最大化利用率:合理配置工作負載並實施高效設計,以確保高利用率並最大限度地提高底層硬體的能源效率。由於每台主機的基準功耗不同,兩台利用率均為 30% 的主機效率低於一台利用率 60% 的主機。同時,消除或最大限度地減少閒置資源、處理和存儲,以降低運行工作負載所需的總能耗。
- 預見並採用更有效率的新型硬體和軟體產品:支援合作夥伴和供應商的上游改進,以幫助您降低雲端工作負載的影響。持續監控和評估更有效率的新型硬體和軟體產品。設計時要考慮靈活性,以便快速採用新的高效技術。
- 使用託管服務:在廣泛的客戶群中共享服務有助於最大限度地提高資源利用率,從而減少支援雲端工作負載所需的基礎架構。例如,客戶可以透過將工作負載遷移到 AWS 雲端並採用託管服務(例如用於無伺服器容器的 AWS Fargate)來分擔通用資料中心元件(例如電力和網路)的影響。 AWS 會大規模運作這些服務,並負責其高效運作。使用有助於最大限度減少影響的託管服務,例如使用 Amazon S3 生命週期配置將不常用的數據自動遷移到冷存儲,或使用 Amazon EC2 自動擴展來調整容量以滿足需求。
- 降低雲端工作負載的下游影響:減少使用服務所需的能源或資源。減少或消除客戶為使用服務而升級設備的需要。使用設備集群進行測試,了解預期影響,並與客戶一起進行測試,以了解使用服務的實際影響。









