RobustX / Chương trình học / Vị trí công việc / Azure Cloud Engineer / Điều phối Container Nâng Cao với Kubernetes trên Azure

Điều phối Container Nâng Cao với Kubernetes trên Azure

Khóa học này được thiết kế để giúp bạn làm chủ Azure Kubernetes Service (AKS), nền tảng điều phối container hàng đầu trên Azure. Chúng tôi sẽ đi sâu vào việc xây dựng, vận hành và tối ưu hóa các cụm Kubernetes theo tiêu chuẩn sản xuất, giúp bạn tự tin quản lý những hệ thống microservices phức tạp và có quy mô lớn.

Chương trình học tập trung vào các kịch bản thực tiễn, từ triển khai ứng dụng, quản lý trạng thái, tích hợp bảo mật, cho đến thiết lập hệ thống giám sát toàn diện. Bạn sẽ được thực hành chuyên sâu với các công cụ Infrastructure as Code (Terraform, Bicep), pipeline CI/CD tự động và các giải pháp observability phổ biến như Prometheus, Grafana.

Kết thúc khóa học, bạn sẽ sở hữu bộ kỹ năng toàn diện để thiết kế và quản trị các giải pháp cloud-native hiệu quả, đáp ứng yêu cầu của các vai trò như Cloud Native DevOps, SRE hoặc Solution Architect, sẵn sàng giải quyết những thách thức vận hành trong môi trường production.

Thời lượng: 30h

KẾT QUẢ ĐẠT ĐƯỢC

Yêu cầu tiên quyết:

    • Nắm được các khái niệm và luồng hoạt động cơ bản trong DevOps.
    • Kinh nghiệm làm việc với các dịch vụ cơ bản trên Azure.
    • Sử dụng thành thạo giao diện dòng lệnh (CLI) và có kinh nghiệm đọc/viết file định dạng YAML.

Nội dung khóa học

1. Nền tảng và Kiến trúc Kubernetes
    • Tổng quan về Điều phối Container:
      • Kubernetes là gì? So sánh với Azure Container Instances và App Service.
      • Các trường hợp sử dụng phù hợp cho Kubernetes.
    • Kiến trúc cốt lõi của Kubernetes:
      • Vai trò của Control Plane: API Server, etcd, Scheduler, Controller Manager.
      • Nhiệm vụ của Worker Node: Kubelet, Kube-proxy, Container Runtime.
    • Bộ công cụ thiết yếu:
      • Tương tác dòng lệnh với kubectlaz cli.
      • Quản lý gói ứng dụng với Helm.
      • Giao diện giám sát terminal với k9s.
    • Thực hành khởi đầu:
      • Triển khai ứng dụng đầu tiên trên Minikube và Azure Kubernetes Service (AKS).
2. Workload và Điều phối Ứng dụng
    • Các đối tượng Workload cơ bản:
      • Vòng đời và cấu trúc của một Pod.
      • Quản lý và nhân bản Pod với ReplicaSet và Deployment.
    • Khai báo ứng dụng với YAML Manifest:
      • Cấu trúc chuẩn của một file YAML.
      • Thực hành viết file manifest cho Deployment và Service.
    • Chiến lược cập nhật và tự động co giãn:
      • Cấu hình chiến lược Rolling Update và Blue/Green.
      • Tự động scale ứng dụng theo CPU/Memory với Horizontal Pod Autoscaler (HPA).
3. Mạng và Kết nối Dịch vụ
    • Mô hình mạng trong AKS:
      • Tổng quan về Azure CNI (Container Networking Interface).
      • Giao tiếp giữa các Pod và các Node.
    • Các loại Service trong Kubernetes:
      • ClusterIP: Giao tiếp nội bộ cụm.
      • NodePort: Mở port trên Worker Node.
      • LoadBalancer: Tích hợp với Azure Load Balancer để public dịch vụ.
    • Điều phối lưu lượng Layer 7 với Ingress:
      • Vai trò của Ingress Controller (NGINX/Traefik).
      • Cấu hình định tuyến dựa trên host và path.
    • Bảo mật kết nối với TLS:
      • Tự động hóa quản lý chứng chỉ SSL/TLS với cert-manager.
4. Khởi tạo và Quản lý cụm AKS
    • Kiến trúc AKS và mô hình trách nhiệm chung:
      • Các thành phần do Azure quản lý và do người dùng quản lý.
    • Quản lý Node Pools:
      • Phân biệt System Pool và User Pool.
      • Cấu hình tự động co giãn cụm (Cluster Autoscaler).
    • Triển khai AKS bằng Infrastructure as Code (IaC):
      • Tạo cụm AKS bằng Azure CLI.
      • Định nghĩa và triển khai cụm bằng Bicep.
      • Quản lý vòng đời cụm AKS chuyên nghiệp với Terraform.
