Lộ trình
Cloud Native Computing FoundationAssociateTuần 4: Tối ưu & vận hànhBài 28 / 30

Ngày 28: Ôn tập tuần 4

Thời lượng: 45 phút
Mục tiêu: 2 nhiệm vụ chính
Tiến độ lộ trình
ckangày 28
hoàn thành28 / 30 bài
Bối cảnh bài học

Ôn tập tuần 4 bằng 10 timed incident drills về Pod, Node, Networking, etcd, upgrade và RBAC; chấm bằng evidence, safety và recovery chứ không chỉ tốc độ.

đọc hiểuthực hànhcheckpoint
Bài giảng hôm nay

Học hiểu, rồi mới thực hành

Ôn tập tuần 4 bằng 10 timed incident drills về Pod, Node, Networking, etcd, upgrade và RBAC; chấm bằng evidence, safety và recovery chứ không chỉ tốc độ.

Bắt đầu đọc bài giảng

Nhiệm vụ bài học hôm nay

  • Luyện lại toàn bộ Troubleshooting & Cluster Maintenance
  • Làm 10 câu trắc nghiệm tự kiểm tra
Instructor walkthrough

Bài giảng chi tiết: từ bài toán đến bằng chứng

Scenario xuyên suốt

Trong mock incident, nhiều symptom xuất hiện cùng lúc: Pod CrashLoop, node NotReady, Service timeout, PVC lỗi và permission denied. Người học cần ưu tiên impact, giữ evidence, tách hypothesis và chọn remediation/rollback phù hợp thay vì chạy chuỗi lệnh quen tay.

01Đọc bài toán

Xác định actor, workload, constraint và trạng thái cuối cần đạt.

02Vẽ luồng / boundary

Chỉ ra request, dependency, identity và failure domain trước khi chọn công cụ.

03Chọn và thực hành

Thay đổi nhỏ nhất trong lab cô lập; command nào cũng phải nói rõ nó kiểm tra điều gì.

04Kiểm chứng / recovery

Đối chiếu trạng thái thực tế, tạo một failure variant và ghi cách hoàn tác.

Cách nối lý thuyết với thực tế
  • Triage trước mutation: xác nhận context, scope/impact, timeline và blast radius; bảo toàn evidence rồi mới sửa.
  • Failure domains gồm Pod process/config, scheduler/node, Service/network, storage, control-plane recovery/upgrade và authorization; cùng một symptom không đồng nghĩa cùng nguyên nhân.
  • Maintenance/upgrade/restore là change có gate: backup, PDB/capacity, canary, abort criteria, rollback và post-check.
  • RBAC debug phải test identity/resource/subresource/scope bằng allow và deny; quyền của operator không phải quyền của workload.

10 incident drills, một framework

Đừng học từng failure như các mẹo rời rạc. Dùng cùng một loop: context → impact/scope → preserve evidence → classify domain → hypothesis → minimal reversible remediation → verify expected state → variant → cleanup.

Scorecard

Chấm mỗi drill theo 5 điểm: 1 context/safety, 1 first evidence, 1 root-cause reasoning, 1 recovery proof, 1 cleanup/variant. Pass tuần 4: tối thiểu 8/10 drill không hint, không critical safety mistake, 10 worksheet có expected state và scorecard; lỗi còn lại phải map vào gap list có bài luyện lại.

Bài tập

Chạy timebox 10 scenario từ Pod/Node/Networking/Storage/etcd/upgrade/RBAC, lưu output và timestamp. Review chéo hai scenario, làm lại variant, cập nhật gap list theo domain/triệu chứng/evidence/remediation và khôi phục mọi state tạm thời.

Terminal reference

Command list và cách dùng

Chạy từng lệnh theo đúng thứ tự. Trước các lệnh có thể tạo hoặc thay đổi tài nguyên, hãy kiểm tra profile, account và region.

Commands · read-only checkpoints
kubectl config current-context
kubectl get pods,nodes,svc,endpointslice,pvc,pv -A -o wide
kubectl get events -A --sort-by=.lastTimestamp
kubectl get pdb -A -o wide
kubectl auth can-i --list --as=system:serviceaccount:cka-day28:lab -n cka-day28
kubectl get --raw=/readyz?verbose
Hands-on lab

Thực hành theo scenario

  1. Tạo incident board và namespace lab; chuẩn bị 10 scenario theo roadmap: Pending/ImagePull/CrashLoop, Node NotReady/pressure, Service no route, PVC Pending, etcd snapshot validation, upgrade go/no-go, RBAC deny và một cross-domain dependency.
  2. Mỗi scenario có timebox, user impact, initial clue và hidden root cause. Dùng quy trình `context → scope → evidence → hypothesis → minimal fix → verify → rollback/cleanup`; không xem đáp án trước.
  3. Thu command output tối thiểu từ get/describe/events/logs/conditions/auth can-i/object state; ghi command đầu tiên có giá trị, lệnh không hữu ích và lý do không dùng destructive shortcut.
  4. Sau 10 drill, chọn 2 lỗi làm lại với variant: đổi namespace/label/port/class/permission hoặc thêm PDB/pressure; chấm latency, first-correct diagnosis và regression.
  5. Review chéo bằng rubric: không critical safety mistake, 8/10 pass, 10/10 worksheet hoàn chỉnh, recovery evidence rõ. Cleanup namespace/resources, restore cordon/taint/policy và không xóa shared objects.
Evidence checkpoint

Kiểm chứng kết quả

Không coi lệnh chạy thành công là đủ. Hãy đối chiếu output với trạng thái mong đợi:

  • Hoàn thành đủ 10 incident drill đúng domain và ưu tiên impact.
  • Mỗi drill có evidence/hypothesis/expected state/remediation/recovery.
  • Không có lỗi critical: sai context production, xóa shared data, force/restore mù hoặc lộ secret.
  • Đạt tối thiểu 8/10 không hint và làm lại variant không lặp lỗi root cause.
  • Có scorecard, gap list, cleanup/restore proof và kế hoạch ôn lại có thứ tự.
Transfer to exam / production

Bẫy thường gặp và trade-off

Ôn tập tốt không phải nhớ nhiều lệnh mà là chọn đúng lệnh đầu tiên và chứng minh state. Nếu đứng hình, quay về context → events/conditions → object owner/dependency; sau mỗi task kiểm tra trạng thái cuối và cleanup.

Checkpoint · 3 phút

Kiểm tra nhanh

Câu hỏi: Trong mock incident có Pod CrashLoop, Service timeout và node NotReady cùng lúc, cách làm nào đạt chuẩn nhất?

Kết thúc bài

Checklist trước khi sang Ngày 2