Chuyển đến nội dung chính

第9課:安全性與成本最佳化

SageMaker的IAM角色和政策。VPC設定、PrivateLink。 靜態加密(KMS)和傳輸加密。Spot Training Instances。 S3生命週期政策。執行個體適當調整。

AWS ML Security Architecture

AWS ML安全性:IAM角色、VPC隔離、KMS加密與Spot Instances成本最佳化

1. SageMaker的IAM

SageMaker使用IAM角色(而非使用者)來對AWS資源執行操作。這是考試中重要的安全模式。

角色類型使用者需要存取
執行角色SageMaker筆記本、訓練工作、端點S3、ECR、CloudWatch、KMS
SageMaker Studio角色Studio IDE使用者數據、實驗、管線
訓練工作角色訓練容器本身輸入/輸出S3儲存桶

考試提示: SageMaker訓練/推論容器沒有EC2執行個體憑證 — 它們使用跨帳戶IAM角色執行。務必為執行角色授予S3和ECR權限。

2. SageMaker的VPC設定

在VPC中執行SageMaker工作負載,確保流量不經過公共網際網路。

SageMaker Network Security:

Internet ──✗────────────────────────────────────────
                                                    │
          ┌─── Private VPC ──────────────────────┐ │
          │                                       │ │
          │  SageMaker Training Instance          │ │
          │          ↓ (VPC Endpoint)             │ │
          │  ┌──── S3 Gateway Endpoint ────────┐  │ │
          │  │   ECR VPC Endpoint              │  │ │
          │  │   SageMaker API VPC Endpoint    │  │ │
          │  └─────────────────────────────────┘  │ │
          └───────────────────────────────────────┘ │
功能說明
VPC端點(PrivateLink)無需網際網路即可存取S3、ECR、SageMaker API
安全群組控制訓練執行個體的入站/出站流量
網路隔離訓練工作沒有網際網路存取(隔離模式)
容器間加密加密分散式訓練流量

3. 加密

項目方式服務
S3靜態數據SSE-S3、SSE-KMS、SSE-CS3 + KMS
靜態模型產出物輸出S3儲存桶的KMS金鑰KMS
EBS磁碟區(訓練)執行個體儲存的KMS加密KMS
傳輸中數據所有API呼叫使用TLS 1.2/1.3預設
分散式訓練流量啟用容器間加密SageMaker設定

4. 成本最佳化策略

策略節省幅度方式
Spot Instances高達90%訓練工作 + 檢查點
適當調整20-40%將執行個體類型與實際GPU/CPU使用量匹配
無伺服器推論不定按調用付費、無閒置成本
SageMaker Savings Plans高達64%承諾持續使用量
S3 Intelligent-Tiering不定自動分層舊訓練數據
生命週期設定不定自動停止閒置筆記本

4.1. ML數據的S3生命週期政策

Data Lifecycle for ML:

  Active Training Data (S3 Standard)
           ↓ after 30 days unused
  S3 Intelligent-Tiering
           ↓ after 90 days
  S3 Standard-IA (Infrequent Access)
           ↓ after 180 days
  S3 Glacier Instant Retrieval
           ↓ after 1 year
  S3 Glacier Deep Archive (compliance)

5. 合規框架

框架ML相關性
HIPAA醫療ML — PHI數據加密、稽核日誌、需要BAA
GDPR歐盟數據 — 被遺忘權、數據最小化、同意
SOC 2SaaS ML產品的安全控制稽核
PCI DSSML模型中的支付卡數據

6. 速查表 — 安全性與成本

情境解決方案
SageMaker訓練無網際網路VPC + 網路隔離 + VPC端點
加密S3上的訓練數據SSE-KMS搭配客戶管理金鑰
降低70%以上訓練成本Spot Instances + 檢查點
自動封存舊訓練數據集S3生命週期政策
防止筆記本閒置成本Studio生命週期設定 → 自動關閉
醫療數據(HIPAA)KMS + VPC + CloudTrail + 與AWS簽訂BAA

7. 練習題

Q1: 一家公司需要SageMaker訓練工作在存取S3數據時不經過公共網際網路,以符合安全合規要求。應該如何設定?

  • A) VPC Flow Logs
  • B) SageMaker Training搭配VPC + S3 VPC Gateway Endpoint ✓
  • C) 帶IP限制的IAM政策
  • D) AWS Shield

解析:設定SageMaker Training Jobs在VPC中執行,搭配S3 VPC Gateway Endpoint,確保所有S3流量留在AWS網路內而不經過公共網際網路。

Q2: 機器學習團隊想要降低可中斷的長時間訓練工作成本。工作應該能從停止處恢復。最具成本效益的方法是什麼?

  • A) 使用更大的執行個體來加快完成速度
  • B) 使用Reserved Instances
  • C) 使用Spot Instances搭配S3檢查點 ✓
  • D) 在本地執行訓練

解析:Spot Instances可節省高達90%的成本。啟用檢查點(定期將模型狀態儲存至S3)後,被中斷的工作可從最後一個檢查點恢復,使Spot Instances適用於長時間訓練。

Q3: 哪個AWS服務提供集中式金鑰管理,用於加密SageMaker訓練數據、模型產出物和EBS磁碟區?

  • A) AWS Secrets Manager
  • B) AWS IAM
  • C) AWS KMS(Key Management Service) ✓
  • D) AWS Certificate Manager

解析:AWS KMS提供靜態加密的金鑰管理,涵蓋S3數據(SSE-KMS)、訓練執行個體使用的EBS磁碟區和模型產出物。SageMaker在整個訓練和部署工作流中原生整合KMS。