AWS Associate Certificate 攻略

陳雁智 (Marat Y. C. Chen)
Manjeaneer
Published in
8 min readFeb 18, 2018

--

因為工作需求,入手三張 AWS Associate Level 證照,把準備過程跟心得整理一下,供需要的朋友參考

TL;DR

  • 不確定程度,先看 a cloud guru 的課程, Udemy 購買後寫信轉 account 到 a cloud guru 看討論版跟心得,LinuxAcademy 的 SAA 課程更詳細,預算夠可以搭配使用
  • 有實務經驗,直接做 Whizlab diagnostic test,combo code 買下去不貴,掃題都有 80% PASS 就可以考
  • 白皮書跟 FAQ 很營養,投資報酬率低,有實務經驗後拿來修練比較有
  • 三張重疊的部分其實不少,SAA 考完再熟 DynamoDB 大概 DOA 也差不多,SOA 倒是很強調細節跟服務本身的行為

要把考試講得很複雜我不太會,以下簡單介紹三張證照筆者還有印象的部分

AWS Solution Architect Associate (SAA)

對 AWS 服務不熟就從這張開始,必考 VPC, EC2, EBS, ELB, RDS S3, StorageGateWay, IAM, SQS, SNS,主要重點在認識大部分 AWS 的服務差異跟各主適合的使用情境,比如典型的 3 Tier Web Application 會在 VPC public subnets 內放置 ELB 並分流到 EC2 ,並且把 RDS instances 放在 private subnets 內

幾個重點服務至少要掌握的基本:

  • VPC 實做要熟到能從零自建到一個有 Network ACL 跟 NAT Gateway/Instance 並且用 ELB 分流的程度,知道無法 ssh 進 instance 或 HTTP 不通可能是什麼原因,Network ACL 跟 Security Group 差異在那裡 (stateless 跟 stateful ) ,NAT Gateway 跟 private subnets 的關係,建 NAT instance 後 source designation check 要關才能順利運作,VPC 不充許 transitive peering,Direct connect 跟 VPN 差在那裡,如何互補
  • EC2 的 instance type 有那幾種,各自適合什麼樣的用途,租用的種類有那些 (on-demand, reserved, spot),tendency 差別是什麼,placement group 有什麼好處,EBS-backed 跟 instance store-backed 的差異,EBS 種類,EBS snapshot 存在那裡,Auto-Scaling 如何運作
  • RDS 支援 MySQL, Aurora, PostgreSQL, MariaDB, Oracle, SQL Server 這六種,那些支援 Multi-AZ 跟 read replica ,這兩個 feature 在 replication 差異在那,RDS instance 的 security group 至少要有什麼設定
  • S3 Storage class 有那些,IAM Policy 跟 Bucket Policy 的差異跟各自的用途,什麼時候用 IA, RSS, 跟 Glacier,encryption 方式有那些,S3 bucket 的 URL 格式如何,S3 如何建置 static website,CORS 設定主要針對什麼情況,什麼時候需要用到 Multi-upload,單一 Object 最大容量,3 種 Storage Gateway 的差別為何跟對應的情境
  • IAM 的 root account, user, group, role, policy 各自是什麼,role 跟 STS 的關係,federation 是怎麼做的,deny, explicit allow 跟 explicit deny 在 policy 內如何評估 (evaluate)
  • SQS, SNS, SWF 差異為何跟各自對應的情境

看完 a cloud guru 的 video 應該就有一半的基本認識,細節部分再參考 LInuxAcademy 的課程做得相對詳細,裡面的 Orion paper 把服務間的關係整理得很清楚,多掃幾次 Whizlab 的考題,整理自己不熟的服務跟差異點後再回顧,練習題順到 40 分鐘內可以掃完通過考試不是問題,想投機掃 Whizlab 硬考雖然可以,只是往後上手還是要再來一次,不如好好準備一次

另外 a cloud guru SAA 裡的 mega test 難度太難了,跟 SAA 實際考題差太多,可以挑戰但以 Whizlab 為主

