Chi phí, thanh toán và vận hành23 tháng 10, 2026Flatkey Team

Xây dựng cụm GPU Kubernetes cho huấn luyện và suy luận AI

Hướng dẫn thực tiễn về cụm GPU Kubernetes cho huấn luyện và suy luận AI, bao gồm nhóm nút GPU, plugin thiết bị, GPU Operator, hàng đợi, lưu trữ, khả năng quan sát, bảo mật, kiểm soát chi phí và thẩm định nhà cung cấp.

Xây dựng cụm GPU Kubernetes cho huấn luyện và suy luận AI

Xây dựng một cụm GPU Kubernetes không giống như chỉ gắn GPU vào một vài nút worker. Đối với huấn luyện và suy luận AI, Kubernetes phải cung cấp bộ tăng tốc một cách an toàn, đặt các tác vụ lên đúng nút, xếp hàng năng lực khan hiếm, giữ bộ dữ liệu và trọng số mô hình đủ gần với tài nguyên tính toán, đồng thời cho người vận hành biết lý do một lần chạy tốn kém bị thất bại.

Quy tắc thực tế: xây dựng cụm GPU Kubernetes nhỏ nhất có thể chứng minh khối lượng công việc, sau đó chỉ mở rộng khi bộ lập lịch, trình điều khiển, mạng, lưu trữ, khả năng quan sát và mô hình chi phí đã vượt qua các bài kiểm thử nghiệm thu. Một cụm không thể giải thích thời gian xếp hàng, mức sử dụng GPU, thời gian khôi phục checkpoint và nguyên nhân lỗi thì vẫn chưa phải hạ tầng production.

Hướng dẫn này trình bày kiến trúc và mô hình vận hành cho một cụm GPU Kubernetes dùng cho huấn luyện và suy luận AI. Nội dung bao gồm thiết kế nút, cung cấp GPU, xếp hàng, API khối lượng công việc, khả năng quan sát, một sơ đồ cụm GPU Kubernetes thực tế, công cụ quản lý và các câu hỏi dành cho nhà cung cấp cần đặt ra trước khi bạn thuê hoặc đặt trước năng lực.

Nếu sản phẩm chỉ cần đầu ra của mô hình, trước tiên hãy so sánh API mô hình hoặc phương án suy luận được quản lý. Nếu bạn cần trọng số tùy chỉnh, kiểm soát việc phân bổ, phục vụ riêng tư, huấn luyện phân tán hoặc quyền sở hữu benchmark có thể lặp lại, cụm GPU Kubernetes có thể là control plane phù hợp.

Câu trả lời nhanh về cụm GPU Kubernetes

Một cụm GPU Kubernetes production có sáu lớp:

Lớp Phạm vi quản lý Cần xác minh trước khi đưa vào production
Nút GPU Mẫu GPU, bộ nhớ GPU, CPU/RAM, NVMe cục bộ, NIC, image nút, trình điều khiển, runtime container Cấu hình nút phù hợp với khối lượng công việc huấn luyện hoặc suy luận, chứ không chỉ phù hợp với SKU GPU được quảng cáo.
Cung cấp GPU Device plugin, GPU Operator, Dynamic Resource Allocation, chính sách MIG hoặc chia sẻ Pod yêu cầu bộ tăng tốc một cách dự đoán được và không thể vô tình sử dụng sai thiết bị.
Lập lịch và hàng đợi Kubernetes scheduler, Kueue, Volcano, Ray, Kubeflow, các operator tùy chỉnh Các tác vụ chờ đợi công bằng, chính sách preemption rõ ràng và các nhóm có thể giải thích thời gian xếp hàng.
Mạng và lưu trữ NVLink/NVSwitch trong các nút, InfiniBand/RoCE/EFA hoặc Ethernet giữa các nút, lưu trữ đối tượng, hệ thống tệp dùng chung, đường dẫn checkpoint Các tác vụ phân tán mở rộng quy mô và khôi phục mà không làm GPU thiếu dữ liệu.
Khả năng quan sát DCGM, Prometheus, log, sự kiện, trace, chỉ số hàng đợi, nhãn chi phí Người vận hành có thể thấy mức sử dụng, bộ nhớ, điện năng, lỗi, chủ sở hữu và chi tiêu theo khối lượng công việc.
Bảo mật và quản trị RBAC, namespace, quota, chính sách image, secrets, chính sách mạng, log kiểm toán Quyền truy cập đa thuê bao được kiểm soát trước khi cụm trở thành hạ tầng dùng chung.

