Tôi đã từ bỏ sử dụng Vagrant
Vagrant
15
devops
11
White

Cẩm Huỳnh viết ngày 01/07/2015

Tôi cũng từ bỏ giấc mơ vagrant-up môi trường development hiện tại của tôi.

Nếu bạn chưa rõ Vagrant là gì, thì nó là một cái tool để giúp bạn có thể set up một môi trường làm việc portable và reproducible. Selling-point của Vagrant là: Với Vagrant, bạn sẽ không còn phải bận tâm về những câu hỏi muôn thuở như là "Này! Nó chạy trên máy tôi nhé!", "Postgres máy cậu phiên bản 9.2 không hỗ trợ jsonb đâu!". Dùng Vagrant đồng nghĩa với việc development environment của mọi người trong team đều chung một hệ điều hành, cùng một gói package, chạy trên một phiên bản. Nghe thật hấp dẫn và đầy hứa hẹn!

Nhưng xin lỗi, tôi đã thử, nó không tốt như chúng ta nghĩ và thật sự nó không phù hợp với tôi!

Set up Vagrant rất khó...

Với Vagrant, chạy một cái box quả thật là dễ một cách không tưởng, chỉ với một lệnh vagrant up. Tuy nhiên sẽ là cả một quá trình nếu bạn muốn cấu hình cái box đó đi theo nhu cầu của bạn.

Mặc dù Vagrant luôn được cho rằng là hết sức thân thiện với các provision tools như Chef, Puppet hay Ansible. Nhưng vấn đề nằm ở chỗ Devops là một phạm trù không mấy thân thiện với những developer thuần như tôi và bạn. Tôi đơn cử như Postgres, nếu trên Mac bạn chỉ cần download Postgresapp và chạy thì giờ đây, với một cái Ubuntu Vagrant box, bạn sẽ phải ngập mình trong StackOverflow để tìm kiếm những repositories và packages tương ứng.

... Nhưng có set up xong thì cũng chả biết dùng thế nào.

Trầy trật cả tuần với Ansible thì cuối cùng tôi cũng set up xong một cái box cũng khá tươm tất với đầy đủ đồ chơi. Tuy nhiên ngay trong giây phút đầu tiên bật editor lên, niềm hứng khởi của tôi chợt dập tắt bởi những câu hỏi: Làm sao chạy RSpec? Phải config Guard như thế nào? Không có Chrome sao có webkit để chạy Capybara acceptance test?

Tất nhiên là sẽ có cách workaround, nhưng bạn đã đánh đổi những vũ khí tốt nhất của bạn, vì một lý tưởng đẹp đẽ có tên gọi là development environments consistency.

Nhưng liệu nó ... có thật sự cần thiết?

Vâng, trên lý thuyết bạn cần và sẽ là tuyệt vời nếu làm được điều đó. Nhưng trên thực tế, theo kinh nghiệm làm việc và suy nghĩ nông cạn của tôi, conflict rất hiếm và đôi khi xảy ra với những phần mềm chạy trên nền JVM như Elastic Search. Nếu hy sinh và thay đổi cái set-up đang hoạt động ngon lành chỉ vì những corner cases đó, cá nhân tôi cảm thấy không đáng. Và hơn thế nữa với những conflict ấy, ta luôn có những cách fix hay hơn là gom nguyên cái app vứt vào Vagrant.

Kết luận

Tôi đã dùng và sẽ không dùng Vagrant. Nhưng tôi sẽ thật lòng chúc mừng nếu bạn đã áp dụng thành công Vagrant vào công việc, đồng thời sẽ là thật tuyệt nếu bạn có thể chia sẻ những điều tâm đắc trong quá trình làm việc với nó.

Happy Vagrantup!

vagrant #sucks

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Cẩm Huỳnh

40 bài viết.
342 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
39 9
(Ảnh) Vì sao lại là Bật Đèn? Ai từng đọc qua Tắt Đèn hẳn đã biết tác phẩm được kết thúc bằng tình huống: Buông tay, chị vội choàng dậy, mở cửa...
Cẩm Huỳnh viết 1 năm trước
39 9
White
37 6
Làm thế nào để chỉ với một đoạn text vài trăm ký tự, bạn có thể làm ngốn vài gigabyte bộ nhớ và từ chối dịch vụ của một hệ thống dùng XML? _____ ...
Cẩm Huỳnh viết 4 tháng trước
37 6
White
34 25
Vừa rồi mình vừa tiết kiệm được $5 mỗi tháng sau khi migrate cái (Link) từ Digital Ocean sang Heroku Free Dyno. (Ảnh) Kết quả thật mĩ mãn vì hầu ...
Cẩm Huỳnh viết 12 tháng trước
34 25
Bài viết liên quan
Male avatar
0 0
Tình cờ buổi sáng bạn tới công ty, đang trong tâm trạng hí hửng để code tiếp chức năng hôm trước code dang dở, đang hí hửng gọi thằng em dậy “vagr...
skul169 viết gần 2 năm trước
0 0
Male avatar
0 2
Khi khởi động vagrant bạn đã từng gặp phải lỗi Authentication failure. Retrying… default: SSH address: 127.0.0.1:2222 default: SSH username: t...
skul169 viết gần 2 năm trước
0 2
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
40 bài viết.
342 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!