DEMEGO · Hạ tầng QLTN · Thuyết trình nội bộ · 1/6 – 30/9/2026

Đưa hệ thống QLTN
từ Docker → Kubernetes

Một hệ thống tách riêng, tự phục hồi, có giám sát, có sao lưu đã diễn tập — triển khai trong 4 tháng, khách không gián đoạn, và không bị khóa vào một nhà cung cấp.

4tháng triển khai
28/6ứng dụng chạy prod
≈ 0gián đoạn khách
< 5'thời gian lùi mỗi bước

1 · Vì sao phải làm

Hiện trạng

Hôm nay: cả hệ thống khách đặt trên một máy duy nhất — không có lưới an toàn.

RỦI RO 01

Một máy, một điểm chết

Prod chạy chung máy vật lý với dev + sandbox. Máy hỏng, hoặc một bản dev lỗi → kéo sập hệ thống đang phục vụ khách.

RỦI RO 02

Chưa có sao lưu kiểm chứng

Chưa diễn tập khôi phục thật — "có file backup" không bằng "rút ra dùng được". Mất dữ liệu = khôi phục chậm hoặc không khôi phục được.

RỦI RO 03

Không giám sát, sửa thủ công

Service chết nằm im tới khi có người phát hiện. Không cảnh báo. Đêm hôm sự cố phải có người thức dậy sửa tay.

RỦI RO 04

Phụ thuộc một người + dữ liệu nhạy cảm

Vận hành nằm trong tay/đầu một người. Dữ liệu là thông tin cư dân — dữ liệu cá nhân, mất/lộ là hậu quả nghiêm trọng về uy tín và trách nhiệm.

Hệ thống "đang chạy ổn" — nhưng ổn tới đúng thời điểm máy hỏng. Khi đó không có cách khôi phục nhanh. Đây là canh bạc đặt trên một hệ thống đang ra tiền.

2 · Giá trị

Migrate mang lại gì

Bốn kết quả kinh doanh — không phải bốn thứ kỹ thuật.

01 · GIẢM RỦI RO SỐNG CÒN

Sập thì tự dậy

Service chết tự khởi động lại trong vài giây; có chỗ dự phòng gánh thay. Ít downtime khách thấy, ít cuộc gọi 2 giờ sáng.

02 · HẾT PHỤ THUỘC MỘT NGƯỜI

Vận hành theo chuẩn ngành

Mọi cấu hình nằm trong Git + tài liệu, không trong đầu một người. Ai biết Kubernetes đều tiếp quản được → dễ tuyển, dễ thuê.

03 · AN TOÀN DỮ LIỆU

Sao lưu đã diễn tập

Sao lưu liên tục, để kho độc lập, và diễn tập khôi phục thật trước khi đụng dữ liệu. Bảo vệ thứ quý nhất: dữ liệu cư dân.

04 · MỞ KHÓA DOANH THU

Bán được & mở rộng được

Chuẩn hóa cho phép bán bản tự-host cho khách lớnmở rộng theo số khách mà không đập đi xây lại.

Cái lõi không phải "dùng Kubernetes". Lõi là ba thứ kinh doanh cần: không mất dữ liệu, không để khách sập lâu, và bán / mở rộng được. Kubernetes chỉ là công cụ rẻ và chuẩn nhất để đạt được.

3 · Chất lượng khi chuyển

Cách làm an toàn

Chuyển từng viên gạch khi người vẫn ở trong nhà — không đập đi xây lại.

Ba bước

  • Hệ cũ vẫn là bản chính — Docker hiện tại tiếp tục phục vụ khách cho tới khi hệ mới chứng minh ổn. Khách không bao giờ phải chờ.
  • Chuyển dần & thử trước — chuyển từng dịch vụ một, cho một phần nhỏ khách dùng thử (5% → 50% → 100%) trước khi mở rộng.
  • Lùi được tức thì — thấy lỗi là quay về hệ cũ < 5 phút. Hệ cũ không bị xóa cho tới khi hệ mới chạy ổn định nhiều ngày.