Câu hỏi thiết kế then chốt không phải là "Kubernetes có thể chạy GPU không?" Có thể, với device plugin và thiết lập nút phù hợp. Câu hỏi khó hơn là liệu cụm GPU Kubernetes cho hạ tầng AI của bạn có thể duy trì hiệu quả sử dụng GPU với dữ liệu thực, người dùng thực, lỗi thực và các ràng buộc ngân sách thực hay không.

Sơ đồ cụm GPU Kubernetes

Hãy sử dụng sơ đồ cụm GPU Kubernetes này làm mô hình đánh giá trước khi chọn công cụ:

                 developers / CI / notebooks / API traffic
                                  |
                                  v
        +--------------------------------------------------+
        | Kubernetes control plane                         |
        | API server, scheduler, RBAC, admission, secrets   |
        +--------------------------------------------------+
                                  |
                 +----------------+----------------+
                 |                                 |
                 v                                 v
        +------------------+              +------------------+
        | queue layer      |              | platform add-ons  |
        | Kueue / Volcano  |              | GPU Operator,     |
        | quotas, cohorts, |              | device plugin,    |
        | resource flavors |              | DCGM exporter     |
        +------------------+              +------------------+
                 |                                 |
                 +----------------+----------------+
                                  |
                                  v
        +--------------------------------------------------+
        | GPU worker node pools                            |
        | H100/H200/B200/A100/L40S/etc., CPU, RAM, NVMe,   |
        | NICs, CUDA/runtime, labels, taints, topology     |
        +--------------------------------------------------+
                 |                 |                 |
                 v                 v                 v
        training jobs       inference services       batch jobs
        PyTorch/JAX         vLLM/SGLang/Triton       Ray/Kubeflow
                 \                 |                 /
                  \                |                /
                   v               v               v
        +--------------------------------------------------+
        | network and data path                            |
        | high-speed fabric, object storage, shared FS,     |
        | model cache, checkpoints, logs, metrics, backups |
        +--------------------------------------------------+

Sơ đồ này được cố ý giữ đơn giản. Một kiến trúc cụm GPU Kubernetes thực tế sẽ bổ sung bộ cân bằng tải, registry riêng tư, ranh giới service mesh, IAM, kho lưu trữ artifact, theo dõi thí nghiệm và xuất dữ liệu thanh toán. Mục đích của sơ đồ là buộc phải có một cuộc thảo luận: lớp nào sở hữu từng chế độ lỗi?

Bước 1: quyết định liệu Kubernetes có phải là control plane GPU phù hợp hay không

Kubernetes là lựa chọn phù hợp khi nền tảng AI của bạn cần triển khai theo hướng container-native, tự động hóa dựa trên API, namespace đa tenant, endpoint dịch vụ, kiểm soát chính sách và tích hợp với khả năng quan sát cloud-native hiện có.

Thông thường, đây là lựa chọn phù hợp cho:

  • Các dịch vụ suy luận trực tuyến cần rollout, ranh giới tự động mở rộng quy mô, định tuyến và kiểm tra sức khỏe dịch vụ.
  • Khối lượng công việc suy luận theo lô hoặc embedding chạy dưới dạng Job, workload Ray hoặc operator tùy chỉnh.
  • Khối lượng công việc tinh chỉnh và huấn luyện, nơi các nhóm muốn dùng hạ tầng dùng chung thay vì từng máy GPU riêng lẻ.
  • Các nền tảng hỗn hợp, nơi notebook, tác vụ huấn luyện, phân phối mô hình và các dịch vụ hỗ trợ cùng dùng chung một mô hình vận hành.
  • Các nhóm đã vận hành Kubernetes và có thể mở rộng các hệ thống identity, CI/CD, registry, logging và policy hiện có.

Kubernetes có thể là lựa chọn ban đầu không phù hợp khi nhóm chỉ cần quyền truy cập nghiên cứu không thường xuyên, các tác vụ batch kiểu HPC chạy một lần hoặc huấn luyện đơn giản qua SSH. Trong các trường hợp đó, Slurm, dịch vụ huấn luyện được quản lý, môi trường notebook được lưu trữ hoặc thuê GPU trực tiếp có thể tạo ra kết quả hữu ích nhanh hơn.

Trước khi xây dựng một cụm GPU Kubernetes, hãy xác định ranh giới khối lượng công việc:

