LLM nội bộ
GitHub
Case study · MLOps

Chạy LLM nội bộ. Vận hành được.

Một cụm inference LLM tự vận hành trên node GPU của chính bạn: vLLM phục vụ model, LiteLLM làm gateway, Portainer CE làm control plane, Netdata làm lớp giám sát — gói gọn trong ba stack Docker.

Điểm mấu chốt
Chạy được model mất mười phút Phần còn lại mới khó: cấu hình version hoá trong Git, healthcheck phản ánh đúng trạng thái thật, và metrics ứng dụng nằm cùng chỗ với metrics hạ tầng.
gpu-node-01 · docker ps
3
stack Docker
2
model chạy song song
1s
độ phân giải metrics
0
dashboard phải tự viết
Bên trong

Kiến trúc hệ thống

Sáu lớp theo luồng request, cộng một lớp vận hành cắt ngang. Bấm vào sơ đồ để mở bản đầy đủ.

Kiến trúc cụm inference LLM nội bộ
Toàn cảnh cụm inferencengười dùng → DMZ → ứng dụng → gateway → vLLM → hạ tầng, cùng lớp vận hành bên phải
Nét liền

Luồng request

Đi thẳng từ trên xuống, mỗi lớp chỉ biết lớp kế tiếp.

    Nét đứt

    Luồng vận hành

    Chạy vuông góc với luồng request, từ cột phải cắt vào lớp serving.

      Ranh giới

      Vì sao chia lớp

      Ranh giới rõ cho phép thay từng phần mà không đụng phần còn lại.

        Sơ đồ vẽ bằng core shape của draw.io nên mở được ở mọi máy, không cần bật thêm shape library. File nguồn .drawio nằm trong diagrams/.

        Thành phần

        Stack công nghệ

        Chín thành phần, mỗi cái giải đúng một việc. Bấm thẻ để mở tài liệu chính thức.

        0
        🔍 Không có thành phần khớp Thử keyword khác hoặc chọn Tất cả.
        Quan sát

        Metrics đáng theo dõi

        vLLM expose metrics định dạng Prometheus tại /metrics; collector go.d/prometheus của Netdata đọc thẳng, không cần dựng thêm Prometheus.

        Học được gì

        Sáu bài học rút ra

        Những chỗ tốn thời gian nhất khi dựng thật — ghi lại để bạn không phải trả giá lần nữa.

        Tự chấm điểm

        Checklist chuẩn MLOps

        Đủ mười gạch đầu dòng này thì bạn đang vận hành một hệ thống, chứ không phải trông một con server.

          Nói thẳng

          Ranh giới của kiến trúc này

          Đủ nghiêm túc cho một đến vài node GPU. Vượt ngưỡng đó thì các giả định bắt đầu gãy.

          Bố cục repo

          Nội dung repo

          Toàn bộ case study nằm trong một repo phẳng: hướng dẫn triển khai, sơ đồ nguồn draw.io, và trang landing này.