Enterprise CHƯƠNG 28 Advanced 5 Labs Ngày tạo: 22/05/2026

Kubernetes nâng cao cho DevOps

Probes, resources, HPA, RBAC. Ưu tiên thực hành CLI; nếu có thao tác giao diện sẽ có thêm Cách 02 — GUI/Portal.

Thông tin thực hành

Ngày tạo bài: 22/05/2026
Cấp độ: Advanced
Nhóm nội dung: Enterprise
Số lab: 5
Ưu tiên: CLI trước, GUI/Portal là cách 02 nếu phù hợp
Hệ điều hành: Windows 11, WSL2 Ubuntu, Linux, macOS tùy lab

Mục tiêu học tập

  • Nắm được mục đích và vai trò của Kubernetes nâng cao cho DevOps trong lộ trình Enterprise.
  • Thực hành được bằng CLI, biết kiểm tra log/output và biết cleanup.
  • Biết khi nào cần dùng GUI/Portal và cách đối chiếu với CLI.
  • Áp dụng được vào môi trường doanh nghiệp với bảo mật, audit và vận hành rõ ràng.

Lý thuyết gắn gọn

Tổng quan Kubernetes nâng cao cho DevOps

Nội dung này giúp người học triển khai kubernetes nâng cao cho devops theo hướng thực tế, có thể áp dụng vào pipeline, cloud platform hoặc quy trình vận hành doanh nghiệp.

Khi nào dùng?

Dùng khi cần chuẩn hóa thao tác, giảm lỗi thủ công, tăng khả năng kiểm soát, audit và tự động hóa trong vòng đời phần mềm.

Rủi ro thường gặp

Rủi ro thường gặp là cấu hình thủ công, thiếu kiểm soát quyền, không có rollback, không có log/alert, hoặc thiếu tài liệu vận hành.

Chuẩn thực hành

Ưu tiên Infrastructure as Code, pipeline as code, least privilege, traceability, monitoring, cost control và security gate sớm trong quy trình.

Kết quả mong muốn

Sau chương này, người học phải tạo được artifact hoặc cấu hình chạy thật, kiểm tra được kết quả, biết cleanup và biết cách áp dụng vào môi trường doanh nghiệp.

Thuật ngữ cần nhớ

Thuật ngữÝ nghĩa
Tổng quan Kubernetes nâng cao cho DevOpsNội dung này giúp người học triển khai kubernetes nâng cao cho devops theo hướng thực tế, có thể áp dụng vào pipeline, cloud platform hoặc quy trình vận hành doanh nghiệp.
Khi nào dùng?Dùng khi cần chuẩn hóa thao tác, giảm lỗi thủ công, tăng khả năng kiểm soát, audit và tự động hóa trong vòng đời phần mềm.
Rủi ro thường gặpRủi ro thường gặp là cấu hình thủ công, thiếu kiểm soát quyền, không có rollback, không có log/alert, hoặc thiếu tài liệu vận hành.
Chuẩn thực hànhƯu tiên Infrastructure as Code, pipeline as code, least privilege, traceability, monitoring, cost control và security gate sớm trong quy trình.
Kết quả mong muốnSau chương này, người học phải tạo được artifact hoặc cấu hình chạy thật, kiểm tra được kết quả, biết cleanup và biết cách áp dụng vào môi trường doanh nghiệp.

Ghi chú áp dụng thực tế doanh nghiệp

  • Không triển khai production nếu chưa có kiểm soát quyền, log, monitoring và rollback.
  • Mọi cấu hình quan trọng nên được lưu bằng code: YAML, Bicep, Terraform, Helm, Kustomize hoặc policy.
  • Luôn có owner, naming convention, tags, cost center và tài liệu vận hành.
  • Không hard-code secret. Ưu tiên OIDC, managed identity, workload identity hoặc Key Vault.
  • Lab có CLI và GUI nhằm giúp học viên hiểu cả tự động hóa lẫn giao diện vận hành thực tế.

Bài tập lab step-by-step

LAB-060 CLI Azure Portal Linux/macOS Terminal PowerShell

AKS readiness/liveness probes

Nền tảng thực hành: CLI, Azure Portal, Linux/macOS Terminal, PowerShell

Terminal: PowerShell 7 hoặc Bash/Linux Terminal; macOS Terminal nếu dùng macOS

Phiên bản / ghi chú:

  • Ngày tạo bài: 22/05/2026
  • Git 2.40+
  • VS Code latest stable
  • Azure CLI 2.x latest
  • Az PowerShell 12.x+
  • kubectl phù hợp version AKS
  • Helm 3.x
  • Kubernetes 1.29+