Câu hỏi Tại sao điều này quan trọng
Khối lượng công việc là huấn luyện, suy luận theo lô, suy luận trực tuyến, notebook hay hỗn hợp? Câu trả lời làm thay đổi các yêu cầu về lập lịch, lưu trữ, mạng và thời gian hoạt động.
Tác vụ cần một GPU đầy đủ, lát cắt MIG hay quyền truy cập chia sẻ theo thời gian? Chia sẻ GPU làm thay đổi tính cô lập, việc hạch toán và khả năng dự đoán hiệu năng.
Khối lượng công việc chạy một node hay nhiều node? Huấn luyện đa node cần kiểm thử mạng và vị trí đặt workload, không chỉ khả năng sẵn có của GPU.
Dataset, checkpoint và trọng số mô hình lớn đến mức nào? Việc di chuyển dữ liệu có thể chiếm phần lớn chi phí GPU.
Mẫu số kinh doanh là gì? Hãy dùng lần chạy huấn luyện hoàn thành, đầu ra suy luận được chấp nhận, tác vụ tạo nội dung đa phương tiện hoặc yêu cầu khách hàng, thay vì chỉ dùng GPU-giờ thô.

Để thiết kế hệ thống rộng hơn, hãy liên kết kế hoạch triển khai này với phần đánh giá kiến trúc cụm GPU của bạn: compute, network, storage và control plane phải được thiết kế cùng nhau.

Bước 2: thiết kế các node pool GPU theo đặc điểm khối lượng công việc

Một cụm GPU Kubernetes cần có các node pool được chủ đích rõ ràng, không phải sự pha trộn ngẫu nhiên của các máy tăng tốc.

Với mỗi node pool, hãy chỉ định:

  • Mẫu GPU và dung lượng bộ nhớ.
  • Số GPU trên mỗi node.
  • Chi tiết topology PCIe, SXM, NVLink, NVSwitch hoặc các chi tiết khác khi phù hợp.
  • Mẫu CPU, số lượng CPU, RAM và bố cục NUMA.
  • Dung lượng và thông lượng NVMe cục bộ.
  • Số lượng NIC, tốc độ NIC và loại fabric.
  • OS image, kernel, driver, CUDA, container runtime và quy trình vá lỗi.
  • Nhãn Kubernetes, taint, toleration và nhãn topology.
  • Liệu workload dùng GPU đầy đủ, MIG, time-slicing hay một chế độ chia sẻ khác.

Hãy tách riêng nhu cầu huấn luyện và suy luận, trừ khi có lý do thuyết phục để gộp chúng. Huấn luyện có thể quan tâm nhất đến hiệu năng all-reduce, băng thông checkpoint và gang scheduling. Suy luận trực tuyến có thể quan tâm nhiều hơn đến thời gian khởi động nguội, tính cục bộ của model cache, độ trễ đuôi và độ an toàn khi rollout.

Một mẫu đặt tên node pool hữu ích là:

gpu-pool:
  accelerator: h100-80gb
  topology: 8gpu-sxm-nvlink
  fabric: infiniband
  workload: distributed-training
  sharing: full-gpu

Các nhãn đó không chỉ là tài liệu. Chúng trở thành selector lập lịch, chiều quota, thẻ chi phí và ngữ cảnh gỡ lỗi.

Bước 3: cung cấp GPU bằng cơ chế Kubernetes phù hợp

Kubernetes lập lịch GPU thông qua các cơ chế tài nguyên chuyên biệt. Nền tảng phổ biến là device plugin của nhà cung cấp, công cụ này công bố tài nguyên GPU cho kubelet để pod có thể yêu cầu chúng dưới dạng tài nguyên mở rộng. Kubernetes mô tả mô hình yêu cầu và các ràng buộc lựa chọn node trong hướng dẫn lập lịch GPU. Device plugin Kubernetes của NVIDIA là lộ trình tiêu chuẩn cho GPU NVIDIA, còn NVIDIA GPU Operator đóng gói một số thành phần vận hành, bao gồm quản lý driver và runtime, triển khai device plugin, quản lý MIG và telemetry GPU.

Với nhiều nhóm, lộ trình production đầu tiên là:

node image + kernel prerequisites
  -> NVIDIA driver and container runtime
  -> NVIDIA GPU Operator
  -> Kubernetes device plugin
  -> DCGM exporter metrics
  -> workload namespaces and quotas

Phân bổ tài nguyên động của Kubernetes cũng quan trọng đối với các nhóm đang đánh giá một mô hình phân bổ thiết bị phong phú hơn. DRA được thiết kế xoay quanh các yêu cầu tài nguyên và lớp thiết bị, có thể hữu ích khi các yêu cầu tài nguyên mở rộng đơn giản không thể biểu đạt đủ các yêu cầu về vị trí đặt hoặc đặc thù của thiết bị. Hãy coi đây là một lựa chọn nền tảng có chủ đích: trình điều khiển, phiên bản Kubernetes, API khối lượng công việc và khả năng quan sát đều cần được kiểm thử cùng nhau.

Quyết định thực tế là:

