AWS Certified SysOps Administrator - Associate 準備心得


考完 Solutions Architect (以下簡稱 ASA) 之後,就開始準備考這張 SysOps Administrator (以下簡稱 ASOA),主要因為現在主要的工作內容就是 System Operations / Administration 為主。

以下整理 Study 的摘要與心得。

Updated 2018/06/12:AWS 已經發布新版的 SysOps 版本,正在準備的人請注意 官方資訊 - SOA-C01 (PDF)。


準備的方向

範圍跟 ASA 一樣的參考點,都還是來自 BluePrint.

考試項目

以下根據 BluePrint 的準備 Domain / Topic ,我自己在每個項目放入一些 AWS Services,還有相關的課題當作準備的方向:

  1. Monitoring and Metrics:
    • CloudWatch 基本的概念,包含 Namespaces、Dimensions、and Metrics.
    • 透過 CloudWatch 監控相關的服務,像是 ELB、EC2、RDS、ElasticCache、ASG
    • EC2 開機的生命週期、狀態等
    • 如何建構一個 global 的 Monitor System
    • 如何保護 VPC 裡的 Monitor System
  2. High Availability:
    • ELB / ASG: ASG 的生命週期、跟 ELB 的搭配、預算考量、還有 Troubleshooting
    • RDS / ElasticCache: RDS MultiAZ 是什麼,跟 Replica 有啥差?Failover 是啥?
    • VPC (AZ): VPC 很重要,真的很重要!不只這張,ASA 也是很重要,很多觀念都會跟 VPC 有關係,所以一定要把 VPC 概念搞懂、弄熟、多做 Troubleshooting 很重要!
    • 建立各式各樣的 HA: VPN (VGW)、NAT、EC2
  3. Analysis
  4. Deployment and Provisioning
    • AWS CLI
    • OpsWorks、CloudFormation
  5. Data Management:
    • 相關服務:S3、EBS、Storage Options
    • Backup and Recovery
  6. Security: IAM、Cloudtrail、STS、Security Process on AWS
  7. Network: VPC / Route53 / VPC / Direct Connect
    • 再次強調,VPC 很重要!實務上更是,因為沒弄好,維護以及資安會是一場災難。

ASOA 的準備方式其實跟 ASA 很像,不過前者分布比較平均,基本上啥都要懂一些,考的內容大概也都是做 Operator 真的會遇到的;而 ASA 比較偏向架構面的設計。

Whitepapers (必讀)

同樣的 Whitepapers 還是很重要,以下是 Blueprint 提到要讀的,有些跟 ASA 重複了。

準備資源

  • A Cloud Guru: 提供 AWS 認證線上錄影課程,包含五張證照以及其他像是 Lambda、Security、CloudFormation 都有。證照有包含模擬考。
  • CloudAcademy: 有 APP 可以做練習,一個月 150,題庫很多。
  • Jayendra’s Blog: 一個整理很多 AWS 服務重點的 Blog,而且還把蒐集了不少題目,對考試來說,很有參考價值。

補充:A Cloud Guru 是不錯的 Guideline,不過模擬考偏簡單、而且內容有點舊、範圍我覺得可以討論。實際考試會是 Troubleshooting 比較多,所以最好多練習為主。

除了上述東西,其實準備這張的過程,我大部份時間都在看 Youtube 上的 seminar,以下是我自己看過整理的 playlist:

不過其實跟這張考試內容沒啥關係 :p

建議閱讀

  • AWS Tutorial Series 這裡有些不錯的 Tutorial & Lab,針對沒有使用過的 Services 或者應用,如果沒有資源可以練習,可以從這理著手。System Operations 有些事情是很難做 Lab 的,像是 VPN to on-premises ,公司可能沒有那麼多設備可以實驗。
  • AWS on Youtube: 這裡的資源真的很多,幾乎所有的 AWS Summit 都在上面。有這幾大類:IntroductionDeep DiveMasterclassWebinar年度各區域的 Summit SeriesCase Study. 建議依據 Blueprint 的 topic,然後整理出自己的 playlist,定時閱讀,增加內力!

考試心得

心得一:證照有用?

台灣人最厲害的就是考試,特別是證照。像是 M$ MCXX 系列一向在業界的鑑別度不高,也就是不會因為有這張就受公司、老闆信任,也不代表真的能領高薪、有實力。

考完 ASA 之後,我也面臨被公司或同事 Challenge 證照是否有用?是否代表實力?證照是加分還是減分?這張 SysOps Admin 是跟系統維運比較有關係,其實就是我現在工作的主要內容,實務上來說比上一張還有用。考試除了對於 AWS 本身有更多認識,對於 System Operations 則有更深的思考,這部份後述。