Cách 01 — CLI ưu tiên
  1. Mở terminal có `kubectl` và quyền truy cập cluster lab.
  2. Kiểm tra context: `kubectl config current-context`.
  3. Tạo namespace lab nếu cần: `kubectl create ns devops-lab`.
  4. Tạo hoặc mở file manifest/Helm/Kustomize theo lab.
  5. Apply cấu hình bằng `kubectl apply`, `helm upgrade --install` hoặc `kubectl kustomize`.
  6. Kiểm tra pod: `kubectl get pods -n devops-lab`.
  7. Kiểm tra event: `kubectl get events -n devops-lab --sort-by=.lastTimestamp`.
  8. Kiểm tra log: `kubectl logs -n devops-lab deploy/<deployment-name>`.
  9. Sửa manifest nếu lỗi và apply lại.
  10. Cleanup namespace hoặc release sau khi lab xong.
CLI mẫu / gợi ý lệnh
Mở terminal có `kubectl` và quyền truy cập cluster lab.
Kiểm tra context: `kubectl config current-context`.
Tạo namespace lab nếu cần: `kubectl create ns devops-lab`.
Apply cấu hình bằng `kubectl apply`, `helm upgrade --install` hoặc `kubectl kustomize`.
Cách 02 — GUI / Portal
  1. Mở Azure Portal hoặc Azure DevOps trên trình duyệt.
  2. Chọn đúng subscription/project lab.
  3. Tìm service tương ứng với lab bằng thanh Search.
  4. Tạo hoặc mở resource cần cấu hình.
  5. Điền thông tin theo naming convention lab.
  6. Mở tab cấu hình liên quan: Networking, Identity, Deployment, Monitoring hoặc Policies.
  7. Bấm Review + Create hoặc Save.
  8. Mở Overview/Activity log để kiểm tra trạng thái.
  9. Ghi lại ảnh chụp màn hình kết quả.
  10. Xóa resource lab nếu không dùng.
Kiểm tra kết quả

Hoàn thành aks readiness/liveness probes và có bằng chứng kiểm tra: log, screenshot, pipeline run, resource hoặc output CLI.

Cleanup

Xóa tài nguyên lab không dùng, xóa secret/token demo, dọn branch/release/resource group để tránh chi phí và rủi ro.

LAB-061 CLI Azure Portal Linux/macOS Terminal PowerShell

AKS requests/limits + HPA

Nền tảng thực hành: CLI, Azure Portal, Linux/macOS Terminal, PowerShell

Terminal: PowerShell 7 hoặc Bash/Linux Terminal; macOS Terminal nếu dùng macOS

Phiên bản / ghi chú:

  • Ngày tạo bài: 22/05/2026
  • Git 2.40+
  • VS Code latest stable
  • Azure CLI 2.x latest
  • Az PowerShell 12.x+
  • kubectl phù hợp version AKS
  • Helm 3.x
  • Kubernetes 1.29+
Cách 01 — CLI ưu tiên
  1. Mở terminal có `kubectl` và quyền truy cập cluster lab.
  2. Kiểm tra context: `kubectl config current-context`.
  3. Tạo namespace lab nếu cần: `kubectl create ns devops-lab`.
  4. Tạo hoặc mở file manifest/Helm/Kustomize theo lab.
  5. Apply cấu hình bằng `kubectl apply`, `helm upgrade --install` hoặc `kubectl kustomize`.
  6. Kiểm tra pod: `kubectl get pods -n devops-lab`.
  7. Kiểm tra event: `kubectl get events -n devops-lab --sort-by=.lastTimestamp`.
  8. Kiểm tra log: `kubectl logs -n devops-lab deploy/<deployment-name>`.
  9. Sửa manifest nếu lỗi và apply lại.
  10. Cleanup namespace hoặc release sau khi lab xong.
CLI mẫu / gợi ý lệnh
Mở terminal có `kubectl` và quyền truy cập cluster lab.
Kiểm tra context: `kubectl config current-context`.
Tạo namespace lab nếu cần: `kubectl create ns devops-lab`.
Apply cấu hình bằng `kubectl apply`, `helm upgrade --install` hoặc `kubectl kustomize`.
Cách 02 — GUI / Portal
  1. Mở Azure Portal hoặc Azure DevOps trên trình duyệt.
  2. Chọn đúng subscription/project lab.
  3. Tìm service tương ứng với lab bằng thanh Search.
  4. Tạo hoặc mở resource cần cấu hình.
  5. Điền thông tin theo naming convention lab.
  6. Mở tab cấu hình liên quan: Networking, Identity, Deployment, Monitoring hoặc Policies.
  7. Bấm Review + Create hoặc Save.
  8. Mở Overview/Activity log để kiểm tra trạng thái.
  9. Ghi lại ảnh chụp màn hình kết quả.
  10. Xóa resource lab nếu không dùng.
Kiểm tra kết quả