Nhu cầu Cơ chế Kubernetes cần đánh giá
Lập lịch pod GPU đầy đủ cơ bản Device plugin và tài nguyên mở rộng theo kiểu nvidia.com/gpu.
Quản lý vòng đời GPU NVIDIA NVIDIA GPU Operator.
Telemetry GPU DCGM exporter cùng Prometheus/Grafana hoặc ngăn xếp quan sát của bạn.
Yêu cầu thiết bị biểu đạt tốt hơn Phân bổ tài nguyên động của Kubernetes.
Phân vùng GPU MIG khi được hỗ trợ, với các lưu ý rõ ràng về cô lập và hiệu năng.
Quyền truy cập phát triển chia sẻ theo thời gian Time-slicing hoặc chính sách nền tảng, chỉ sau khi các quy tắc về cô lập và hạn ngạch đã rõ ràng.

Đừng che giấu lớp này khỏi các nhóm ứng dụng. Họ cần biết pod nhận được một bộ tăng tốc toàn phần, một lát MIG hay một thiết bị chia sẻ theo thời gian vì các giả định về hiệu năng và gỡ lỗi sẽ thay đổi.

Bước 4: thêm một lớp hàng đợi trước khi các nhóm tranh giành GPU

Bộ lập lịch Kubernetes mặc định tự nó không phải là một hàng đợi AI đa người thuê hoàn chỉnh. Các nhóm AI thường cần tiếp nhận khối lượng công việc, chia sẻ công bằng, hạn ngạch, chính sách thu hồi và khả năng thấy được lý do các công việc đang chờ.

Kueue là dự án thuần Kubernetes cần đánh giá khi việc xếp hàng cho batch và AI/ML là quan trọng. Các khái niệm cốt lõi của nó bao gồm khối lượng công việc, hàng đợi cục bộ, hàng đợi cụm, cohort và resource flavor. Điều đó cho phép các nhóm nền tảng mô hình hóa các nhóm GPU khan hiếm và quyết định công việc nào được tiếp nhận khi tài nguyên sẵn có.

Volcano là một lựa chọn khác để lập lịch batch Kubernetes cho các khối lượng công việc kiểu AI, dữ liệu lớn và HPC. Bộ lập lịch gang của nó sử dụng điều kiện số lượng pod tối thiểu theo nguyên tắc tất cả hoặc không gì cả, hữu ích để đánh giá cho các công việc phân tán vốn sẽ lãng phí GPU được cấp phát một phần trong khi chờ các tác vụ đồng cấp.

Đối với một cụm GPU Kubernetes hạ tầng AI, hãy xác định chính sách hàng đợi bằng văn bản:

Chính sách Quyết định cần đưa ra
Tiếp nhận Những công việc nào có thể vào hàng đợi và cần metadata nào?
Chia sẻ công bằng GPU được phân chia giữa các nhóm, dự án hoặc môi trường như thế nào?
Ưu tiên Công việc suy luận sản xuất hoặc huấn luyện quan trọng cho việc ra mắt nào có thể được ưu tiên vượt hàng đợi?
Thu hồi Công việc có thể bị trục xuất không, và checkpoint được yêu cầu như thế nào trước khi trục xuất?
Resource flavor Những nhóm GPU nào có thể thay thế cho nhau và những nhóm nào không?
Lấp chỗ trống Các công việc nhỏ hơn có thể chạy trong khi một tác vụ phân tán lớn đang chờ không?
Khả năng hiển thị Người dùng có thể xem vị trí trong hàng đợi và lý do bị từ chối mà không cần hỏi kỹ sư nền tảng không?

Chính sách hàng đợi là một cơ chế kiểm soát chi phí. Nếu không có nó, nhóm ồn ào nhất có thể tiêu thụ năng lực đắt đỏ nhất trong khi các công việc nhỏ hơn phải chờ hoặc bị chuyển sang hạ tầng ngầm không được quản lý.

Bước 5: chọn API khối lượng công việc cho huấn luyện và suy luận

Một cụm GPU Kubernetes hữu ích nhất khi các nhóm ứng dụng có thể gửi khối lượng công việc mà không phải tự viết thông số pod cấp thấp mỗi lần.

Đối với huấn luyện, hãy đánh giá:

  • Kubernetes Jobs gốc cho các lần chạy đơn giản trên một nút.
  • Kubeflow Trainer cho quy trình huấn luyện phân tán trên nhiều framework.
  • Ray và KubeRay cho Python phân tán, suy luận batch và các mẫu phục vụ.
  • Tích hợp Volcano hoặc Kueue khi cần lập lịch gang hoặc tiếp nhận qua hàng đợi.
  • Chỉ sử dụng operator tùy chỉnh khi nền tảng có các mẫu nội bộ ổn định mà công cụ phổ dụng không đáp ứng.

