AWS - Service Catalog
Service Catalog
AWS Service Catalog 允許組織創建和管理已批准的 IT 服務目錄,
這些服務可以在 AWS 上部署。
核心價值
- 標準化部署
- 治理與合規
- 自助服務
- 成本控制
- 版本管理
主要用途
讓終端使用者(開發者、數據科學家等) 能夠
- 快速部署預批准的 IT 服務
- 無需深入的 AWS 知識
- 遵循組織標準和政策
核心組件
Product (產品)
一個可部署的 IT 服務
基於 CloudFormation 模板或 Terraform 配置
Product Type
CloudFormation Product
- 使用 CloudFormation 模板
- 最常見的類型
- 原生 AWS 支持
Terraform Product
- 使用 Terraform 配置
- 支持多雲部署
- 需要 Terraform Cloud/Enterprise
Portfolio (產品組合)
產品的集合,用於組織和訪問控制
結構
1 | Portfolio |
Portfolio Type
1 | 1. 本地 Portfolio |
Provisioned Product (已配置產品)
用戶啟動的產品實例,實際運行的 AWS 資源
生命週期
1 | 1. Launch(啟動) |
Constraints(約束)
控制產品部署方式的規則
Constraints Type
Launch Constrain(啟動約束)
用途
- 指定用於啟動產品的 IAM 角色
- 用戶無需擁有創建資源的權限
示例
Product: RDS Database
Launch Role: ServiceCatalogRDSLaunchRole
- 該角色有權限創建 RDS
- 用戶只需啟動產品的權限
Notification Constraint(通知約束)
用途
- 發送生命週期事件通知
- 使用 SNS Topic
事件
- 產品啟動
- 產品更新
- 產品終止
- 操作失敗
Template Constraint(模板約束)
用途
- 限制模板參數
- 強制特定值
示例
限制實例類型
- 只允許 t3.micro, t3.small
- 禁止使用大型實例
Stack Set Constraint(堆疊集約束)
用途
- 跨多個帳戶和區域部署
- 使用 CloudFormation StackSets
Tag Update Constraint(標籤更新約束)
用途
- 控制標籤更新權限
- 允許/禁止用戶修改標籤
Reference
- AWS - AWS Service Catalog
