Xây dựng hạ tầng Cloud Lab giá 0 đồng với Open-WebUI và Workspace-Web trên cụm VPS ARM Oracle Free Tier
Giới thiệu: Xu hướng tối ưu hóa chi phí hạ tầng Lab trong kỷ nguyên số
Trong bối cảnh công nghệ thay đổi nhanh chóng, việc sở hữu một môi trường thử nghiệm (Cloud Lab) cá nhân mạnh mẽ là điều vô cùng cần thiết đối với các kỹ sư phần mềm, chuyên gia dữ liệu và nhà nghiên cứu AI. Tuy nhiên, chi phí thuê hạ tầng từ các nhà cung cấp đám mây lớn thường không hề nhỏ nếu duy trì liên tục. Bài viết này sẽ hướng dẫn bạn cách xây dựng một hệ thống Cloud Lab hoàn chỉnh với chi phí 0 đồng, tận dụng tối đa sức mạnh của cụm VPS ARM thuộc chương trình Oracle Cloud Free Tier, kết hợp cùng hai công cụ mã nguồn mở mạnh mẽ là Open-WebUI và Workspace-Web.
1. Tổng quan về các thành phần trong giải pháp
Để xây dựng một giải pháp tối ưu mà không tốn chi phí, chúng ta cần kết hợp khéo léo giữa nền tảng phần cứng miễn phí và các giải pháp phần mềm mã nguồn mở linh hoạt:
- Oracle Cloud Always Free Tier (ARM Ampere): Oracle cung cấp cấu hình cực kỳ hào phóng cho tài khoản miễn phí, lên tới 4 Cores CPU và 24 GB RAM Ampere A1 Compute. Đây là cấu hình lý tưởng, vượt trội hơn hẳn các nhà cung cấp khác, đủ sức vận hành nhiều container và mô hình AI nhỏ.
- Open-WebUI: Giao diện người dùng web thân thiện, giàu tính năng, ban đầu được thiết kế cho Ollama nhưng hiện tại đã hỗ trợ kết nối đa dạng với các API của LLM (Large Language Models), giúp bạn quản lý và tương tác với các mô hình trí tuệ nhân tạo một cách trực quan.
- Workspace-Web (Kasm Workspaces / Webtop): Môi trường làm việc máy tính ảo (Desktop-as-a-Service) chạy trực tiếp trên trình duyệt web thông qua Docker, cung cấp đầy đủ các công cụ lập trình, terminal và trình duyệt phụ trợ giúp bạn làm việc từ xa mọi lúc mọi nơi.
2. Chuẩn bị hạ tầng trên Oracle Cloud Free Tier
Trước khi bắt đầu cài đặt phần mềm, bạn cần thiết lập một thực thể (Instance) tính toán trên bảng điều khiển của Oracle Cloud:
Bước 2.1: Khởi tạo Instance ARM
Khi tạo mới một Compute Instance, hãy lưu ý chọn hệ điều hành Ubuntu 22.04 LTS hoặc Oracle Linux 8 để đảm bảo tính tương thích cao nhất với Docker. Tại phần cấu hình phần cứng (Shape), hãy chọn VM.Standard.A1.Flex với cấu hình tối đa được phép (4 OCPUs và 24 GB RAM). Đừng quên tải về và lưu trữ an toàn cặp khóa SSH (Private Key) để truy cập vào VPS.
Bước 2.2: Cấu hình Virtual Cloud Network (VCN)
Để có thể truy cập vào Open-WebUI và Workspace-Web từ môi trường Internet bên ngoài, bạn cần mở các cổng (ports) tương ứng trong phần Ingress Rules của Subnet:
- Mở cổng
22cho kết nối SSH bảo mật. - Mở cổng
80và443nếu bạn có ý định cấu hình Reverse Proxy (Nginx/Nginx Proxy Manager) kèm chứng chỉ SSL. - Mở các cổng tùy chỉnh như
3000(mặc định của Open-WebUI) và8443(mặc định của Workspace-Web) nếu muốn truy cập trực tiếp bằng IP công cộng.
Lưu ý quan trọng: Hệ điều hành Ubuntu trên Oracle Cloud mặc định có cấu hình tường lửa nội bộ (iptables). Bạn cần chạy các lệnh xóa bỏ hoặc bổ sung quy tắc tường lửa trên VPS để các cổng trên thực sự được mở công khai.
3. Triển khai Docker và Docker Compose trên kiến trúc ARM
Do kiến trúc chip ARM64 có một vài khác biệt so với x86_64 truyền thống, chúng ta cần đảm bảo cài đặt các phiên bản Docker hỗ trợ chính thức cho ARM.
Hãy kết nối SSH vào VPS và thực hiện chuỗi lệnh cập nhật hệ thống, sau đó cài đặt Docker Engine và Docker Compose Plugin thông qua kho lưu trữ chính thức của Docker. Việc sử dụng Docker Compose sẽ giúp quản lý, khởi chạy đồng thời cả Open-WebUI và Workspace-Web một cách hệ thống và dễ dàng bảo trì sau này.
4. Cấu hình và khởi chạy các dịch vụ cốt lõi
Chúng ta sẽ tạo một tệp cấu hình docker-compose.yml duy nhất để quản lý toàn bộ hệ thống Cloud Lab này.
4.1. Thiết lập Open-WebUI phục vụ nghiên cứu AI
Open-WebUI đóng vai trò là trạm điều khiển trung tâm cho các tác vụ xử lý ngôn ngữ tự nhiên. Nếu bạn muốn chạy các mô hình AI trực tiếp trên CPU ARM (như Llama 3 hoặc Mistral phiên bản quantized), bạn có thể tích hợp thêm container Ollama trong cùng một mạng Docker mạng nội bộ. Việc chia sẻ chung một tệp cấu hình giúp Open-WebUI tự động nhận diện và kết nối tới Ollama một cách mượt mà không cần cấu hình IP phức tạp.
4.2. Thiết lập Workspace-Web cho môi trường phát triển (Dev Environment)
Để có một không gian làm việc Linux hoàn chỉnh ngay trên trình duyệt, các hình ảnh mã nguồn mở như linuxserver/webtop hoặc các image của Kasm Workspaces build cho ARM64 là lựa chọn hoàn hảo. Bạn có thể chọn phiên bản tích hợp sẵn VS Code (Visual Studio Code), các công cụ dòng lệnh Git, Python, Docker-in-Docker để biến trình duyệt thành một cỗ máy lập trình thực thụ.
4.3. Ví dụ về cấu hình Docker Compose mẫu
Dưới đây là cấu trúc cơ bản của tệp cấu hình mà bạn có thể tham khảo:
version: '3.8'
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
ports:
- "3000:8080"
volumes:
- open-webui-data:/app/backend/data
restart: always
workspace-web:
image: lscr.io/linuxserver/webtop:ubuntu-xfce
container_name: workspace-web
ports:
- "8443:3000"
volumes:
- workspace-data:/config
restart: always
volumes:
open-webui-data:
workspace-data:
5. Tối ưu hóa hiệu năng và bảo mật hệ thống
Hạ tầng 0 đồng không có nghĩa là chúng ta bỏ qua yếu tố an toàn và hiệu năng. Để hệ thống hoạt động ổn định lâu dài, hãy áp dụng các nguyên tắc sau:
- Sử dụng Reverse Proxy và SSL: Hãy cài đặt thêm Nginx Proxy Manager hoặc Caddy. Việc này giúp bạn gán tên miền (domain) miễn phí (từ DuckDNS, Cloudflare) vào các dịch vụ, đồng thời mã hóa toàn bộ dữ liệu truyền tải qua HTTPS bằng chứng chỉ mã hóa tự động Let's Encrypt.
- Quản lý tài nguyên RAM hiệu quả: Mặc dù có 24 GB RAM, nhưng việc chạy các mô hình ngôn ngữ lớn (LLM) trên CPU có thể gây nghẽn mạch hệ thống. Hãy thiết lập phân vùng Swap space khoảng 4GB đến 8GB trên ổ cứng SSD NVMe của Oracle để dự phòng khi hệ thống bị quá tải RAM đột ngột.
- Bảo mật xác thực: Kích hoạt tính năng đăng ký tài khoản có kiểm soát trên Open-WebUI, đặt mật khẩu phức tạp cho Workspace-Web và cân nhắc thiết lập một lớp bảo mật VPN bổ sung như Tailscale hoặc Cloudflare Tunnels để ẩn hoàn toàn các cổng dịch vụ khỏi môi trường Internet công cộng.
Kết luận
Chỉ với một chút thời gian cấu hình, sự kết hợp giữa Oracle Free Tier ARM, Open-WebUI và Workspace-Web đã tạo nên một hệ sinh thái Cloud Lab vô cùng mạnh mẽ, linh hoạt và hoàn toàn miễn phí. Giải pháp này không chỉ giúp bạn làm chủ các công nghệ container, ảo hóa môi trường làm việc từ xa, mà còn mang lại không gian lý tưởng để thử nghiệm các ứng dụng AI tiên tiến nhất hiện nay mà không phải lo lắng về hóa đơn hàng tháng. Hãy bắt tay vào xây dựng phòng thí nghiệm đám mây của riêng bạn ngay hôm nay!