Đối với suy luận, hãy đánh giá:

  • Deployments hoặc StatefulSets cho các dịch vụ đơn giản.
  • Container phục vụ vLLM, SGLang, Triton hoặc TensorRT-LLM tùy theo mô hình và mục tiêu hiệu năng.
  • KServe hoặc một lớp phục vụ mô hình khác khi các nhóm cần các abstraction về vòng đời mô hình.
  • Quy tắc mở rộng ngang và dọc dựa trên độ sâu hàng đợi, độ trễ, bộ nhớ GPU và hỗn hợp yêu cầu.
  • Các nhóm nút riêng biệt cho lưu lượng sản xuất nhạy cảm với độ trễ và khối lượng công việc batch.

Ban đầu, hãy giữ API khối lượng công việc đơn giản. Một mẫu Job gọn gàng với nhãn, yêu cầu tài nguyên, điểm gắn lưu trữ và xuất log tốt hơn một nền tảng phức tạp mà không ai có thể gỡ lỗi.

Bước 6: xác thực đường đi mạng và lưu trữ

Sự khác biệt giữa một bản demo hoạt động được và một hạ tầng AI cụm GPU Kubernetes cho môi trường sản xuất thường xuất hiện trong các bài kiểm thử mạng và lưu trữ.

Đối với huấn luyện phân tán, hãy xác thực:

  • Vị trí đặt trên nhiều nút.
  • Hành vi NCCL all-reduce trên mọi nút dự kiến.
  • Lỗi fabric, truyền lại, tắc nghẽn và biến thiên giữa các nút.
  • Phiên bản trình điều khiển, CUDA, NCCL và image container.
  • Hiệu năng sau khi image container sản xuất được cài đặt, không chỉ trên image benchmark sạch.

Đối với lưu trữ, hãy xác thực:

  • Thời gian chuẩn bị tập dữ liệu.
  • Tải xuống trọng số mô hình và làm nóng bộ nhớ đệm.
  • Tần suất và thời lượng ghi checkpoint.
  • Thời gian khôi phục sau khi node hoặc pod gặp sự cố.
  • Hành vi của hệ thống tệp dùng chung khi có các job chạy đồng thời.
  • Khu vực, lưu lượng đi ra và quy tắc vòng đời của kho lưu trữ đối tượng.

Một bài kiểm tra chấp nhận tối thiểu có dạng như sau:

1. Submit a queued training job with the production container.
2. Pull the real dataset sample and base model weights.
3. Run a multi-node communication benchmark if the workload is distributed.
4. Train or fine-tune for a fixed window.
5. Write a checkpoint, delete a pod, and restore from checkpoint.
6. Export GPU, network, storage, queue, and cost labels.
7. Compare useful work against the model/API or GPU rental baseline.

Bài kiểm tra này nên được chạy trước khi thực hiện các khoản đặt chỗ dài hạn hoặc cam kết chi phí lớn. Việc phát hiện kết cấu mạng yếu hoặc đường dẫn checkpoint chậm trong quá trình benchmark sẽ ít tốn kém hơn so với khi đang trong giai đoạn triển khai.

Công cụ quản lý cụm GPU Kubernetes

Cụm từ kubernetes gpu cluster management tools bao gồm nhiều công việc khác nhau. Đừng mua hoặc cài đặt công cụ trước khi xác định công việc mà chúng thực hiện.

Nhu cầu quản lý Công cụ hoặc dự án cần đánh giá Tiêu chí "tốt"
Vòng đời GPU NVIDIA GPU Operator, device plugin, tự động hóa image node Driver, runtime, khả năng hiển thị thiết bị và telemetry có thể lặp lại trên các node.
Xếp hàng Kueue, Volcano, các mẫu gửi job Ray Người dùng thấy rõ các trạng thái đã được chấp nhận, đang chờ, đang chạy, thất bại và hoàn tất.
Quy trình huấn luyện Kubeflow Training Operator, Ray, Jobs gốc Các job phân tán có thể lặp lại và không cần YAML pod tùy biến cho mỗi lần chạy.
Phục vụ suy luận vLLM, SGLang, Triton, KServe, Deployments Việc rollout, kiểm tra sức khỏe, độ trễ và hành vi bộ nhớ đệm mô hình đều có thể quan sát được.
Khả năng quan sát DCGM exporter, Prometheus, Grafana, log, trace, sự kiện Kubernetes Các chỉ số GPU được liên kết với nhãn job, nhóm, mô hình và chi phí.
Chính sách RBAC, ResourceQuota, LimitRange, kiểm soát admission, chính sách image, chính sách mạng Quyền truy cập đa đối tượng thuê được giới hạn mà không cản trở hoạt động phát triển thông thường.
Phân bổ chi phí Nhãn namespace, nhãn workload, xuất dữ liệu sử dụng, bảng điều khiển thanh toán Bộ phận tài chính có thể ánh xạ chi tiêu tới nhóm, môi trường, mô hình và đầu ra được chấp nhận.

