Account Management
AWS Service Catalog
Self-Service Product Catalog, Portfolios, Launch Constraints, Governance
Giới thiệu
AWS Service Catalog cho phép tổ chức tạo và quản lý các catalog chứa IT services đã được phê duyệt để sử dụng trên AWS. Nó giúp đạt được governance và compliance đồng thời cho phép users self-service provision resources.
Vấn đề cần giải quyết
Lợi ích chính
| Lợi ích | Mô tả |
|---|---|
| Governance | Chỉ cho phép dùng resources đã được approve |
| Compliance | Đảm bảo tuân thủ security, cost policies |
| Self-service | Users tự provision mà không cần IT support |
| Standardization | Consistent configurations across organization |
| Cost Control | Giới hạn instance types, sizes, regions |
Kiến trúc và thành phần
Các thành phần chính
Thành phần chi tiết
| Thành phần | Mô tả |
|---|---|
| Portfolio | Tập hợp các Products, được share cho users/groups |
| Product | IT service có thể deploy (CloudFormation template) |
| Provisioned Product | Instance của Product đã được deploy |
| Constraint | Rules giới hạn cách Product có thể được launch |
| Launch Constraint | IAM role dùng để launch product |
| Tag Option | Tags được tự động apply khi launch |
Cách hoạt động
Workflow cơ bản
User không cần quyền trực tiếp!
Portfolios và Products
Portfolio
Portfolio là tập hợp các Products được nhóm lại theo business function, team, hoặc project.
Product Versioning
Mỗi Product có thể có nhiều versions:
Constraints
Constraints giới hạn cách Products có thể được launch.
Các loại Constraints
| Loại | Mô tả |
|---|---|
| Launch Constraint | IAM role dùng để launch (quan trọng nhất!) |
| Template Constraint | Giới hạn parameters trong CloudFormation |
| Notification Constraint | SNS topic nhận events |
| Stack Set Constraint | Deploy across multiple accounts/regions |
Launch Constraint
Template Constraint
Giới hạn parameter choices trong CloudFormation template:
Tích hợp với các dịch vụ AWS khác
Sharing với AWS Organizations
Use Cases
1. Developer Self-Service Portal
2. Cost Control
3. Compliance/Governance
4. Multi-Account Standardization
Pricing
Mô hình giá
| Component | Chi phí |
|---|---|
| Service Catalog | ✅ Miễn phí |
| API Calls | ✅ Miễn phí |
| Resources deployed | 💰 Trả theo resources thực tế (EC2, RDS, etc.) |
💡 Key point: Service Catalog itself is FREE! Bạn chỉ trả cho resources được provision.
Best Practices
1. Portfolio Organization
| Practice | Mô tả |
|---|---|
| Group by function | Portfolios theo team/use case (Web, Data, ML) |
| Naming conventions | Consistent naming cho portfolios và products |
| Version management | Deprecate old versions, set defaults |
| Documentation | Clear descriptions cho mỗi product |
2. Security
3. Governance
- Review templates trước khi add vào catalog
- Test thoroughly trước khi share với production accounts
- Monitor usage via CloudTrail và CloudWatch
- Regular updates để patch security vulnerabilities
Exam Tips
Key Points for AWS Exams
-
Mục đích chính
- Governance + Self-service
- Pre-approved, compliant resources
- Users không cần quyền AWS trực tiếp
-
Core Concepts
- Portfolio = Collection of Products
- Product = CloudFormation template
- Launch Constraint = IAM role để launch
-
Key Feature: Launch Constraint
- Users chỉ cần
servicecatalog:*permissions - Launch Constraint Role có quyền AWS (ec2, rds, etc.)
- = Governance achieved!
- Users chỉ cần
-
Sharing
- Share portfolios via AWS Organizations
- Cross-account governance
-
Pricing
- Service Catalog = FREE
- Pay for resources provisioned
Common Exam Scenarios
| Scenario | Answer |
|---|---|
| Developers need self-service with governance | AWS Service Catalog |
| Restrict EC2 instance types for cost | Template Constraints |
| Users deploy without direct AWS perms | Launch Constraints |
| Share approved resources across accounts | Portfolio sharing via Organizations |
| Compliant infrastructure deployment | Pre-approved templates in Service Catalog |
So sánh với các dịch vụ khác
| Feature | Service Catalog | CloudFormation | Control Tower |
|---|---|---|---|
| Purpose | Self-service + Governance | Infrastructure as Code | Account governance |
| User target | End users (developers) | DevOps/Admins | Security/Compliance |
| Abstraction | High (curated products) | Low (raw templates) | High (guardrails) |
| Multi-account | Via Organizations | Via StackSets | Native |