至於證照有沒有用,有時候需要天時、地利、人和,所以現在很難說,但機會來的時候,至少要準備好。

對我來講,持續學習、思考、組織所學,做什麼都可以發會他的作用。

心得二:真的夠專業?

證照是否代表 專業 很難說,對我來說能解決領域問題的就是 專業

考過證照應該會有全面性的認識、對系統有基本的駕馭力,再加上有實務的經驗、思考問題本質的能力,進而累積解決問題的能力,其實才是專業。

能夠從學校畢業,應該要滿足對於特定領域的 全面性認識基本駕馭力,通常最後一年都會有實務專題搭配,讓學生能夠真的滿足專業需求。不過實際上好像不是這樣的 …

所以回到第一段心得提到的:台灣人很會考證照,跟台灣有很多大學畢業生問題根源是一樣的,但是都跟專業扯不上邊。

思考問題本質 是能否有專業度的關鍵點。

『專業』和『資深』是不同的,另外一篇整理這樣的想法: Senior Software Developer

心得三:準備

其實這張並沒有像 ASA 那樣認真準備,因為從上次考完試到這張考試過程當中,公司要求我去上一個 M$ 的課程,為期一個月。

上完微軟的課之後,就開始準備,剛好 A Cloud Guru 有認證課程的 Bundle 在特價,就一次買了全部五張,然後每天讀一點,然後同步也看之前 ASA 的內容,補充一些不足的、不知道的。這時間又因為 AWS Summit 2016 Deep Dive 系列一直在出現在 Youtube,所以反而花最多時間在聽這些東西。我是大考大玩,小考小玩的個性,所以考試前兩週做完 Practice Exam 之後,就不碰相關的東西了,反正會過就過 XDD

這張重點著重在系統維運管理 (System Operations and Administration),是我現在工作的主要內容,像是:

  • 系統監控
  • 改善既有系統架構、高可用度
  • 備份還原
  • 安全性升級
  • 安全性檢測、SSL、Key 管理
  • 改善網路架構、串 VPN、不同環境 (Dev/Test/Prod) 資源管理
  • 資源管理
  • 預算

考題的 Troubleshooting 像是:

  • 要如何解決 Applications 沒有 MultiAZ 的問題?
  • 要如何處理 EC2 instance 從 public subnet 轉到 private subnet?
  • NAT Instance 切換到 NAT Gateway
  • 要如何處理監控環境的 Security Group 設定?
  • 如何發現系統裡面的單點?發現後怎麼處理?
  • 線上機器發生 ELB Latency 飆高,要如何處理?
  • 線上機器 EBS 空間不夠了,要怎麼處理?
  • 備份的作法與 Storage 的選擇?
  • 當有行銷單位預告有大量的活動時,要怎麼處理?
  • 公司不想有太多對外 IP,但是又需要有開機器讓同仁連到 VPC,要怎麼辦?

這些問題在實務上都遇過,同時也解過,所以準備起來就相對輕鬆。

考試的範圍大於工作的內容,因為有些東西現在公司沒用到 (e.g. RDS、ASG),所以只能自己練習。

心得四:角色的思考