Tránh một nền tảng chỉ báo cáo số giờ GPU đã được phân bổ. Quản lý hữu ích cho biết vì sao GPU nhàn rỗi, những job thất bại nào đã tiêu tốn năng lực, và liệu đầu ra suy luận hoặc các mốc huấn luyện có xứng đáng với chi phí hay không.

Các câu hỏi về cụm GPU Kubernetes của CoreWeave

Một số nhóm tìm kiếm coreweave kubernetes gpu cluster vì họ muốn truy cập năng lực GPU đám mây theo cách gốc Kubernetes thay vì máy ảo thông dụng. Hãy coi truy vấn có nêu nhà cung cấp này như một lời nhắc về thẩm định: đối với CoreWeave hoặc bất kỳ nhà cung cấp đám mây GPU tương tự nào, hãy xác minh chính xác mô hình truy cập Kubernetes, các kiểm soát node pool, khả năng tương thích operator, dữ liệu xuất quota và phạm vi hỗ trợ trước khi cam kết workload production.

Hãy áp dụng cùng quy trình thẩm định cho mọi nhà cung cấp:

Câu hỏi Lý do quan trọng
Những SKU GPU và cấu hình node nào thực sự có sẵn tại khu vực được yêu cầu? Tồn kho được tiếp thị và năng lực có thể phân bổ không phải là một.
Các node có đồng nhất trong phần đặt chỗ hoặc pool không? Các node hỗn hợp có thể phá vỡ các giả định về hiệu năng.
Fabric nào được dùng giữa các node GPU? Huấn luyện đa node phụ thuộc vào việc bố trí và hành vi mạng.
Ai chịu trách nhiệm nâng cấp driver, CUDA và Kubernetes? Ranh giới nâng cấp ảnh hưởng đến thời gian ngừng hoạt động và khả năng tái lập.
Bạn có thể chạy GPU Operator, Kueue, Volcano, Ray hoặc các operator bắt buộc của mình không? Kubernetes được quản lý vẫn cần khả năng tương thích nền tảng.
Quota, dữ liệu xuất sử dụng và nhãn được cung cấp như thế nào? Nhóm tài chính và nền tảng cần phân bổ chi phí.
Quy trình hỗ trợ khi các lần chạy phân tán gặp lỗi là gì? Bạn cần log, định danh node và quy trình leo thang trước khi đưa vào production.
Lộ trình rời khỏi nhà cung cấp đối với dữ liệu, trọng số mô hình và checkpoint là gì? Chi phí di chuyển phải được tính trong quyết định kiến trúc.

Kubernetes của nhà cung cấp không loại bỏ nhu cầu kiểm thử chấp nhận. Nó thay đổi những lớp bạn vận hành trực tiếp và những lớp bạn xác minh thông qua bằng chứng cấp độ dịch vụ.

Danh sách kiểm tra bảo mật và đa đối tượng thuê

Các cụm GPU thường nhanh chóng trở thành hạ tầng dùng chung. Bảo mật cần được thiết kế trước khi nhóm thứ hai bắt đầu sử dụng cụm.

Các kiểm soát tối thiểu:

  • Namespace theo từng nhóm, môi trường hoặc ranh giới khối lượng công việc.
  • RBAC được liên kết với nhà cung cấp danh tính của bạn.
  • ResourceQuota và LimitRange cho GPU, CPU, bộ nhớ và lưu trữ.
  • Chính sách rõ ràng cho pod đặc quyền, điểm gắn máy chủ, mạng máy chủ và quyền truy cập thiết bị.
  • Quản lý và luân chuyển secrets.
  • Chính sách registry hình ảnh riêng tư, ký, quét hoặc kiểm tra admission.
  • Chính sách mạng cho lưu lượng đi ra, quyền truy cập tập dữ liệu và ranh giới dịch vụ.
  • Nhật ký kiểm toán cho việc gửi job, truy cập secrets, sử dụng image và các thao tác quản trị.
  • Quy tắc dọn dẹp dữ liệu cho NVMe cục bộ, volume tạm, checkpoint, nhật ký và các job thất bại.

Nếu cụm xử lý dữ liệu khách hàng hoặc trọng số mô hình độc quyền, hãy coi các node worker là hạ tầng nhạy cảm. Một pod có quyền truy cập GPU cũng có thể có quyền truy cập vào dữ liệu giá trị cao, hiện vật mô hình và thông tin xác thực.