Ba nguyên tắc

  • Sao lưu phải được diễn tập khôi phục thật trước — chưa xong, chưa đụng vào dữ liệu.
  • Hệ cũ là nguồn chuẩn tới khi cutover xong — khách không bao giờ phải chờ.
  • Mọi bước đều lùi được < 5 phút — qua điều phối lưu lượng hoặc hoàn tác cấu hình.

4 · Lộ trình

4 tháng · 6 giai đoạn

Lên prod trong ~4 tuần. Ba tháng còn lại để vận hành thật, căn chỉnh và bàn giao.

Thời gianGiai đoạn
1/6 – 14/6GĐ1 · Khảo sát & hợp đồng — nghiên cứu hệ hiện tại, chốt cấu hình + giá, đàm phán CMC, bật backup an toàn ngay tuần đầu.
★ 14/6Mốc: Sao lưu khôi phục thành công — cửa ải bắt buộc trước khi đụng dữ liệu.
8/6 – 28/6GĐ2 · Khung hạ tầng & backup/restore — dựng cluster, lưu trữ, GitOps, giám sát lõi; thiết kế không khóa nhà cung cấp.
★ 28/6GĐ3 · Ứng dụng QLTN chạy production — đồng bộ dữ liệu an toàn, deploy, cutover có kiểm soát.
29/6 – 26/7GĐ4 · Vận hành prod & giám sát đầy đủ — log tập trung, dashboard, cảnh báo, runbook; tắt dần hệ cũ.
27/7 – 23/8GĐ5 · Hypercare & căn chỉnh — theo dõi sát, right-size cấu hình. Thoát khi: ổn định, không sự cố nghiêm trọng.
24/8 – 30/9GĐ6 · Tối ưu, diễn tập chuyển đổi & bàn giao — tối ưu chi phí, diễn tập chuyển môi trường độc lập, báo cáo + lộ trình.

Mốc 28/6 với điều kiện hợp đồng CMC hoàn tất trước 14/6. Track song song: chuyển dev/sandbox lên K8s trên server hiện có — không ảnh hưởng cam kết prod.

5 · Tình huống sự cố

Đã chuẩn bị gì

Ba tầng phòng thủ — tự động, phát hiện sớm, con người + quy trình.

TầngTênChi tiết
1 · Tự độngTự phục hồiPhần lớn sự cố nhỏ (một service chết) → hệ tự khởi động lại, có chỗ dự phòng gánh thay, không cần người.
2 · Phát hiện sớmGiám sát + cảnh báoLog tập trung + dashboard; bất thường bắn cảnh báo về Telegram ngay — biết trước khi khách kêu.
3 · Con ngườiQuy trình + đường luiPhân loại sự cố rõ + sổ tay xử lý (runbook) + nút lùi < 5 phút + leo thang sang CMC khi cần.

Phân loại sự cố

MứcNghĩa (ngôn ngữ kinh doanh)Ví dụ trong hệ nàyCam kết phản hồi *
P1 · Nghiêm trọngKhách không dùng được hệ thống, hoặc nguy cơ mất dữ liệuCả cụm sập · CSDL chính chết · mất lối vào hệ thốngVào việc ngay ≤ 30', ưu tiên tuyệt đối
P2 · CaoHệ vẫn chạy nhưng một chức năng quan trọng hỏng / chậm bất thườngKhông gửi được thông báo đẩy · một dịch vụ yếu · phản hồi chậmPhản hồi trong vài giờ làm việc
P3 · ThấpLỗi nhỏ, có cách né, không ảnh hưởng vận hànhLỗi hiển thị · cảnh báo log · một tác vụ nền chạy trễĐưa vào kế hoạch xử lý

* Con số phản hồi là đề xuất nội bộ. SLA chính thức với khách phụ thuộc nền tảng CMC cam kết + năng lực trực của mình. · Khôi phục dữ liệu: sao lưu liên tục (về đúng thời điểm) + đã diễn tập, thời gian tính bằng phút–giờ, đo chính xác ở mốc 14/6.

