Live data from Hacker News

Automating Development Environments with Vagrant and Puppet

blog.kloudless.com

21–30 of 36 posts

Re: Automating Development Environments with Vagrant and Puppet

#21
The limitation with this type of approach is the assumption of a conventional (and, some would say, out of date) architecture, ie. single service on a single VM on a single cloud provider.

Topology specification, firewalling, resource constraints (bandwidth, IO speed/resilience... ie. RAID/backup persistence safety), service cohabitation or codependence, performance/capacity testing, cost, cloud provider abstraction, public DNS+SSL+sofware package distribution infrastructure dependencies, legal jurisdiction considerations, speed of instantiation, etc. are all realistic considerations (often requirements) for much modern infrastructure.

In short: this only gets you half-way, for relatively simple examples. But if your workload is within that space, by all means go for it.

(PS. Before anyone snaps 'you can manage multiple hosts with ', sure. But the architecture of the tools begins to present issues.)

Re: Automating Development Environments with Vagrant and Puppet

#22

The limitation with this type of approach is the assumption of a conventional (and, some would say, out of date) architecture, ie. single service on a single VM on a single cloud provider. Topology specification, firewalling, resource constraints (bandwidth, IO speed/resilience... ie. RAID/backup persistence safety), service cohabitation or codependence, performance/capacity testing, cost, cloud provider abstraction,…

I'm not clear what your laundry list of things has to do with application development on a local developer's machine (the problem Vagrant is trying to solve). Is there some new way of development where developers never run on localhost and all those complex considerations are handled for them? It sounds like you're describing a full production or integration environment which is most definitely not the primary use case for Vagrant.

Re: Automating Development Environments with Vagrant and Puppet

#24

The limitation with this type of approach is the assumption of a conventional (and, some would say, out of date) architecture, ie. single service on a single VM on a single cloud provider. Topology specification, firewalling, resource constraints (bandwidth, IO speed/resilience... ie. RAID/backup persistence safety), service cohabitation or codependence, performance/capacity testing, cost, cloud provider abstraction,…

> ie. single service on a single VM on a single cloud provider.

Vagrant allows you to specify groups of VMs that spin up together.

Your general point that it doesn't simulate production perfectly is correct. But this is one case where the perfect is the enemy of the good.

Re: Automating Development Environments with Vagrant and Puppet

#25

The author should really check out saltstack (with or without vagrant).

I have checked out saltstack (not in too much detail, since I have been busy with puppet). But I wasn't sure if there was an equivalent to exported resources in saltstack (I want to use them for automated monitoring and orchestrating of other services), since that is a pretty useful thing and I was somewhat skeptical about having everything defined in YAML, since there are somethings that I think one wouldn't be able to do... but I have been meaning to look into it!

Re: Automating Development Environments with Vagrant and Puppet

#26

Earlier quoted context omitted.

Thanks! I just got started with Vagrant and figured I should share my experience!

Thanks analogAndroid - I'm just getting started with Puppet and Vagrant too. Great article, hoping to learn more from you!

You are welcome! Let me know if there are any things that you would be particularly interested in hearing about!

Re: Automating Development Environments with Vagrant and Puppet

#27

If you're interested in getting up and running with a full development environment, I created a minimal LAMP stack utilizing the deliciousness of Vagrant and Chef. It's available on GitHub https://github.com/MiniCodeMonkey/Vagrant-LAMP-Stack There has been a lot of discussions about which provisioner to use, but at the end of the day they all achieve the same goal. I would personally just use one that you feel comfor…

How timely - I happen to be reading this while waiting for my environment to finish setting up :-)

Thank you for your work!

(Any chance it might work with Vagrant v2 soon?)

Re: Automating Development Environments with Vagrant and Puppet

#28
I myself am also a big fan of vagrant although it can be tough on your machine when working on multiple projects at the same time. Often times I find myself running out of memory and it can be quite tedious having to halt and bring back my vagrant boxes when I jump from project to project. Perhaps docker can address this issue someday?

Re: Automating Development Environments with Vagrant and Puppet

#29
post #28

I myself am also a big fan of vagrant although it can be tough on your machine when working on multiple projects at the same time. Often times I find myself running out of memory and it can be quite tedious having to halt and bring back my vagrant boxes when I jump from project to project. Perhaps docker can address this issue someday?

use vagrant suspend to store the vm in the current state. resume is pretty much instant.
Post reply on HN