TANTRAN.DEV 19/10/2026

Những lý do thực tế của tui để dùng máy ảo (virtual machine-vm)

Ba lý do một lập trình viên vẫn cần máy ảo dù đã có Docker hay cloud: thử hệ điều hành lạ, dựng môi trường tách biệt để nghịch, và mô phỏng cả một data center thu nhỏ.

Trải nghiệm hệ điều hành mới

Là một lập trình viên nếu không biết nhiều hệ điều hành thì có thể nói mất 1/4 cuộc đời. Cho dù xã hội chỉ nói đến windows, linux và macos nhưng ngay cả windows cũng có rất nhiều this that và tụi nó cũng không giống nhau hoàn toàn đâu. Nên phải thử cho biết vì ở ngoài vẫn còn nhiều công ty lớn đang xài các hệ điều hành cũ hơn cái pc bạn đang xài ở nhà hay ở văn phòng

Ngoài ra có những phần mềm, game cũ mà sẽ không chạy với hệ điều hành mới cho nên phương án dùng trên máy ảo để dùng là phương án tối ưu hơn cài lại cái máy của mình rồi sau phải restore. Ngày trước tôi vẫn còn dùng DOS để chơi các game hồi nhỏ như dune, xcom… cho cảm thấy trẻ lại chút.

Cũng tương đương vậy, bạn vẫn đang vui vẻ với máy windows và các game của mình nhưng bị sếp giao phải code trên linux thì cứ máy ảo thẳng tiến chứ hông lẽ nghỉ cày game.

Môi trường tách biệt cho thử nghiệm

Máy ảo có thể backup và restore trong 1 nốt nhạc. Để hình dung ngày xưa thời windows 98, ME… tôi cùng các bạn trong đại học hay dùng ghost để backup và restore mỗi khi hệ điều hành bị lỗi mất khoảng 1-2 tiếng là bình thường và thời gian của chúng tôi rất dư dả. Còn bây giờ backup và restore các snapshot của máy ảo chỉ mất vài phút và giúp những trung niên chúng tôi có thời gian nhiều hơn cho việc khác

Cũng có thời gian tôi rất có hứng thú với các thể loại virus và worm khi có máy ảo cung cấp một môi trường cho chúng phát triển và theo dõi hành vi cũng như dịch ngược coi mã nguồn an toàn giúp tôi tiết kiệm nhiều thời gian hơn cái ngày phải rút dây mạng ra, cắm usb virus vào và xác định làm xong sẽ restore lại máy bằng ghost

Biết cách thế giới mạng, internet và các máy chủ hoạt động

Ngày xưa phòng trọ mỗi đứa ôm 1 máy với cái màn hình crt to đùng và khi làm ứng dụng liên quan tới mạng thì chạy qua chạy lại để test. Bây giờ với máy ảo, tôi dễ dàng thiết lập nhiều máy chủ, máy trạm tùy thích, đưa chúng vào các subnet theo topology mong muốn để giải lập các môi trường phức tạp và chỉ ngồi 1 chỗ điều khiển cả một data center mini.

Có thể tạo ra 1 máy mới bằng cách clone trong vài phút cùng với tính năng snapshot trong VM tôi có thể thử sai các cấu hình thoải mái và theo dõi hoạt động của chúng để nắm bắt được kỹ thuật. Không chỉ là thiết lập dịch vụ mà còn là quản trị bảo mật, tường lửa… và nếu làm gì sai không rollback được thì chỉ mất vài phút để restore lại như cũ

Kết luận

Không thể sống thiếu máy ảo đâu cho dù bây giờ còn những thứ như saas, docker, kubernetes… và nhiều thứ khác nữa sẽ đẻ ra nữa vì nó là nền tảng của nền tảng. Không biết thật ra cũng không sao nhưng khi bạn gặp vấn đề trong sự nghiệp lập trình bạn sẽ khó khăn hơn để giải quyết chúng

Và bài này cũng trình bày lý do tại sao desktop của tui có 12 core-24thread-64gb ram hay laptop của tui thì 8core-16thread-32gb ram (hao lắm luôn). Dĩ nhiên tôi vẫn đang dùng các máy 4 hay 8gb ram nha.