6 · Phụ thuộc CMC

Hai tầng cam kết

CMC giữ hạ tầng sống. Mình giữ ứng dụng chạy. Đừng lẫn hai thứ.

CMC cam kết với mình — SLA HẠ TẦNG · 24/7/365 (theo báo giá)

  • Giữ phần cứng, máy ảo, mạng, control plane sống — thay phần cứng hỏng.
  • Cấp tài nguyên + giải đáp kỹ thuật khi mình hỏi.
  • KHÔNG theo dõi / xử lý sự cố ứng dụng của mình ("chỉ dựng, không check sự cố").
  • KHÔNG migrate, deploy, tối ưu hay vận hành workload.
  • Cấu hình chuyên sâu = dịch vụ tính phí thêm.

Mình cam kết với khách — SLA DỊCH VỤ · dựng TRÊN nền CMC

  • Giám sát + cảnh báo + cứu sự cố ứng dụng (P1/P2/P3).
  • Backup đã diễn tập + đường lui < 5 phút.
  • Vận hành, căn chỉnh, runbook, báo cáo.
  • Chỉ cam kết được cao tới mức nền CMC cho phép + năng lực trực của mình.
Việc cần làm ngay: lấy văn bản scope hỗ trợ + SLA của CMC (uptime? kênh báo? thời gian phản hồi P1/P2? phần ai lo?) → từ đó mới chốt được SLA mình hứa với khách. Đang chờ CMC (hotline 1900 2020).

7 · Yêu cầu tương lai

Đã chuẩn bị gì

Thiết kế cho cái sắp tới, không chỉ cái hôm nay.

Chủ đềKhả năngChi tiết
Mở rộng theo kháchLớn lên không phải xây lạiLộ trình tăng quy mô online, không downtime: <5k → 10k → 30k+ user chỉ cần thêm máy / tăng cỡ, giữ nguyên kiến trúc.
Bán bản tự-hostKhách tự chạy trên server riêngĐóng gói chuẩn → giao trọn gói cho khách lớn / khắt khe bảo mật. Trước đây Docker thủ công khó làm; giờ làm được.
Không khóa nhà cung cấpChuyển được sang chỗ khácChuẩn K8s + cấu hình trong Git + sao lưu kho trung lập → tự vận hành hoặc đổi nhà cung cấp. Diễn tập thật ở GĐ6.
Onboard khách mớiKhông giới hạn số kháchCó pipeline dựng môi trường mới nhanh, lặp lại được — vượt mức CMC chỉ hỗ trợ 3 khách mới / năm.
Ngày nâng cấp lên độ sẵn sàng cao (HA) đã được tính trước trong thiết kế: từ 1 → 3 máy điều khiển, cơ sở dữ liệu 1 → 3 bản — không phải làm lại từ đầu.

8 · Ranh giới giá trị

Thuê CMC vs có người trong nhà

Thuê CMC = có tòa nhà + điện nước. Còn lại — chuyển nhà, bài trí, bảo vệ, mở chi nhánh — là việc của mình.

Đầu việcCMC (thuê ngoài)Mình (trong nhà)
Cấp hạ tầng: máy, control plane, mạng, lưu trữ✓ Có
Giữ phần cứng / hạ tầng sống 24/7✓ Có (SLA hạ tầng)
Di chuyển hệ thống: migrate, đồng bộ data, cutover an toàn✗ Không làm✓ Làm
Giám sát + cảnh báo + cứu sự cố ứng dụng "Chỉ dựng, không check sự cố"✓ Làm
Tối ưu / đặt đúng cỡ chi phí Báo giá mặc định bị thừa Cắt ~một nửa hóa đơn
GitOps + chống khóa nhà cung cấp + bàn giao tài liệu✗ Không✓ Làm
Onboard khách mới (mở rộng kinh doanh) Chỉ 3 khách / năm Không giới hạn
Backup diễn tập khôi phục, runbook, vận hành liên tục✗ Không✓ Làm
CMC dựng và giữ hạ tầng sống — họ không migrate, không cứu sự cố ứng dụng, không tối ưu chi phí, và chỉ hỗ trợ 3 khách mới/năm. Người trong nhà là phần biến hạ tầng đó thành dịch vụ chạy được, an toàn, rẻ và bán được.