5. Bảo mật và Quản lý Truy cập
    • Phân quyền với Role-Based Access Control (RBAC):
      • Các đối tượng: Role, ClusterRole, RoleBinding, ClusterRoleBinding.
      • Thực hành tạo và gán quyền cho người dùng/dịch vụ.
    • Tích hợp định danh với Azure Active Directory (AAD):
      • Cấu hình AKS sử dụng AAD để xác thực người dùng.
      • Liên kết quyền AAD group với RBAC Role.
    • Quản lý định danh cho Workload:
      • Sử dụng Managed Identity và Workload Identity để Pods truy cập tài nguyên Azure an toàn.
    • Quản lý Secrets với Azure Key Vault:
      • Tích hợp Azure Key Vault vào AKS bằng Secrets Store CSI Driver.
6. Quản lý Cấu hình và Secrets
    • Các đối tượng cấu hình gốc:
      • Inject cấu hình động vào ứng dụng bằng ConfigMap.
      • Lưu trữ thông tin nhạy cảm với Secret.
    • Tích hợp dịch vụ cấu hình tập trung:
      • So sánh và lựa chọn giữa Azure Key Vault và Azure App Configuration.
7. Lưu trữ và Ứng dụng có Trạng thái
    • Mô hình lưu trữ động:
      • Các khái niệm: PersistentVolume (PV), PersistentVolumeClaim (PVC), StorageClass.
    • Các loại lưu trữ trên Azure:
      • So sánh và lựa chọn Azure Disk và Azure Files.
      • Tổng quan về các CSI (Container Storage Interface) drivers.
    • Thực hành triển khai Database:
      • Triển khai một StatefulSet cho PostgreSQL/MySQL sử dụng Azure Disk.
8. Triển khai Nâng cao với Helm
    • Kiến trúc và Nguyên lý của Helm:
      • Helm là gì? Vai trò của Chart, Release và Repository.
    • Phát triển Helm Chart:
      • Cấu trúc của một Helm Chart.
      • Thực hành viết một chart đơn giản cho ứng dụng.
    • Sử dụng và Tùy biến Chart có sẵn:
      • Tìm kiếm và cài đặt chart từ các Helm repository công cộng.
      • Thực hành deploy Prometheus, Grafana, cert-manager bằng Helm.
9. Quan sát Hệ thống (Observability)
    • Giám sát với Azure Monitor for containers:
      • Thu thập Metrics và Logs từ cụm AKS.
      • Phân tích và tạo cảnh báo trên Log Analytics.
    • Tích hợp Prometheus và Grafana:
      • Triển khai Prometheus stack để thu thập metrics chi tiết.
      • Xây dựng dashboard giám sát trực quan với Grafana.
    • Logging tập trung:
      • Sử dụng Fluent Bit để thu thập và đẩy logs về Log Analytics hoặc ElasticSearch.
    • Distributed Tracing:
      • Tổng quan về OpenTelemetry và tích hợp với Application Insights.
10. Tích hợp CI/CD tự động hóa
    • Xây dựng và Lưu trữ Container Image:
      • Viết Dockerfile tối ưu.
      • Xây dựng image tự động bằng GitHub Actions hoặc Azure Pipelines.
      • Push image lên Azure Container Registry (ACR).
    • Pipeline triển khai lên AKS:
      • Chiến lược deploy bằng kubectl apply.
      • Nâng cấp ứng dụng an toàn với helm upgrade.
      • Giới thiệu mô hình GitOps với FluxCD hoặc ArgoCD.
11. Case Study Tổng kết
    • Xây dựng hệ thống Microservices hoàn chỉnh:
      • Frontend: ReactJS được deploy với NGINX Ingress và TLS.
      • Backend: NodeJS/Go API chạy trên các Deployment khác nhau.
      • Database: PostgreSQL StatefulSet sử dụng Azure Disk cho lưu trữ bền vững.
      • CI/CD: Pipeline trên GitHub Actions tự động build, push và deploy bằng Helm khi có commit mới.
      • Monitoring: Hệ thống giám sát với Prometheus, Grafana và các rule cảnh báo quan trọng.
      • Security: Phân quyền RBAC, tích hợp Key Vault và sử dụng Workload Identity.

Bài viết liên quan