AWS Certified Solutions Architect – Associate 是一個專業認證,旨在評估個人在設計和實現AWS雲端解決方案方面的技能。這個認證適合具有一年以上設計雲端解決方案經驗的人,不需要深入的實際編程經驗,但熟悉基本的編程概念會有助於準備。
認證概述
- 考試時間:130分鐘
- 考試形式:65個問題,包括多選和多答案題
- 費用:150美元
考試心得
雖然考試題目有65題問題,但其中有 15 題不會影響不計分。最低合格分數為720分,滿分是1000分。而考試難度比Cloud Practitioner會深。考試問題同答案會較長,情境題目較多,測試考生是否懂得善用AWS產品解決問題。
考試領域和權重:
- 領域 1: 設計安全架構 (佔計分內容的 30%)
- 領域 2: 設計彈性架構 (佔計分內容的 26%)
- 領域 3: 設計高效能架構 (佔計分內容的 24%)
- 領域 4: 設計成本最佳化架構 (佔計分內容的 20%)
考試內容詳解:
1. 計算設計
- 選擇適合的計算服務:決定使用EC2、Lambda等服務來運行應用程式。
- 配置高效能的計算資源:調整EC2實例大小、使用Auto Scaling等技術來應對工作負載變化。
2. 存儲設計
- 選擇適當的存儲解決方案:根據數據的使用頻率和類型,選擇使用S3、EBS、EFS或Glacier等存儲服務。
- 設計高可用性的存儲:實現多區域備份和恢復策略,保證數據的可靠性和可訪問性。
3. 網絡設計
- 配置安全和高效的網絡:設計VPC、子網、NACL和安全組來保護應用程式和數據。
- 實現可伸縮的網絡架構:使用Elastic Load Balancing、Route 53等來實現流量分配和高可用性。
4. 安全性
- 設計安全的應用程序和基礎設施:運用IAM角色和策略來控制訪問權限,使用加密技術保護數據安全。
- 落實合規性要求:遵守法律和行業標準,確保系統符合安全規範。
5. 數據庫設計
- 選擇合適的數據庫服務:根據工作負載和性能需求,選擇使用RDS、DynamoDB、Aurora等數據庫服務。
- 設計高效的數據庫架構:實現數據庫的高可用性和故障恢復策略。
6. 成本管理
- 設計具成本效益的架構:監控和優化資源使用,使用預留實例和成本管理工具來控制開支。
以下溫習要點必須要明白,所有AWS題目不停圍繞住以下要點去問:
High Availability
The design and implementation of systems that are resilient and can operate continuously without significant downtime. The goal is to ensure that applications and services are always accessible, even in the event of hardware or software failures.
Key Components:
- Redundancy: Implementing redundancy at various levels (e.g., multiple instances, availability zones, regions) to eliminate single points of failure.
- Load Balancing: Distributing incoming traffic across multiple servers to ensure no single server becomes a bottleneck.
- Automated Monitoring and Failover: Using automated tools to monitor system health and automatically switch to backup systems in case of failure.
- Scalability: Designing systems that can handle increased load by adding resources dynamically.
- Backup and Disaster Recovery: Regularly backing up data and having a disaster recovery plan in place to restore services quickly in case of a major incident.
Fault Tolerance
The ability of a system to continue operating properly even if some of its components fail. This concept ensures that your applications remain available and reliable, minimizing the risk of downtime and maintaining business continuity.
Key Concepts:
- Redundancy: Deploying multiple instances of critical components across different Availability Zones (AZs) or regions to prevent single points of failure.
- Automated Failover: Using services like Amazon Route 53 to automatically redirect traffic to healthy instances in case of failure.
- Health Checks: Continuously monitoring the health of instances and services using AWS CloudWatch and other monitoring tools to detect and respond to issues promptly.
- Replication: Copying data across multiple storage devices and regions using services like Amazon S3 Cross-Region Replication or RDS Read Replicas to ensure data availability.
- Self-Healing: Utilizing Auto Scaling groups to automatically replace unhealthy instances and maintain the desired number of running instances.
Scalability
The capability of a system to handle increased loads by adding resources as needed. This is crucial for applications that experience varying levels of traffic and need to maintain performance regardless of demand.
Key Concepts:
- Vertical Scalability: Increasing the capacity of a single resource, such as upgrading to a more powerful EC2 instance type. This is often referred to as “scaling up.”
- Horizontal Scalability: Adding more instances of a resource to distribute the load, such as launching additional EC2 instances to handle increased traffic. This is known as “scaling out.”
- Auto Scaling: AWS provides Auto Scaling services that automatically adjust the number of EC2 instances based on the current demand. This ensures that applications always have the right amount of resources.
- Elastic Load Balancing (ELB): Distributes incoming application or network traffic across multiple targets (e.g., EC2 instances) to ensure no single instance is overwhelmed.
- Serverless Architectures: Using services like AWS Lambda, which automatically scale the execution of functions based on demand without needing to manage servers.
Serverless
A cloud computing execution model where the cloud provider, AWS, automatically manages the infrastructure required to run your applications. This means you don’t have to worry about server provisioning, scaling, or maintenance. Instead, you can focus on writing and deploying code.
Key Features:
- No Server Management: You don’t have to manage the underlying servers or infrastructure.
- Automatic Scaling: AWS automatically scales your application in response to incoming traffic and demand.
- Pay-Per-Use: You only pay for the compute resources you consume, which can lead to significant cost savings.
- Event-Driven: Functions are triggered by various events, such as HTTP requests, changes in data, or scheduled tasks.