Hoàn thành aks requests/limits + hpa và có bằng chứng kiểm tra: log, screenshot, pipeline run, resource hoặc output CLI.

Cleanup

Xóa tài nguyên lab không dùng, xóa secret/token demo, dọn branch/release/resource group để tránh chi phí và rủi ro.

LAB-062 CLI Azure Portal Linux/macOS Terminal PowerShell

AKS RBAC namespace cho team

Nền tảng thực hành: CLI, Azure Portal, Linux/macOS Terminal, PowerShell

Terminal: PowerShell 7 hoặc Bash/Linux Terminal; macOS Terminal nếu dùng macOS

Phiên bản / ghi chú:

  • Ngày tạo bài: 22/05/2026
  • Git 2.40+
  • VS Code latest stable
  • Azure CLI 2.x latest
  • Az PowerShell 12.x+
  • kubectl phù hợp version AKS
  • Helm 3.x
  • Kubernetes 1.29+
Cách 01 — CLI ưu tiên
  1. Mở terminal có `kubectl` và quyền truy cập cluster lab.
  2. Kiểm tra context: `kubectl config current-context`.
  3. Tạo namespace lab nếu cần: `kubectl create ns devops-lab`.
  4. Tạo hoặc mở file manifest/Helm/Kustomize theo lab.
  5. Apply cấu hình bằng `kubectl apply`, `helm upgrade --install` hoặc `kubectl kustomize`.
  6. Kiểm tra pod: `kubectl get pods -n devops-lab`.
  7. Kiểm tra event: `kubectl get events -n devops-lab --sort-by=.lastTimestamp`.
  8. Kiểm tra log: `kubectl logs -n devops-lab deploy/<deployment-name>`.
  9. Sửa manifest nếu lỗi và apply lại.
  10. Cleanup namespace hoặc release sau khi lab xong.
CLI mẫu / gợi ý lệnh
Mở terminal có `kubectl` và quyền truy cập cluster lab.
Kiểm tra context: `kubectl config current-context`.
Tạo namespace lab nếu cần: `kubectl create ns devops-lab`.
Apply cấu hình bằng `kubectl apply`, `helm upgrade --install` hoặc `kubectl kustomize`.
Cách 02 — GUI / Portal
  1. Mở Azure Portal hoặc Azure DevOps trên trình duyệt.
  2. Chọn đúng subscription/project lab.
  3. Tìm service tương ứng với lab bằng thanh Search.
  4. Tạo hoặc mở resource cần cấu hình.
  5. Điền thông tin theo naming convention lab.
  6. Mở tab cấu hình liên quan: Networking, Identity, Deployment, Monitoring hoặc Policies.
  7. Bấm Review + Create hoặc Save.
  8. Mở Overview/Activity log để kiểm tra trạng thái.
  9. Ghi lại ảnh chụp màn hình kết quả.
  10. Xóa resource lab nếu không dùng.
Kiểm tra kết quả

Hoàn thành aks rbac namespace cho team và có bằng chứng kiểm tra: log, screenshot, pipeline run, resource hoặc output CLI.

Cleanup

Xóa tài nguyên lab không dùng, xóa secret/token demo, dọn branch/release/resource group để tránh chi phí và rủi ro.

LAB-063 CLI Azure Portal Linux/macOS Terminal PowerShell

Helm chart nâng cao

Nền tảng thực hành: CLI, Azure Portal, Linux/macOS Terminal, PowerShell

Terminal: PowerShell 7 hoặc Bash/Linux Terminal; macOS Terminal nếu dùng macOS

Phiên bản / ghi chú:

  • Ngày tạo bài: 22/05/2026
  • Git 2.40+
  • VS Code latest stable
  • Azure CLI 2.x latest
  • Az PowerShell 12.x+
  • kubectl phù hợp version AKS
  • Helm 3.x
  • Kubernetes 1.29+
Cách 01 — CLI ưu tiên
  1. Mở terminal có `kubectl` và quyền truy cập cluster lab.
  2. Kiểm tra context: `kubectl config current-context`.
  3. Tạo namespace lab nếu cần: `kubectl create ns devops-lab`.
  4. Tạo hoặc mở file manifest/Helm/Kustomize theo lab.
  5. Apply cấu hình bằng `kubectl apply`, `helm upgrade --install` hoặc `kubectl kustomize`.
  6. Kiểm tra pod: `kubectl get pods -n devops-lab`.
  7. Kiểm tra event: `kubectl get events -n devops-lab --sort-by=.lastTimestamp`.
  8. Kiểm tra log: `kubectl logs -n devops-lab deploy/<deployment-name>`.
  9. Sửa manifest nếu lỗi và apply lại.
  10. Cleanup namespace hoặc release sau khi lab xong.