Khả năng quan sát và mô hình chi phí

Một kubernetes gpu cluster cho môi trường production cần đồng thời có ba góc nhìn:

  1. Góc nhìn nền tảng: tình trạng node, tình trạng GPU, mạng, lưu trữ, trạng thái hàng đợi, sự kiện Kubernetes.
  2. Góc nhìn khối lượng công việc: chủ sở hữu job, image, mô hình, tập dữ liệu, runtime, số lần thử lại, lý do thoát, chất lượng đầu ra.
  3. Góc nhìn tài chính: thời gian GPU được phân bổ, thời gian GPU hữu ích, thời gian nhàn rỗi, chi phí do job thất bại, chi phí trên mỗi đơn vị được chấp nhận.

Theo dõi ít nhất:

  • Mức sử dụng GPU, bộ nhớ GPU, điện năng, nhiệt độ và các sự kiện lỗi.
  • Nhãn pod, job, namespace, node pool, mô hình và nhóm.
  • Thời gian chờ trong hàng đợi và lý do admission.
  • Thông lượng huấn luyện, thời lượng checkpoint và thời gian khôi phục.
  • Độ trễ suy luận, thông lượng, kích thước batch, tỷ lệ cache hit và tỷ lệ lỗi.
  • Thông lượng lưu trữ và thời gian truyền object store.
  • Lỗi node, eviction, preemption và thử lại.

Sau đó chuẩn hóa chi phí:

effective_kubernetes_gpu_cluster_cost =
  (compute + network + storage + support + idle + failed_runs + operations)
  / accepted_workload_units

Mẫu số nên phù hợp với doanh nghiệp: các lượt huấn luyện hoàn tất, đầu ra mô hình được chấp nhận, job tạo nội dung đa phương tiện, batch lập chỉ mục hoặc yêu cầu của khách hàng. Để có khung chi phí sâu hơn, hãy sử dụng bảng tính TCO cụm GPU và so sánh với GPU cloud so với model API trước khi mở rộng cụm.

Danh sách kiểm tra triển khai

Hãy dùng đây làm thứ tự xây dựng cho phần triển khai production đầu tiên:

Giai đoạn Sản phẩm bàn giao Điều kiện đạt
Tóm tắt khối lượng công việc Đặc tả khối lượng công việc một trang Nhóm thống nhất về mô hình, framework, dữ liệu, quy mô, SLA và mẫu số chi phí.
Node pool Đặc tả và nhãn node GPU Kiểu node, topology, driver, runtime và chính sách nâng cấp được lập tài liệu.
Khả dụng GPU Đã cài device plugin hoặc GPU Operator Pod có thể yêu cầu GPU và các chỉ số DCGM hiển thị được.
Xếp hàng Kueue, Volcano hoặc chính sách lập lịch được lập tài liệu Người dùng có thể gửi job và xem trạng thái hàng đợi/admission.
Lưu trữ Đường dẫn tập dữ liệu, cache mô hình, checkpoint và nhật ký Kiểm tra khôi phục thành công sau khi buộc pod hoặc node gặp lỗi.
Mạng Kiểm tra fabric và kiểm tra lưu lượng production Benchmark phân tán hoặc đường dẫn suy luận đáp ứng ngưỡng khối lượng công việc.
Bảo mật RBAC, namespace, quota, secrets, chính sách image Một nhóm mới có thể bắt đầu sử dụng mà không cần quyền cluster-admin.
Khả năng quan sát Dashboard và xuất dữ liệu sử dụng Vận hành viên có thể trả lời ai đã dùng GPU nào và vì sao job thất bại.
Nghiệm thu Chạy khối lượng công việc đầu cuối Đầu ra hữu ích vượt trội hơn hoặc chứng minh được giá trị so với mốc model/API hoặc thuê ngoài.

Đừng mở rộng từ 8 GPU lên 80 GPU cho đến khi danh sách kiểm tra này trở nên nhàm chán. Nhàm chán chính là mục tiêu: gửi job có thể lặp lại, phân bổ có thể dự đoán, khôi phục sau lỗi đã biết, chi phí hiển thị rõ và quyền sở hữu rõ ràng.

