Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

117 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DevOps & Networking Labs

Kho lưu trữ mã nguồn các kịch bản thực hành tương tác (Interactive Scenarios) trên nền tảng Killercoda, được thiết kế chuyên sâu cho lộ trình đào tạo kỹ sư DevOps, SRE và Cloud Systems.

Tất cả các bài lab đều chạy trực tiếp trên môi trường ảo hóa Ubuntu, tích hợp cơ chế tự động hóa khởi tạo môi trường ngầm (Background Automation) và hệ thống script tự động chấm điểm (Automated Verification).


1. Danh Sách Các Bài Thực Hành

Mã Lab Thư Mục Công Nghệ Chính Trọng Tâm Kiến Thức Thời Lượng
Khởi Động linux-terminal-navigation/ Linux CLI, Bash, FHS, Navigation Làm chủ Terminal, giải mã Prompt, điều hướng FHS (cd, pwd), quản lý tệp tin (mkdir -p, touch, cp, mv, rm) 30-35 phút
Thao Tác Tệp linux-file-operations/ Linux CLI, Files & Directories Khởi tạo cấu trúc dự án đa tầng (mkdir -p, touch), sao chép/di chuyển/xóa (cp, mv, rm), đọc và theo dõi log (cat, less, head, tail -f) 30-35 phút
Pipe & Search linux-pipe-redirect-search/ Linux CLI, Streams, Pipes, find, grep 3 luồng stdin/stdout/stderr, chuyển hướng (>, 2>, &>), đường ống |, tìm kiếm find và grep -rn 30-35 phút
Lab 1 lab1-tcpip-dns/ Linux Networking, iproute2, dig, DNS Mô hình TCP/IP 4 tầng, Subnetting & CIDR, Routing Table, phân tích luồng truy vấn DNS 35-40 phút
Lab 2 lab2-http-ssl-nginx/ Nginx, OpenSSL, TLS 1.3, X.509 Giao thức HTTP/HTTPS, bắt tay TLS 1.3 Handshake, SSL Termination, phân tích chứng chỉ số 35-40 phút
Lab 3 lab3-ssh-firewall/ OpenSSH, UFW Firewall, Ed25519 SSH Hardening (đổi cổng, tắt mật khẩu), mã hóa đường hầm SSH Tunneling, tường lửa UFW 35-40 phút
Lab 4 lab4-nginx-lb/ Nginx Reverse Proxy, wrk, Python Thuật toán cân bằng tải (Round Robin, Least Conn, IP Hash), Upstream Connection Pooling 35-40 phút
Lab 5 lab5-server-monitoring/ Bash Shell, /proc, Webhook, Cron Giám sát tài nguyên Linux (CPU, RAM, Disk), đánh giá ngưỡng, bắn cảnh báo Webhook JSON 35-40 phút
Lab 6 lab6-git-internals-hooks/ Git CLI, Git Internals, Shell Hooks 3 trạng thái Git, cấu trúc Git Objects (Blob, Tree, Commit), Git Hooks, khôi phục bằng Reflog 35-40 phút
Lab 7 lab7-git-conflicts-pr/ Git Bare Repo, Trunk-Based, Rebase Quản lý nhánh tập trung, giải quyết xung đột 3-Way Merge (zdiff3), Rebase và Squash PR 35-40 phút
Lab 8 lab8-postgres-redis-flyway/ PostgreSQL 15, Redis 7, Flyway 9 Kết nối an toàn qua biến môi trường (.env), Connection Pooling, Flyway Migration, Cache-Aside 35-40 phút
Lab 9 lab9-docker-cli-fundamentals/ Docker CLI, Image Layers, overlay2, CoW Tải và phân tích Image Layers, SHA256 digest, run -it, exec -it, cp, diff, commit 35-40 phút
Lab 10 lab10-runtime-logs-graceful-shutdown/ Docker Runtime, cgroups, OOM Killer, Signals Vòng đời container, tham số runtime, giới hạn CPU/RAM, Log Rotation, kiểm thử Graceful Shutdown 35-40 phút
Lab 11 lab11-dockerfile-multistage-security/ Dockerfile, Multi-stage, BuildKit, Non-Root Tối ưu layer cache, chống cache busting, Multi-stage build giảm 95% dung lượng, phân quyền non-root (UID 10001) 35-40 phút
Lab 12 lab12-cloud-vpc-vm-sg/ AWS CLI, LocalStack, Docker, VPC, EC2, Security Groups Xây dựng hạ tầng mạng VPC, phân vùng Subnet, cấu hình Security Groups, triển khai EC2 và kết nối SSH 40-45 phút
Lab 13 lab13-cloud-alb-asg/ AWS CLI, LocalStack, Nginx, ALB, Auto Scaling, CloudWatch Launch Template, Auto Scaling Group (min/max/desired), ALB + Target Group + Health Check, scale-out 50-55 phút
Lab 14 lab14-cloud-finops/ AWS CLI, LocalStack, Python, Cost Allocation Tags, Budgets Gắn Tags phân bổ chi phí, thiết lập Budget Alerts, phân tích Cost & Usage Report, phát hiện idle resources 35-40 phút
Lab 15 lab15-docker-volume-network/ Docker CLI, Named Volume, Bridge Network, Embedded DNS, Redis Khởi tạo Named Volume lưu trữ dữ liệu bền vững, cấu hình Custom Bridge Network, kết nối đa tầng và cô lập mạng 35-40 phút
Lab 16 lab16-cloud-terraform-cli/ Terraform CLI, AWS Provider, LocalStack, IaC, HCL Khởi tạo hạ tầng Cloud chuẩn IaC (VPC, Subnet, Security Group, EC2), làm chủ vòng đời init/plan/apply/destroy, quản trị state file 40-45 phút
Lab 17 lab17-cloud-terraform-modules-workspaces/ Terraform Modules, Workspaces, LocalStack, Multi-Env Đóng gói Child Modules tái sử dụng (VPC, Compute), cô lập trạng thái đa môi trường bằng Workspaces và file biến môi trường .tfvars 45-50 phút
Lab 18 lab18-cloud-terraform-remote-state-import/ S3 Remote Backend, DynamoDB Lock, State Recovery, Import Chuyển đổi Remote State S3 + DynamoDB Locking, xử lý kẹt khóa, can thiệp state mv/rm và import hạ tầng với khối import {} 45-50 phút
Lab 19 lab19-k8s-cluster-nodes/ Kubernetes, Kubeadm 2 Nodes, kubectl, Node Management Khám phá kubeconfig, đánh giá điều kiện sức khỏe Node (Conditions & Allocatable), gắn nhãn điều phối Pod và bảo trì Cordon/Uncordon 35-40 phút
Lab 20 lab20-k8s-pod-deployment-probes/ Pod, Deployment, ReplicaSet, ConfigMap, Secret, Probes Đóng gói Pod với giới hạn tài nguyên (Requests/Limits), tự phục hồi & scale với Deployment, nạp ConfigMap/Secret và kiểm tra sức khỏe Liveness/Readiness 40-45 phút
Lab 21 lab21-k8s-service-ingress-namespace-rbac/ Namespace, ClusterIP, NodePort, Ingress, RBAC, ServiceAccount Phân vùng tài nguyên Namespace, cân bằng tải ClusterIP & NodePort, định tuyến L7 với Ingress và kiểm soát truy cập phân quyền RBAC 45-50 phút
Lab 22 lab22-k8s-storage-statefulset-hpa-helm/ StorageClass, PVC, StatefulSet, Headless Service, HPA, Helm Cấp phát động StorageClass & PVC, triển khai cơ sở dữ liệu StatefulSet, tự động mở rộng theo tải với HPA và đóng gói ứng dụng bằng Helm Chart 45-50 phút
Lab 23 lab23-cicd-pipeline-test-package/ GitHub Actions, act, Go test, Docker Registry Pipeline as Code, quality gate (gofmt, vet, test, coverage 70%), Fail-Fast, đóng gói image gắn tag Git SHA, publish registry, smoke test & rollback 45-50 phút