9 · Chi phí

Tiền mình mang về mỗi tháng

Cùng nhà cung cấp CMC — nhưng đặt đúng cỡ → hóa đơn giảm khoảng một nửa.

CMC tự báo giá (sau VAT/tháng) — 3 bản nhận 01/2026

  • Cụm K8s HA đầy đủ ~44,7 triệu (8.100 GB ổ đĩa + 3 master + 2 worker)
  • VM pay-as-you-go ~39,9 triệu (5.000 GB SSD + 10.000 GB backup)
  • EC2 + Volume + S3 ~24,9 triệu (gói 6 tháng)

Đặt đúng cỡ — phần nền cố định: ~11,2 triệu/tháng

  • 3 master HA (4,4tr) · 1 TB lưu trữ (3,0tr) · 1 TB backup (1,1tr)
  • 2 ELB public/private (1,4tr) · bastion (0,8tr) · VPC & IP (0,55tr)
  • Dev/sandbox ở lại server đã trả tiền → không tốn thêm
Số dự án (tòa nhà)Cư dân dùng appTổng/tháng (sau VAT)Chi phí / cư dân / tháng
1012.000~17,1 triệu~1.420đ
3036.000~23,3 triệu~650đ
5060.000~29,5 triệu~490đ
100120.000~47 triệu~390đ
Càng đông cư dân, chi phí trên mỗi cư dân rẻ đi gần 4 lần nhờ dùng chung phần nền. Bằng chứng đặt đúng cỡ: riêng dòng ổ đĩa CMC báo 8.100 GB ≈ 16,4 triệu/tháng — dữ liệu đo thật < 5 GB, đúng cỡ chỉ cần 1 TB → tiết kiệm hơn 12 triệu/tháng từ một dòng.

Lưu ý trung thực: ở tầng hạ tầng thô, Kubernetes không rẻ hơn Docker-một-máy. Cái rẻ hơn là TỔNG chi phí (gồm công người vận hành + tổn thất khi sự cố) và việc đặt đúng cỡ.

10 · Cam kết

Kiểm chứng được, không phải lời hứa suông

Năm mốc kiểm chứng được — mỗi mốc báo cáo, mỗi bước lùi được.

Cam kết

  • An toàn dữ liệu — không đụng dữ liệu trước khi sao lưu diễn tập khôi phục thành công (mốc 14/6).
  • Liên tục — không gián đoạn; hệ cũ chạy tới khi hệ mới ổn; mọi bước lùi < 5 phút.
  • Tiến độ — prod 28/6, với điều kiện hợp đồng CMC xong trước 14/6. Trễ CMC → dời mốc, không mất an toàn.
  • Bàn giao — cuối kỳ: runbook vận hành + báo cáo tổng kết + lộ trình tiếp theo (30/9).

Các mốc

NgàyMốc
14/6Sao lưu khôi phục thành công
★ 28/6Ứng dụng chạy production
26/7Giám sát hoàn chỉnh
23/8Hệ thống ổn định (hết hypercare)
30/9Bàn giao báo cáo & lộ trình

Tóm lại

Biến một điểm yếu chí mạng
thành một nền tảng an toàn & bán được

Từ một máy, không backup, một người → một hệ thống tự phục hồi, có giám sát, sao lưu đã diễn tập, không khóa nhà cung cấp — trong 4 tháng, khách không gián đoạn, và hóa đơn hạ tầng giảm khoảng một nửa so với báo giá mặc định.

3 tầngphòng thủ sự cố + P1/P2/P3 + lùi < 5'
Tương laimở rộng · tự-host · không lock-in