Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Container

    Containers


    Containers đã thay đổi hoàn toàn cách chúng ta nghĩ về triển khai ứng dụng và tự động hóa hạ tầng (automation infrastructure). Điểm khác biệt cốt lõi giữa containervirtual machine (VM) nằm ở kiến trúc. Với VM, mỗi workload phải mang theo cả một hệ điều hành riêng (guest OS), chạy trên hypervisor để tạo ra sự tách biệt isolation. Điều này tạo ra chi phí overhead đáng kể về CPU, RAM, storage và thời gian khởi động (boot time). Ngược lại, container không cần hệ điều hành guest OS riêng. Chúng chia sẻ trực tiếp kernel của host operating system thông qua container runtime như Docker, Podman hoặc containerd. Isolation vẫn tồn tại, nhưng được thực hiện bằng Linux namespaces, cgroups và kernel primitives thay vì full hardware virtualization. Điều này giải thích vì sao container “nhẹ” hơn VM rất nhiều. Một VM có thể mất vài phút để khởi động, còn container thường chỉ mất vài giây hoặc nhanh hơn. Với dân DevOps, đây là khác biệt mang tính thay đổi cuộc chơi - game-changer.
    Giá trị lớn nhất của container không chỉ là gọn/nhẹ lightweight, mà còn là khả năng portability (chổ này chưa nghĩ ra từ tiếng Việt đủ hay!!!). Bạn có thể đóng gói toàn bộ runtime environment của ứng dụng — application code, Python libraries, Ansible modules, Terraform binaries, Go dependencies, system packages — vào một image duy nhất. Kết quả là bài toán “works on my machine” gần như biến mất. Ví dụ cụ thể như tình huống dưới đây:
    • Python automation script chạy ổn trên laptop
    • Chúng ta sẽ Build thành Docker image
    • Sau đó Deploy lên Ubuntu server
    • Chạy trên Kubernetes
    • Move sang AWS ECS / Azure Container Apps / Google Cloud Run
    Môi trường runtime giúp chạy app gần như giữ nguyên. Container thực tế phục vụ hai thế giới cùng lúc. Thế giới thứ nhất là developer tooling. Dev có thể dựng môi trường reproducible cực nhanh mà không phá hệ điều hành local. Cần tối thiểu Python 3.11 + specific SDK + automation libraries? Build container là xong. Thế giới thứ hai là cloud-native execution. Các platform như AWS Lambda (container support), Azure DevOps build agents, OpenFaaS, Google Cloud Run, Kubernetes.... đều dựa mạnh vào container model. Nếu VM là “mỗi ứng dụng trên một server”, thì container là “mỗi ứng dụng một package runtime”. Đó là lý do container trở thành nền móng của modern DevOps, CI/CD và cloud-native automation (và cả AI trong kỷ nguyên AI đang đến).​
    Attached Files
    Đặng Quang Minh, CCIE#11897 (Enterprise Infrastructure, Wireless, Automation, AI), CCSI#31417

    Email : dangquangminh@vnpro.org
    https://www.facebook.com/groups/vietprofessional/
Working...
X