AWS Developer Associate (DOA)

  • 有準備過 SAA 的話這張應該算最簡單,跟 SAA 重覆的部分很多,當時看到 a cloud guru 一堆 90%+ 以為怎麼大家都這麼強,考過後覺得這張最簡單,廣度沒有 SAA 寬,對幾個服務的基本細節,像是 API 或 CLI 需要深入認識,但不必全部都懂,課程練習題跟 whizlab 有提過的留下印象就好
  • DynamoDB, 必考,需要多花一點時間瞭解跟實作,像是 table, attribute, primary key, partition key, sort key, hash key, range key, global index, local index, 各自的關係跟差異,read 跟 write capacity 的計算一定考
  • CloudFormation 也是重點,stack template 包含那些,resource 一定要有,intrinsic function 跟 pseudo variable 有那幾個,跟 OpsWorks 還有 ElasticBeanStalk 的差別在那裡,stack 建立失敗的行為
  • S3 的 API call, CLI, policy 也是熱門考點,比如自建 encryption key 要帶那些 header 進 request, versioning 建立跟刪除的行為,API 回傳的 status code 可能是什麼原因
  • SQS 跟 SNS 的 API 跟相關實作,whizlab 考過檢討會了就足夠
  • 各個服務的預設限制,像 DynamoDB table 上限,S3 bucket 上限,SQS message 會留多少這類,建議把 Whizlab 練習題考過的都整理起來

AWS Sysops Administrator (SOA)

考題難度最難最細,主要範圍有 Auto-Scaling, ELB, CloudWatch, RDS, S3 bucket Policy, IAM policy 跟 Billing,以情境題為主,裡面蠻多題目在實務上也會碰到,主要方向是各個服務在不同情況下的行為

  • CloudWatch 如何自定 metric,送 GET 跟 POST 的限制各別是什麼,那些 metrics 需要自定,相關的參數,CloudWatch 跟 Auto-scaling 如何搭配,那些服務有 detailed monitoring,ELB 跟 Auto-scaling 的 detailed monitoring 不另外收費,alarm 如何測試,billing alarm 如何設定
  • Auto-scaling 各項行為,minimum, desired, maximum capacity 的關係,如何在 CLI 更新設定,suspend 的時候如果 policy 條件被觸發會如何,redistribution 可能會發什麼情況,支援那些 notification 跟可以執行什麼動作,跟 ELB 的搭配,health check EC2 instance 跟 ELB 的差別
  • ELB sticky session, draining connection, health check 各自要解決什麼問題
  • RDS automatic backup 跟 manual backup 差別為何,在 console 可以看到那些 log,Disaster Recovery 要怎麼做,Multi-AZ 如何實行,有 update 時 Master 跟 Slave 如何被 update,跟 read replica 在 replication 的差異
  • ElastiCache 裡 memcache 跟 redis 各自有那些重點指標需要看,eviction 太高該如何解決
  • IAM policy 解讀,如何限制 IP 的 condition ,跟 identity provider 怎麼搭配

原本以為 SAA 跟 DOA 準備過後這張也會很順,做完 whizlab diagnositc test 後發現一塌糊塗後才回來把考題針對的服務的細節跟行為重新整理跟實驗,過程中也弄清楚沒想過那些情況跟服務對應的行為

總結

筆者從開始準備到三張都拿到大概三個半月,前兩個月是待業狀態,投入的時間相對多,一開始 SAA 先把 a cloud guru 用 1.25X-1.5X 看完,不熟的部分再 1.5X-2X 複習,做了 mega test 後發現不太夠又趁 LinuxAcademy 特價入手,再把不熟的部分再 1.5X 或跳段看,接著掃 Whizlab 考題配 FAQ 看完,SAA 6 個 mockup test 平均大概 80% 就預約考試,DOA 跟 SOA 以 LinuxAcademy 跟 Whizlab 搭配,平圴也是 1.25X-1.75X 的速度看教學跟練實作,SAA 重覆的部分直接跳過,Whizlab 邊掃題邊檢討跟看 FAQ,以 Whizlab 答題率 80% 當做準備完成的門檻

以上整理得不盡完善但希望可以幫忙一樣準備證照的朋友們探索一點方向,總結一下個人對三張證照的解讀

  • SAA: 各項 AWS 服務功能認識及不同情境下各個服務如何搭配
  • DOA: 對 CLI 跟 API 有基本認識
  • SOA: AWS 服務在不同情境下的行為,認識 security 及 disaster recovery 的基本做法

現在回顧覺得證照本身價值並不高,準備過程學習 AWS 各個服務特性跟應用情境,提昇閱讀文件跟 spec 都順暢度帶來的收穫更有價值

--

--

陳雁智 (Marat Y. C. Chen)
Manjeaneer

project manager/savvy programmer/marathon runner/critical reader