準備這張之前,我一直在思考 AWS 定義的這五張證照定義之間的差異,以及他們實際在企業組織裡的角色差異是什麼?

  • SysOps Administrator: 這個角色,比較接近一般企業的 IT 或者 Operator。那這些角色的工作核心是什麼?我覺得依照公司的規模、組織、企業發展的階段,會有不同的角色。
    • 這張考試的角色比較像是針對線上產品的 Operation,跟企業內部的 IT 有點不一樣。
    • 中小型公司這兩個小角色通常都是同一個人 (公司為了省錢),實務上兩角色的面向還是有差的,一個是對外、一個是對內。
    • 這角色名稱有很多種:System Operator/Engineer、IT Operator、DevOps Engineer … 都有點像。小公司會包含 MIS ,就是修電腦、打雜的。
    • 在 AWS 上可以用 CLI 自動化跟維運有關的事情,所以我把它叫 Ops as Code,就是利用 Cloud 這種可程式化的特性,做維運管理。
  • Developer: AWS 定義的這個角色就是使用幾個 Key Services 開發應用程式,像是 EC2、ELB、S3、CloudFront、DynamoDB、SQS、SNS、SES、AWS SDK … 等。
    • 不過 AWS 新東西進展很快,我覺得還要有這些:Lambda、API Gateway、ECS …
    • AWS 對 Developer Certificate Roadmap 的定義只能往 DevOps Engineer 走,我覺得應該也可以往 Solution Architect 走才對。特別是 DevOps Engineer 是做啥的,其實每個人都會有不同的解釋。
  • DevOps Engineer: 專注於部署方法/技術、自動化、以及維運流程的方面。
    • 對應到 AWS Services 就是 Beanstalk、CloudFormation、CodeDeploy、CodePipe、CodeCommit、OpsWork …
    • 實務面我定義負責 CI (Continue Integration)CD (Continue Delivery)Infra as Code … 等任務.
      • Infra as Code 工具:Jenkins、CloudFormation、Terraform、Ansible、Chef … etc
    • 具備 DeveloperSysOps 雙重角色的混合,在組織與流程上扮演潤滑劑的角色。
    • 有些任務會跟 SysOps 重疊,我用時間軸定義成 DevOps 是 Deployment 後穩定了,之後就是 SysOps 的任務了。當然這隨組織與公司規模,會有不同的說法。
  • Solution Architect: 應該就是 軟體系統架構師,我認為除了軟體架構之外,還要包含網路架構、資安架構、部署方法、維運流程、預算、人員組織、開發流程 … 等面向,不管是針對新的商務需求、或者既有系統,都能夠提出有效的 解決方案,並且在技術上以及流程上提出最佳實務方法,是個地位非常崇高的角色。
  • Security OperatorData Engineer: 這兩個角色在 AWS Certified Roadmap 裡面有,但是還沒 ready,但未來應該也是很搶手吧?

最後回到這張證照的角色,什麼是 System Operations?什麼叫做 Maintain? 中文叫做 系統維運維護,其實我一直在思考其中的意涵,最後有了這樣的解釋:

  • 維運 (operation): 名詞,包含的是制度、流程、方法、資源管理、預算、決策 …. 等 制度管理面,可以想像是時間軸的管理,任務項目就會是下面維護中提到的。
  • 維護 (maintain): 動詞,執行既定的任務,最常見的就是系統監控、資安、系統升級、備份還原、SSL、帳號權限管理、Key 管理、Log 分析、網路架構、處理儲存問題、資源管理 … 等。其實都是單一的任務分類,但是並沒有特別提到流程、制度面。

兩者的層面以及思維差很多。

我把考試這件事情當作是投資,重點是學習與思考的過程,目的是能夠看清楚迷霧般的世界,的一小部分。這張考試對我來講,思考角色這件事情的價值,遠大於證照本身。

難易度與薪資

很多人會問這五張的難易度,網路上有人這樣說:

Solution Architect Pro > DevOps > SysOps > ASA > Developer

我覺得好像是如此,但因為 ASA 讀太多東西了 (Over SysOps 範圍了),所以這張 SysOps 反而沒覺得比 ASA 難,ASA 大概是第一次考,心理上的難度反而是最高。

但這個說法,我猜這個人應該本身就是 Developer 出身,如果是 Operation / IT 出身,排序可能是這樣:

Solution Architect Pro > DevOps > Developer > ASA > SysOps

難易度問完了,接下來就會有人問這五張的薪資排名?我 找到 這樣的薪資比例:

Developer > Solution Architect Pro > ASA > SysOps

恩,看起來還是寫 Code 最賺錢。不過有沒有價值,應該不是有多少證照,而是因為『你』這個人本身能貢獻什麼。


思考本質

考試的目的是在學習每個事物的 本質,了解這些事物的性質、特性、為什麼會有這樣的東西 … 等。然後透過問題將這些 本質 連線起來,創造出應用。

應用本身可以是既有的、也可以是新創的,然後就會像下面這張圖 (引用自 Hugh MacLeod):

Photo Credit: Hugh MacLeod

透過考試了解了 AWS 的服務用法、思考他的設計 本質,然後串聯、再連結,變成一種應用,或者再創造。

我在另一個 Blog 整理的心得:吉他琶音的練習 - 以 Gmaj7 為例,最後結論也提到一樣的想法。

很多領域看似沒什麼關聯,很多時候我們覺得『隔行如隔山』,但其實對我來看,他們背後都有存在著同樣的『道』。而我要繼續往 下一個『道』 前進了。


延伸閱讀 (站內)

參考資料



Comments

  • 全站索引
  • 學習法則
  • 思考本質
  • 一些領悟
  • 分類哲學
  • ▲ TOP ▲