Các sai lầm phổ biến

  • Mua năng lực GPU trước khi chứng minh được việc di chuyển dữ liệu và khôi phục checkpoint.
  • Coi device plugin là toàn bộ nền tảng.
  • Kết hợp huấn luyện và suy luận production trên cùng node pool mà không có quy tắc ưu tiên và cô lập.
  • Cho phép mọi nhóm viết đặc tả pod riêng mà không có nhãn chung.
  • Theo dõi thời gian GPU được phân bổ nhưng không theo dõi công việc hữu ích.
  • Bỏ qua chính sách hàng đợi cho đến khi cụm đã quá tải.
  • Cho rằng Kubernetes được quản lý đồng nghĩa với hạ tầng AI được quản lý.
  • Chạy benchmark trên image sạch nhưng chạy production trên image khác.
  • Quên đường thoát cho tập dữ liệu, trọng số, checkpoint và nhật ký.

Những sai lầm này tốn kém vì chúng làm tiêu hao thời gian GPU khan hiếm mà không tạo ra công việc được chấp nhận.

Câu hỏi thường gặp

Cụm GPU Kubernetes là gì?

Cụm GPU Kubernetes là một cụm Kubernetes có các node worker hỗ trợ GPU, với việc cung cấp thiết bị, chính sách lập lịch, lưu trữ, mạng và khả năng quan sát được cấu hình để pod và job có thể dùng bộ tăng tốc cho các khối lượng công việc huấn luyện, suy luận, xử lý batch hoặc nghiên cứu.

Tôi có cần NVIDIA GPU Operator không?

Không phải lúc nào cũng cần, nhưng nhiều nền tảng GPU Kubernetes dựa trên NVIDIA đánh giá nó vì công cụ này đóng gói các thành phần driver, runtime, device plugin, MIG và telemetry vào một quy trình được quản lý bởi operator. Một số nhà cung cấp được quản lý xử lý một phần stack này cho bạn, vì vậy hãy xác nhận ranh giới trách nhiệm trước khi tự cài đặt.

Kueue có cần thiết cho cụm GPU Kubernetes không?

Kueue không bắt buộc cho mọi cụm, nhưng đáng để đánh giá khi năng lực GPU khan hiếm được chia sẻ giữa các nhóm hoặc các tác vụ AI theo lô. Nếu không có lớp hàng đợi, người dùng thường khó thấy rõ lý do tác vụ phải chờ hoặc hạn mức bị từ chối.

Kubernetes có thể chạy huấn luyện đa nút không?

Có, nhưng huấn luyện đa nút đòi hỏi nhiều hơn việc lập lịch GPU. Bạn cần bố trí, xác thực mạng tốc độ cao, container tương thích, checkpointing và thường là hành vi hàng đợi hoặc lập lịch theo nhóm. Hãy kiểm thử chính xác nhóm nút và image sản xuất trước khi cam kết năng lực lớn.

Suy luận và huấn luyện có nên dùng chung một cụm GPU không?

Có thể, nhưng chỉ khi có các nhóm nút, quy tắc ưu tiên, hạn mức và cơ chế cô lập rõ ràng. Suy luận trong môi trường sản xuất thường có yêu cầu về độ trễ và tính sẵn sàng, vốn xung đột với các tác vụ huấn luyện lớn. Hãy bắt đầu tách riêng trừ khi bạn có thể chứng minh chính sách dùng chung hoạt động khi có tải.

Khi nào tôi nên dùng API mô hình thay vì cụm GPU Kubernetes?

Trước tiên, hãy dùng API mô hình khi bạn chỉ cần đầu ra của mô hình, danh mục mô hình thay đổi thường xuyên, mức sử dụng thấp hoặc nhóm của bạn chưa sẵn sàng vận hành driver GPU, hàng đợi, lưu trữ, giám sát và xử lý sự cố. Hãy xây dựng cụm khi quyền kiểm soát, quyền riêng tư, trọng số tùy chỉnh hoặc hiệu quả kinh tế của khối lượng công việc đủ để biện minh cho gánh nặng vận hành.

Tài liệu tham khảo chính thức

Kết luận

Một cụm GPU Kubernetes đáng để xây dựng khi Kubernetes mang lại cho hạ tầng AI của bạn khả năng kiểm soát tốt hơn về bố trí, tính lặp lại, bảo mật, khả năng quan sát và chi phí so với các máy GPU thiết lập tạm thời hoặc API được quản lý. Hãy bắt đầu với một khối lượng công việc hẹp, chứng minh nhóm nút, cung cấp GPU một cách rõ ràng, thêm cơ chế xếp hàng trước khi xảy ra tranh chấp và đo lường đầu ra hữu ích thay vì mức phân bổ GPU thô.

Khi cụm không thể vượt qua phương án thuê GPU đơn giản hơn hoặc lộ trình mô hình/API về khối lượng công việc được chấp nhận, đừng mở rộng nó. Khi có thể, Kubernetes trở thành mặt phẳng điều khiển biến các bộ tăng tốc khan hiếm thành một nền tảng AI dùng chung.