Virtual machine scramble time

Discussion in 'Java' started by Tom Anderson, Jul 10, 2009.

  1. Tom Anderson

    Tom Anderson Guest

    Hi,

    This is not about java, but if we define "java programming" as "things
    that java programmers do", then it's about java programming.

    I've been doing an increasing amount of work (at a distance - i'm not the
    VM Guy) with virtual-machine based systems. Virtual developer boxes
    accessed from dumb-ish desktops, virtual server farms for test and
    acceptance environments, that sort of thing.

    One thing that's struck me is that we don't make much use of the ability
    VMs give you to have disposable, single-use machines. I would like to do
    this more, for things like nightly builds, or when rebuilding acceptance,
    or even just giving developers a fresh machine every week or day or
    something.

    So, assume that you have a template or a non-running cloneable image, with
    everything you need installed, so you just need to get a fresh machine
    based on that template/image booted and happy. How long, in people's
    experience, does it take to do that, to go from a standing start to a
    fully operational virtual machine that you can start work on?

    How much manual work is required? How hard would it be to script or work
    around?

    How do various VM systems compare in this respect?

    Thanks,
    tom

    --
    Sometimes it takes a madman like Iggy Pop before you can SEE the logic
    really working.
    Tom Anderson, Jul 10, 2009
    #1
    1. Advertising

  2. Tom Anderson

    Guest

    On Jul 10, 11:43 am, Tom Anderson <> wrote:
    ....
    > I've been doing an increasing amount of work (at a distance - i'm not the
    > VM Guy) with virtual-machine based systems. Virtual developer boxes
    > accessed from dumb-ish desktops, virtual server farms for test and
    > acceptance environments, that sort of thing.


    I setup this kind of thing myself for a few developers.


    > So, assume that you have a template or a non-running cloneable image, with
    > everything you need installed, so you just need to get a fresh machine
    > based on that template/image booted and happy. How long, in people's
    > experience, does it take to do that, to go from a standing start to a
    > fully operational virtual machine that you can start work on?


    If you don't already have a copy then it's the time that the copy
    takes + the time for the OS (and apps) to boot.

    Say to copy a 3.2 GB *compressed* VMWare VM:

    ....# time cp /public/xpwareXPSP3/* .

    real 2m18.078s

    It depends where you're image is, its size, the
    speed of the network/harddisk, etc.

    Then the time to boot Windows, start IntelliJ IDEA and, say,
    checkout from the VCS.


    > How much manual work is required? How hard would it be to script or work
    > around?


    Really not much work: it's just about copying the images and starting
    them.

    Scripts can be made to pre-fetch images, so it really comes down to
    the
    time it takes booting the VMs.

    It depends on your Script-fu :)


    > How do various VM systems compare in this respect?


    Copying an image shall take basically the same time no matter
    if it's, say, a VMWare, a Xen or a KVM image.

    With so many choices out there it's hard to say what is best.

    We use both Xen (for virtualizing the servers) and VMWare
    (for virtualizing the desktops), for I set that up years ago
    (2 years or so) and haven't looked back since.

    If I was to setup all this today I'd probably use KVM
    and/or Sun's VirtualBox (which looks really nice, supporting
    VMWare image, working on OS X, etc. but we don't know what
    Oracle's going to do with VirtualBox).

    Do you want to go proprietary or not?

    Do you want para-virtualization or hardware-virtualization?

    Do you want "seamless" integration of the virtualized
    system's windows with your destkop?

    Do you need to be able to easily mount your image and
    mess with the files inside (for example to run tripwire
    files security checks)?

    Do you need video hardware acceleration?

    http://en.wikipedia.org/wiki/Comparison_of_platform_virtual_machines


    PS: As a Java developer, in addition to "disposable" virtualization
    my "tricks of the trade" involve using several "disposable" user
    accounts on my main workstation :)

    PPS: If only OS X's licence allowed it to be virtualized... But, no,
    we have
    to deal with a Mac Mini running 10.4, another 10.5 soon another
    running
    Snow Leopard, etc. :((((
    , Jul 10, 2009
    #2
    1. Advertising

  3. In article <>,
    Tom Anderson <> wrote:

    > This is not about java, but if we define "java programming" as
    > "things that java programmers do", then it's about java programming.
    >
    > I've been doing an increasing amount of work (at a distance - i'm not
    > the VM Guy) with virtual-machine based systems. Virtual developer
    > boxes accessed from dumb-ish desktops, virtual server farms for test
    > and acceptance environments, that sort of thing.
    >
    > One thing that's struck me is that we don't make much use of the
    > ability VMs give you to have disposable, single-use machines. I would
    > like to do this more, for things like nightly builds, or when
    > rebuilding acceptance, or even just giving developers a fresh machine
    > every week or day or something.
    >
    > So, assume that you have a template or a non-running cloneable image,
    > with everything you need installed, so you just need to get a fresh
    > machine based on that template/image booted and happy. How long, in
    > people's experience, does it take to do that, to go from a standing
    > start to a fully operational virtual machine that you can start work
    > on?
    >
    > How much manual work is required? How hard would it be to script or
    > work around?


    I don't know, but I've copied the same Parallels image running Linux
    onto several Windows XP and Mac OS X boxes. I maintain the images but
    not the hosts. The Macs were ready the same day, and I used one for
    development while running the VM; the Windows boxes took several days
    due to network & security requirements. Both prefer gobs of memory.

    > How do various VM systems compare in this respect?


    Sorry, I've only used Parallels: <http://www.parallels.com/>.

    --
    John B. Matthews
    trashgod at gmail dot com
    <http://sites.google.com/site/drjohnbmatthews>
    John B. Matthews, Jul 10, 2009
    #3
  4. Tom Anderson wrote:
    > Hi,
    >
    > This is not about java, but if we define "java programming" as "things
    > that java programmers do", then it's about java programming.
    >
    > I've been doing an increasing amount of work (at a distance - i'm not
    > the VM Guy) with virtual-machine based systems. Virtual developer boxes
    > accessed from dumb-ish desktops, virtual server farms for test and
    > acceptance environments, that sort of thing.
    >
    > One thing that's struck me is that we don't make much use of the ability
    > VMs give you to have disposable, single-use machines. I would like to do
    > this more, for things like nightly builds, or when rebuilding
    > acceptance, or even just giving developers a fresh machine every week or
    > day or something.
    >
    > So, assume that you have a template or a non-running cloneable image,
    > with everything you need installed, so you just need to get a fresh
    > machine based on that template/image booted and happy. How long, in
    > people's experience, does it take to do that, to go from a standing
    > start to a fully operational virtual machine that you can start work on?
    >
    > How much manual work is required? How hard would it be to script or work
    > around?
    >
    > How do various VM systems compare in this respect?
    >
    > Thanks,
    > tom
    >

    In the work environment I've been in for some years now a lot of the
    developers use Mac OS X, and most of them have Parallels. I'm very happy
    with this for the occasions where I need Linux (not so often) or Windows
    (often enough). Quick to set up off standard ISO images, and extremely
    reliable (a typical Windows XP Pro VM might have Oracle SOA suite,
    Oracle XE, SQL Developer, and JDeveloper, and runs just fine, and I've
    done a lot of work where I'm accessing J2EE servers on the Mac OS X side
    on my laptop from client apps (including browsers) on the VM side...no
    problems.

    Like John Matthews said, you do need gobs of memory, and Parallels VMs
    plus Parallels itself need some careful memory finetuning for best
    performance.

    We also use a lot of Solaris containers. You can get these with Open
    Solaris as well. All of the multi-user (non-developer) servers are in
    Solaris containers, and while it's not my responsibility to set these up
    I do know it isn't a major chore...once you've done a few.

    AHS
    Arved Sandstrom, Jul 10, 2009
    #4
  5. Tom Anderson wrote:

    > So, assume that you have a template or a non-running cloneable
    > image,
    > with everything you need installed, so you just need to get a fresh
    > machine based on that template/image booted and happy. How long, in
    > people's experience, does it take to do that, to go from a standing
    > start to a fully operational virtual machine that you can start work
    > on?
    > How much manual work is required? How hard would it be to script or
    > work around?
    >
    > How do various VM systems compare in this respect?


    The only one I've used (and that very briefly) is Microsoft Virtual
    PC. That allows you to save the current state of memory in addition
    to the system image, so that on the next run there's no need to boot
    the OS: in well under a minute you're up and running.
    Mike Schilling, Jul 12, 2009
    #5
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Jeremy S
    Replies:
    3
    Views:
    1,488
    bradley
    Jun 20, 2005
  2. flamesrock
    Replies:
    8
    Views:
    435
    Hendrik van Rooyen
    Nov 24, 2006
  3. Klaus Ambrass

    Scramble page source - how?

    Klaus Ambrass, Oct 3, 2003, in forum: ASP General
    Replies:
    6
    Views:
    138
    Klaus Ambrass
    Oct 6, 2003
  4. globalrev
    Replies:
    5
    Views:
    200
    Rob Biedenharn
    May 8, 2008
  5. Steve

    'scramble' string

    Steve, May 11, 2004, in forum: Javascript
    Replies:
    4
    Views:
    175
    Shawn Milo
    May 13, 2004
Loading...

Share This Page