2. Tóm Tắt Nội Dung Từng Bài Lab

Khởi Động: Làm Quen Terminal & Điều Hướng Thư Mục Linux (linux-terminal-navigation/)

  • Giải mã cấu trúc Terminal Prompt (user@host:path$), phân biệt tài khoản thường ($) và Root (#), nắm vững cú pháp lệnh Linux tiêu chuẩn.
  • Thẩm tra danh tính phiên làm việc tức thì bằng whoami, hostname, id, date, uname -a và các biến môi trường $USER, $HOME, $PWD.
  • Làm chủ bản đồ cây thư mục chuẩn FHS (/, /etc, /var/log, /tmp), phân biệt đường dẫn Tuyệt đối vs Tương đối và các ký hiệu đặc biệt (., .., ~, -).
  • Khởi tạo kiến trúc thư mục đa cấp với mkdir -p (Brace Expansion), tạo tệp với touch, sao chép đệ quy cp -r, di chuyển/đổi tên mv, xóa dữ liệu với rm và trực quan hóa với tree.

Nền Tảng: Thao Tác Tệp & Thư Mục Trong Linux (linux-file-operations/)

  • Khởi tạo kiến trúc dự án đa tầng với mkdir -p (Brace Expansion), tạo tệp và ghi dữ liệu với touch, echo > và Here-Doc.
  • Thực hiện sao lưu giữ thuộc tính (cp -p), sao chép đệ quy (cp -r), di chuyển và đổi tên tệp/thư mục (mv).
  • Dọn dẹp tệp tin an toàn với rm và rmdir, phòng ngừa các sự cố rủi ro dữ liệu.
  • Đọc, kiểm tra và phân tích tệp nhật ký ứng dụng với bộ công cụ cat -n, less, head, tail, wc -l và giám sát thời gian thực tail -f.

Nền Tảng: Pipe, Redirect & Tìm Kiếm Trong Linux (linux-pipe-redirect-search/)

  • Quản trị 3 luồng dữ liệu chuẩn stdin (0), stdout (1), stderr (2) và kỹ thuật chuyển hướng dữ liệu với >, >>, 2>, 2>&1, /dev/null.
  • Xây dựng chuỗi xử lý dữ liệu tự động với đường ống Pipe (|) kết hợp các bộ lọc grep, wc, sort, uniq và ngã ba đường ống tee.
  • Thực hành tìm kiếm tệp tin theo thuộc tính bằng find và truy vết nội dung/chuỗi bí mật đệ quy với grep -rn.

Lab 1: TCP/IP và DNS Trong DevOps (lab1-tcpip-dns/)

  • Tính toán phân chia mạng con (Subnetting, CIDR, Network ID, Broadcast IP) cho VPC và mạng container.
  • Phân tích bảng định tuyến và giao diện mạng Linux bằng công cụ iproute2 (ip addr, ip route).
  • Kiểm tra cổng và trạng thái kết nối mạng với ss và nc (Netcat).
  • Chẩn đoán chuỗi phân giải DNS từ local cache tới Authoritative Server bằng dig +trace.

Lab 2: HTTP/HTTPS, TLS 1.3 và Nginx SSL (lab2-http-ssl-nginx/)

  • Phân tích cấu trúc bản tin HTTP/1.1 và các trường Header bảo mật quan trọng.
  • Khám phá tiến trình bắt tay TLS 1.3 Handshake (1-RTT) và trao đổi khóa bất đối xứng.
  • Tự tạo chứng chỉ số self-signed X.509 bằng OpenSSL và cấu hình SSL Termination trên Nginx.
  • Thiết lập điều hướng tự động từ HTTP (Port 80) sang HTTPS (Port 443) bằng mã trạng thái 301.

Lab 3: SSH Hardening, Tunneling và UFW Firewall (lab3-ssh-firewall/)

  • Gia cố bảo mật dịch vụ OpenSSH: Đổi cổng mặc định, vô hiệu hóa đăng nhập bằng mật khẩu, chỉ cho phép khóa Ed25519.
  • Thiết lập đường hầm SSH Local Port Forwarding (-L) để truy cập dịch vụ nội bộ không mở ra Internet.
  • Cấu hình tường lửa UFW theo nguyên tắc phòng thủ đa lớp (Defense in Depth) và hạn chế tần suất (ufw limit).

Lab 4: Nginx Reverse Proxy, Load Balancing và Connection Pooling (lab4-nginx-lb/)

  • Cấu hình Nginx đóng vai trò Reverse Proxy chuyển tiếp lưu lượng với đầy đủ các header định danh client.
  • Triển khai và so sánh 3 thuật toán cân bằng tải: Round Robin, Least Connections và IP Hash.
  • Thiết lập Upstream Connection Pooling (keepalive) để tái sử dụng socket TCP, giảm tải bắt tay và tăng RPS.
  • Đo lường hiệu năng thực tế bằng công cụ wrk trước và sau khi kích hoạt Connection Pooling.

Lab 5: Giám Sát Tài Nguyên Hệ Thống và Tự Động Hóa Cảnh Báo (lab5-server-monitoring/)

  • Thu thập số liệu hiệu năng Linux trực tiếp từ kernel (/proc/stat, /proc/meminfo, df).
  • Xây dựng script giám sát monitor.sh với cơ chế đánh giá ngưỡng linh hoạt (WARNING, CRITICAL).
  • Tích hợp gửi cảnh báo tự động định dạng JSON qua HTTP Webhook (hỗ trợ Slack, Discord, Mock Receiver).
  • Lập lịch tự động hóa 24/7 với Cron và quản lý xoay vòng file nhật ký (Log Rotation).

Lab 6: Git Internals, Reflog và Git Hooks Automation (lab6-git-internals-hooks/)

  • Bóc tách bản chất cấu trúc lưu trữ nội tại của Git: Blob, Tree, Commit và cơ chế mã băm SHA-1.
  • Tự động hóa kiểm tra chất lượng mã nguồn bằng pre-commit hook (chặn lộ secret, format code).
  • Chuẩn hóa thông điệp commit theo Conventional Commits bằng hook commit-msg.
  • Cứu hộ dữ liệu và khôi phục các commit bị mất sau thao tác git reset --hard thông qua Git Reflog.

Lab 7: Chiến Lược Nhánh, Giải Quyết Xung Đột và Pull Request (lab7-git-conflicts-pr/)

  • Áp dụng mô hình phân nhánh Trunk-Based Development với Central Bare Repository thực tế.
  • Khám phá và xử lý xung đột hợp nhất đa file bằng kỹ thuật 3-Way Merge và chế độ hiển thị zdiff3.
  • Vận dụng quy trình Rebase từng bước (git rebase --continue) để giữ lịch sử commit thẳng hàng.
  • Thực hiện đóng gói mã nguồn tính năng bằng kỹ thuật Squash & Merge chuẩn mực trước khi đưa vào sản xuất.

Lab 8: Kết Nối PostgreSQL, Redis và Chạy Flyway Migration (lab8-postgres-redis-flyway/)

  • Quản lý cấu hình kết nối an toàn qua biến môi trường (.env, DATABASE_URL, REDIS_URL) theo chuẩn 12-Factor App.
  • Thiết lập và phân tích cơ chế Connection Pooling (DB_POOL_MIN, DB_POOL_MAX) giúp tối ưu tài nguyên mạng.
  • Quản lý phiên bản CSDL tự động với Flyway (Migration scripts V1, V2) và kiểm tra tính toàn vẹn (Checksum, Foreign Key).
  • Triển khai mô hình bộ nhớ đệm Cache-Aside với Redis và đo lường độ trễ truy vấn thực tế.

Lab 9: Nhập Môn Docker CLI, Cấu Trúc Image Layers & Tương Tác Container (lab9-docker-cli-fundamentals/)

  • Khám phá cơ chế phân tầng (Image Layers) bất biến và mã băm SHA256 digest của Docker Image.
  • Sử dụng thành thạo docker pull, docker history, docker inspect và quản lý phiên bản với docker tag.
  • Phân biệt và làm chủ docker run -it (môi trường mới) và docker exec -it (thâm nhập container đang chạy nền).
  • Sao chép dữ liệu hai chiều giữa Host và Container với docker cp, truy vết thay đổi file với docker diff.
  • Thấu hiểu cơ chế Copy-on-Write (CoW) của storage driver overlay2 và đóng gói snapshot bằng docker commit.

Lab 10: Cấu Hình Tài Nguyên Runtime, Quản Lý Log Container & Graceful Shutdown (lab10-runtime-logs-graceful-shutdown/)

  • Quản trị vòng đời container (create, start, stop, pause, rm) và nạp biến môi trường an toàn từ --env-file.
  • Thiết lập giới hạn phần cứng với cgroups Linux (--cpus 0.5, --memory 256m, --memory-swap 256m) và chính sách phục hồi --restart unless-stopped.
  • Thực nghiệm kích hoạt Linux OOM Killer (mã thoát 137, OOMKilled: true) khi tiến trình bị rò rỉ bộ nhớ.
  • Cấu hình tự động xoay vòng log (Log Rotation: --log-opt max-size=2m --log-opt max-file=3) chống nguy cơ đầy 100% dung lượng đĩa máy chủ.
  • Xử lý bài toán PID 1 (Exec form vs Shell form), bắt tín hiệu SIGTERM (15) và kiểm thử quy trình Graceful Shutdown rút cạn kết nối an toàn (ExitCode: 0).

Lab 11: Thiết Kế Dockerfile Multi-stage, Tối Ưu Cache & Phân Quyền Non-Root (lab11-dockerfile-multistage-security/)

  • Phân tích cơ chế băm nội dung của Docker BuildKit, hiện tượng Cache Busting và thiết lập file .dockerignore.
  • Tối ưu hóa thứ tự các chỉ thị: nạp file mô tả dependencies trước, source code sau để đạt 100% tỷ lệ Cache Hit.
  • Áp dụng kỹ thuật Multi-stage build tách bạch môi trường Builder và Runtime, giảm dung lượng image từ hơn 300MB xuống chỉ còn xấp xỉ 15MB.
  • Sử dụng các cờ biên dịch tối ưu kích thước file nhị phân tĩnh (CGO_ENABLED=0, -ldflags="-s -w").
  • Triển khai nguyên tắc đặc quyền tối thiểu (Least Privilege), tạo user/group non-root và chạy tiến trình dưới quyền USER 10001:10001 đạt chuẩn an toàn Kubernetes và CIS Docker Benchmark.

Lab 12: Xây Dựng Mạng VPC & Security Groups trên Cloud (lab12-cloud-vpc-vm-sg/)

  • Khởi tạo kiến trúc mạng cô lập VPC 10.0.0.0/16, phân vùng Public Subnet và Private Subnet bằng AWS CLI.
  • Thiết lập Internet Gateway (IGW) và cấu hình bảng định tuyến Route Table cho phép truy cập Internet.
  • Cấu hình tường lửa Security Groups đa tầng (web-sg mở port 80/443, db-sg chỉ mở port 5432 tham chiếu từ web-sg).
  • Khởi tạo SSH Key Pair, chạy máy ảo EC2 và dọn dẹp tài nguyên (FinOps).

Lab 13: Cân Bằng Tải ALB & Cụm Máy Chủ Auto Scaling Group (lab13-cloud-alb-asg/)

  • Tạo Launch Template chuẩn hóa cấu hình máy chủ kèm User Data khởi chạy ứng dụng.
  • Triển khai cụm máy chủ tự động mở rộng Auto Scaling Group (ASG) đa vùng sẵn sàng cao.
  • Cấu hình Application Load Balancer (ALB) và Target Group kèm kiểm tra sức khỏe (Health Check).
  • Giả lập mở rộng quy mô (Scale-Out) và thực hành quy trình dọn dẹp tài nguyên.

Lab 14: FinOps — Quản Lý và Tối Ưu Chi Phí Cloud (lab14-cloud-finops/)

  • Gắn Cost Allocation Tags lên tài nguyên Cloud theo chuẩn quản trị (Project, Environment, CostCenter).
  • Thiết lập hạn mức chi phí AWS Budgets và cấu hình cảnh báo ngưỡng (Budget Alerts).
  • Phân tích báo cáo chi phí Cost & Usage Report (CUR) đa chiều bằng script tự động.
  • Phát hiện tài nguyên lãng phí (idle resources), lập báo cáo FinOps và thực thi hủy máy ảo bằng AWS CLI.

Lab 15: Docker Named Volume, Custom Bridge Network & Kết Nối Container (lab15-docker-volume-network/)

  • Khởi tạo và quản trị Named Volume, kiểm chứng cơ chế lưu trữ dữ liệu bền vững qua vòng đời container.
  • Tạo Custom Bridge Network với dải Subnet quy hoạch chuẩn và khám phá cơ chế Embedded DNS (127.0.0.11).
  • Triển khai mô hình ứng dụng đa tầng (Redis DB + Web Client) kết nối nội bộ an toàn bằng Container Name.
  • Kiểm thử nguyên tắc cô lập mạng (Network Isolation) và thực hành kết nối mạng động (docker network connect).

Lab 16: Thực Hành Khởi Tạo Hạ Tầng Cloud Cơ Bản Bằng Terraform CLI (lab16-cloud-terraform-cli/)

  • Tiếp cận tư duy Declarative Infrastructure as Code (IaC) và cấu hình AWS Provider trỏ tới LocalStack.
  • Lập trình mạng VPC, Public/Private Subnet, Internet Gateway và tham số hóa cấu hình với Variables & Outputs.
  • Làm chủ chu trình kinh điển: terraform init, validate, plan -out, apply và mổ xẻ file trạng thái terraform.tfstate.
  • Thực hiện cập nhật hạ tầng tại chỗ (In-Place Drift Update), kiểm chứng tính Idempotent và dọn dẹp an toàn bằng terraform destroy.

Lab 17: Đóng Gói Terraform Module & Quản Lý Đa Môi Trường Workspaces (lab17-cloud-terraform-modules-workspaces/)

  • Phân tách và đóng gói mã nguồn thành các Child Modules tái sử dụng (modules/vpc, modules/compute).
  • Thiết lập hợp đồng giao tiếp chuẩn giữa các module qua variables.tf và outputs.tf.
  • Quản lý và cô lập trạng thái hạ tầng đa môi trường (dev, prod) bằng Terraform Workspaces.
  • Cấu hình linh hoạt quy mô máy ảo và IP range tương ứng theo từng môi trường với các file .tfvars.

Lab 18: Remote Backend, Khôi Phục Sự Cố State & Import Hạ Tầng (lab18-cloud-terraform-remote-state-import/)

  • Chuyển đổi trạng thái lưu trữ hạ tầng sang Remote Backend AWS S3 kết hợp DynamoDB State Locking.
  • Xử lý sự cố kẹt khóa và can thiệp state nâng cao (terraform force-unlock, terraform state mv, terraform state rm).
  • Đưa tài nguyên tạo thủ công ngoài luồng vào quản lý bằng lệnh terraform import truyền thống.
  • Sử dụng khối khai báo hiện đại import {} (từ Terraform 1.5+) tự động sinh mã HCL và kiểm chứng tính đồng bộ 3 bên.

Lab 19: Quản Trị Cụm Kubernetes & Kiểm Tra Trạng Thái Node Qua kubectl (lab19-k8s-cluster-nodes/)

  • Khám phá kiến trúc cụm K8s giữa Control Plane và Worker Nodes cùng cấu trúc tệp xác thực ~/.kube/config.
  • Phân tích và đánh giá trạng thái vận hành của Node qua các điều kiện sức khỏe và tỷ lệ tài nguyên khả dụng.
  • Quản trị siêu dữ liệu của Node bằng Labels và Annotations phục vụ việc phân loại và định tuyến Pod có điều kiện.
  • Thực thi quy trình bảo trì máy chủ an toàn trong môi trường Production thông qua các lệnh điều phối nút mạng.

Lab 20: Đóng Gói Pod, Triển Khai Deployment, Nạp ConfigMap/Secret & Cấu Hình Probes (lab20-k8s-pod-deployment-probes/)

  • Khởi tạo Pod chuẩn khai báo YAML, áp dụng kỹ thuật --dry-run=client và cấu hình hạn mức tài nguyên tính toán (Requests & Limits) phòng tránh OOMKilled.
  • Quản trị vòng đời ứng dụng với Deployment và ReplicaSet, thực nghiệm cơ chế tự phục hồi (Self-healing) và mở rộng quy mô linh hoạt (Scale Out/In).
  • Phân tách cấu hình khỏi mã nguồn (Twelve-Factor App), bảo mật thông tin nhạy cảm với Secret và nạp biến môi trường động vào Pod.
  • Thiết lập hệ thống giám sát sức khỏe container thông minh với Liveness Probe (tự restart) và Readiness Probe (kiểm soát điều phối traffic mạng).

Lab 21: Cấu Hình Service, Ingress, Phân Vùng Namespace & Phân Quyền RBAC (lab21-k8s-service-ingress-namespace-rbac/)

  • Phân vùng logic tài nguyên cụm K8s với Namespace, cô lập không gian giữa các đội ngũ và môi trường triển khai.
  • Cấu hình cân bằng tải nội bộ với Service kiểu ClusterIP và phơi bày cổng máy chủ ra mạng ngoài với NodePort.
  • Thiết lập quy tắc định tuyến HTTP/HTTPS tầng 7 thông minh dựa trên đường dẫn URL (Path-based Routing) thông qua Ingress.
  • Xây dựng ma trận kiểm soát quyền truy cập tối thiểu (Principle of Least Privilege) với ServiceAccount, Role, RoleBinding và kiểm thử với lệnh kubectl auth can-i.

Lab 22: Cấp Phát Động StorageClass, Triển Khai StatefulSet, Cấu Hình HPA & Đóng Gói Helm Chart (lab22-k8s-storage-statefulset-hpa-helm/)

  • Cấu hình cấp phát động bộ lưu trữ bền vững thông qua StorageClass và PersistentVolumeClaim (PVC), bảo toàn dữ liệu khi xóa Pod.
  • Triển khai cụm cơ sở dữ liệu có trạng thái với StatefulSet, Headless Service và cơ chế tự động sinh ổ đĩa độc lập qua volumeClaimTemplates.
  • Thiết lập tự động co giãn quy mô số lượng bản sao theo tải CPU thời gian thực bằng Horizontal Pod Autoscaler (HPA) và Metrics-Server.
  • Đóng gói chuẩn hóa ứng dụng microservice thành Helm Chart, tham số hóa cấu hình qua Values và quản trị vòng đời phát hành ứng dụng.

Lab 23: Xây Dựng Pipeline CI/CD Cơ Bản — Kiểm Thử & Đóng Gói Ứng Dụng (lab23-cicd-pipeline-test-package/)

  • Viết workflow GitHub Actions (Pipeline as Code) với trigger, job, step và chạy cục bộ bằng act trên runner container.
  • Thiết lập chuỗi quality gate: kiểm tra format gofmt, phân tích tĩnh go vet, unit test và ngưỡng coverage 70%.
  • Thực hành vòng Fail-Fast trên nhánh tính năng có lỗi: đọc log pipeline đỏ, sửa format và bug logic, rebase và merge an toàn vào main.
  • Đóng gói Docker image bất biến với job phụ thuộc needs, điều kiện if, gắn tag Git SHA + latest, publish lên registry nội bộ và lưu artifact coverage.
  • Tự động smoke test image sau build, phát hành phiên bản mới và diễn tập rollback bằng tag SHA.

3. Cấu Trúc File Chuẩn Của Mỗi Bài Lab

Mỗi thư mục bài lab được tổ chức theo tiêu chuẩn kịch bản của Killercoda:

labX-ten-bai-lab/
├── index.json          # File cấu hình metadata kịch bản (tiêu đề, thời lượng, các bước)
├── background.sh       # Script chạy ngầm khởi tạo môi trường (Docker, package, cấu hình)
├── foreground.sh       # Script đồng bộ giao diện hiển thị trạng thái chờ môi trường
├── intro.md            # Trang giới thiệu bài học, sơ đồ kiến trúc và mục tiêu
├── step1.md            # Hướng dẫn lý thuyết và thử thách thực hành Bước 1
├── step1-verify.sh     # Script tự động kiểm tra và chấm điểm Bước 1
├── step2.md            # Hướng dẫn lý thuyết và thử thách thực hành Bước 2
├── step2-verify.sh     # Script tự động kiểm tra và chấm điểm Bước 2
├── step3.md            # Hướng dẫn lý thuyết và thử thách thực hành Bước 3
├── step3-verify.sh     # Script tự động kiểm tra và chấm điểm Bước 3
├── finish.md           # Trang chúc mừng, bảng tra cứu nhanh lệnh (Cheat Sheet)
└── architecture.svg    # (Tùy chọn) Sơ đồ kiến trúc vector trực quan

4. Hướng Dẫn Tích Hợp Và Chạy Trên Killercoda

  1. Đăng ký tài khoản trên Killercoda và kích hoạt chế độ Creator.
  2. Kết nối tài khoản GitHub chứa repository này với Killercoda.
  3. Tạo cấu trúc thư mục scenario hoặc để Killercoda đồng bộ tự động từ các thư mục lab*.
  4. Mỗi bài lab có thời lượng khuyến nghị là 35-40 phút trên nền tảng Ubuntu 22.04 LTS.

5. Quy Chuẩn Kỹ Thuật

  • Ngôn ngữ: Toàn bộ tài liệu hướng dẫn được biên soạn bằng tiếng Việt có dấu chuẩn xác.
  • Phương pháp tiếp cận: Thực hành chủ động (DIY - Do It Yourself) không dùng thẻ thực thi tự động ở phần thử thách để học viên rèn luyện kỹ năng gõ lệnh trên terminal.
  • Độ tin cậy: Tất cả script shell đều được kiểm định cú pháp nghiêm ngặt (bash -n) và kiểm tra tính hợp lệ JSON (jq).

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages