CKA (Certified Kubernetes Administrator) を1ヶ月で集中して取るためにやったこと

# 背景

- Kubernetesをゼロから触りだして、EKSのマネージドクラスタ導入から2年ほどが経ち、本番運用から1年半ほど経ったので、CKAを取得することにした
- 準備期間は1ヶ月弱 (2021/01/31勉強開始 ~ 2021/02/25受験) (ダラダラ勉強２週間+追い込み１週間)
- CKADはとってない

# 勉強教材

## CKA受験とは関係なくなんとなく読んでた本

- [実践入門 Kubernetesカスタムコントローラーへの道 (技術の泉シリーズ（NextPublishing）)](https://www.amazon.co.jp/gp/product/B0851QCR81/ref=ppx_yo_dt_b_d_asin_title_o03?ie=UTF8&psc=1)
- [実践Helm─自作アプリをKubernetesクラスタに簡単デプロイ！ (技術の泉シリーズ（NextPublishing）)](https://www.amazon.co.jp/gp/product/B07TQT6SVY/ref=ppx_yo_dt_b_d_asin_title_o07?ie=UTF8&psc=1)
- [Kubernetes実践ガイド　クラウドネイティブアプリケーションを支える技術 impress top gearシリーズ](https://www.amazon.co.jp/gp/product/B07TSBP3CZ/ref=ppx_yo_dt_b_d_asin_title_o02?ie=UTF8&psc=1)

## CKA用の勉強に使ったもの

- [Certified Kubernetes Administrator (CKA) with Practice Tests](https://kodekloud.com/p/certified-kubernetes-administrator-with-practice-tests) (231 lectures 17.51 hours)
- [kubernetes the hard way](https://github.com/kelseyhightower/kubernetes-the-hard-way)

# 対策

## [Certified Kubernetes Administrator (CKA) with Practice Tests](https://kodekloud.com/p/certified-kubernetes-administrator-with-practice-tests) 
1. 初回は、Mock Exam以外を全部やって、毎回のPractice Testをやって知らないことをメモした。 kubectlのコマンド、Troubleshootingの仕方など。。。
2. ２回目は、Practice Testだけ全部やり直して、 ラベル付けした
    - スラスラ解けて全問正解なら -> `オッケー`
    - 全問正解だけど時間かかる or 不正解がある ->  `ダメ`
    
    こんな感じ: 
    ![WX20210302-121539@2x.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/7059/5c4694d0-d8a1-e24d-a626-01b06d3ced50.png)

3. `ダメ` のやつを見てみて自分が苦手な単元を復習 -> 自分の場合 `Netwoking`と`Storage`と`Install Kubernetes the kubeadm way`
4. 3回目、 `ダメ` だったPractice Testをやって、`オッケー`になるやつが結構でて、まだ `ダメ` なやつはもう一回復習して、考え方をまとめる
5. Mock Exam 1~3を解く。間違えた部分はもう一度自分でやり直す

## [kubernetes the hard way](https://github.com/kelseyhightower/kubernetes-the-hard-way)
1. とりあえず最初から最後までやる (完全理解はできてない)
2. ２回目は各コマンドとコンポーネントになぜ一つずつのステップが必要か考えながらやる

# 全体の流れ

- ~2021年1月末: CKAを考えてない期
    - マネージドクラスタで本番運用をしているので、以下はだいたい把握していた。
        - 基本的なKubernetesの概念
        - kubectlの基本コマンド
        - CKAD的な内容
        - ControlPlaneの構成と大まかな役割
- 2021/01/31: CKA取得を決意 
    - [Certified Kubernetes Administrator (CKA) with Practice Tests](https://kodekloud.com/p/certified-kubernetes-administrator-with-practice-tests) を一ヶ月分だけ購入 (35USD) (絶対一ヶ月で受かるために、1ヶ月のSubscriptionだけにして自分を追い込むため)
- 2021/02/01~2021/02/19: ダラダラ出勤前にPomodoro Methodでコースをやってた時期 (19日でコースの７/13までしか行ってなくて焦る)
    - `Introduction`
    - `Core Concepts` & `Scheduling`
    - `Logging & Monitoring`
    - `Application Lifecycle Management`
    - `Cluster Maintenance`
    - `Security`
    - 2021/02/15 CKA受験登録
- 2021/02/20 ２月が残り１週間しかないが半分近く残ってるのに焦り追い込み期へ
    - 2021/02/20(土) `Storage` & `Networking` 完了
    - 2021/02/21(日) 朝から夜までPomodoro Methodでやり続ける 10時間くらい 
    - 2021/02/22（月） 出勤前１時間退社後２時間勉強　`Design and Install a Kubernetes Cluster` 完了
    - 2021/02/23（火） (祝日) CKA受験日設定 & ７時間くらい `Install "Kubernetes the kubeadm way"` 完了
    - 2021/02/24 , `Troubleshooting`, `Other Topics`, `Lightning Labs`, `Mock Exams` 完了 (前日に)
- 2021/02/25 8:00~10:00 受験
- 2021/02/26 20:00頃 Emailにより合格通知 (試験終了から36時間以内に通知される)

# 試験当日

- Macbook Proと外部モニターで受験
- 15分前から試験官と確認作業を始められる (試験官が来れば)
- 最初の確認で時間が取られて実際の試験は8:30~10:30くらいになった
- 基本音声でのやり取りはなく、チャットボックス上で英語で試験官とやりとり
- 試験前には、周りをぐるっと一周見せてくれと言われマックを持って一周した
- パスポートのチェックはマックの内蔵カメラ前に名前の書いてあるページを見せるとすぐにオッケーと言われた
- 試験中は内蔵カメラと２つのスクリーンシェア
- 試験官に、Drinkはいいけど、Foodはダメとチャットで言われたから試験中にコーヒー飲んだら、飲み物もダメと言われた (英語書き間違えた模様)
- 試験中にトイレにはいけない
- 試験中にネットが一回切れてブラウザをリロードしたら、もう一回試験官のチェックをしてから再開できた
- 左側に問題、右側にターミナルという感じで、かなりやりやすかった
- 残り時間はプログレスバーでしか見えず、正確に何分あるのか不明だったのがちょっとやりずらかった。残り32分だよと試験官がChatしてきたが、32分で知らされた意味は不明
- 問題文は英語、中国語、日本語を試験中いつでも切り替えることができる

# 感想

**CKAはおすすめ**

理由:
- 試験を受けるだけで、勉強になる。特に、自分がやったみたいに勉強時間に上限を設ければ、その間に完了するために受験しない場合に比べて忙しくても優先順位をあげられる。
- マネージドクラスタを普段運用していると、業務ではControlPlane側の知識がなかなか補えないので、こういう機会に勉強するのは貴重な機会

ただし、

試験終わってそのまま放置すると忘れそうなので、自分で使う機会を作らないといけなそう。あとは、勉強のときのメモは保存版として残しておくのがおすすめ。あとで、振り返るのも楽。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/7059/d1a4b21d-ecc0-89c1-a219-dad1d90110b5.png)