CLI mẫu / gợi ý lệnh
Mở terminal có `kubectl` và quyền truy cập cluster lab.
Kiểm tra context: `kubectl config current-context`.
Tạo namespace lab nếu cần: `kubectl create ns devops-lab`.
Apply cấu hình bằng `kubectl apply`, `helm upgrade --install` hoặc `kubectl kustomize`.
Cách 02 — GUI / Portal
  1. Mở Azure Portal hoặc Azure DevOps trên trình duyệt.
  2. Chọn đúng subscription/project lab.
  3. Tìm service tương ứng với lab bằng thanh Search.
  4. Tạo hoặc mở resource cần cấu hình.
  5. Điền thông tin theo naming convention lab.
  6. Mở tab cấu hình liên quan: Networking, Identity, Deployment, Monitoring hoặc Policies.
  7. Bấm Review + Create hoặc Save.
  8. Mở Overview/Activity log để kiểm tra trạng thái.
  9. Ghi lại ảnh chụp màn hình kết quả.
  10. Xóa resource lab nếu không dùng.
Kiểm tra kết quả

Hoàn thành helm chart nâng cao và có bằng chứng kiểm tra: log, screenshot, pipeline run, resource hoặc output CLI.

Cleanup

Xóa tài nguyên lab không dùng, xóa secret/token demo, dọn branch/release/resource group để tránh chi phí và rủi ro.

LAB-064 CLI Azure Portal Linux/macOS Terminal PowerShell

Kustomize overlay dev/staging/prod

Nền tảng thực hành: CLI, Azure Portal, Linux/macOS Terminal, PowerShell

Terminal: PowerShell 7 hoặc Bash/Linux Terminal; macOS Terminal nếu dùng macOS

Phiên bản / ghi chú:

  • Ngày tạo bài: 22/05/2026
  • Git 2.40+
  • VS Code latest stable
  • Azure CLI 2.x latest
  • Az PowerShell 12.x+
  • kubectl phù hợp version AKS
  • Helm 3.x
  • Kubernetes 1.29+
Cách 01 — CLI ưu tiên
  1. Mở terminal có `kubectl` và quyền truy cập cluster lab.
  2. Kiểm tra context: `kubectl config current-context`.
  3. Tạo namespace lab nếu cần: `kubectl create ns devops-lab`.
  4. Tạo hoặc mở file manifest/Helm/Kustomize theo lab.
  5. Apply cấu hình bằng `kubectl apply`, `helm upgrade --install` hoặc `kubectl kustomize`.
  6. Kiểm tra pod: `kubectl get pods -n devops-lab`.
  7. Kiểm tra event: `kubectl get events -n devops-lab --sort-by=.lastTimestamp`.
  8. Kiểm tra log: `kubectl logs -n devops-lab deploy/<deployment-name>`.
  9. Sửa manifest nếu lỗi và apply lại.
  10. Cleanup namespace hoặc release sau khi lab xong.
CLI mẫu / gợi ý lệnh
Mở terminal có `kubectl` và quyền truy cập cluster lab.
Kiểm tra context: `kubectl config current-context`.
Tạo namespace lab nếu cần: `kubectl create ns devops-lab`.
Apply cấu hình bằng `kubectl apply`, `helm upgrade --install` hoặc `kubectl kustomize`.
Cách 02 — GUI / Portal
  1. Mở Azure Portal hoặc Azure DevOps trên trình duyệt.
  2. Chọn đúng subscription/project lab.
  3. Tìm service tương ứng với lab bằng thanh Search.
  4. Tạo hoặc mở resource cần cấu hình.
  5. Điền thông tin theo naming convention lab.
  6. Mở tab cấu hình liên quan: Networking, Identity, Deployment, Monitoring hoặc Policies.
  7. Bấm Review + Create hoặc Save.
  8. Mở Overview/Activity log để kiểm tra trạng thái.
  9. Ghi lại ảnh chụp màn hình kết quả.
  10. Xóa resource lab nếu không dùng.
Kiểm tra kết quả

Hoàn thành kustomize overlay dev/staging/prod và có bằng chứng kiểm tra: log, screenshot, pipeline run, resource hoặc output CLI.

Cleanup

Xóa tài nguyên lab không dùng, xóa secret/token demo, dọn branch/release/resource group để tránh chi phí và rủi ro.

Câu hỏi ôn tập

  1. Trong chương 28, phần nào cần tự động hóa bằng pipeline/workflow?
  2. Nếu áp dụng vào môi trường production, rủi ro bảo mật lớn nhất là gì?
  3. Lab nào cần CLI? Lab nào cần Portal/GUI? Vì sao?
  4. Bạn sẽ kiểm tra thành công bằng log, output hay dashboard nào?
  5. Cleanup cần làm gì để tránh chi phí và rủi ro?
Zalo