Closed Bug 486363 Opened 15 years ago Closed 9 years ago

Provide hosted VMs for QA/webdev/volunteers

Categories

(Participation Infrastructure :: MCWS, task)

All
Other
task
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: clouserw, Unassigned)

References

Details

(Whiteboard: [community][paas])

I've mentioned this and seen it mentioned for a long time but haven't seen anything official so I'm filing this bug to promote discussion/action.

I think IT should provide hosted VMs that people can rdesktop into.  If the machines reset themselves after X minutes of inactivity (or after every session) they would always be fresh.  Our current method is to provide licenses for the software and let each person use VM software on their machines.  This means we have to deal with large downloads, large files taking up space, VMs that eat our RAM, potential licensing problems, and upgrade/patching problems.  If these were centrally managed we could just rdesktop to a host, do what we need, and close the session.

Webdev and QA would be the most obvious beneficiaries if VMs were setup for each OS with several browsers on them.  We could test our designs on the VMs in cross platform/browser environment and reproduce and fix bugs faster.

Another use that has been requested has been for AMO editors to have accounts.  A lot of editors don't have all 3 platforms to use when reviewing add-ons so it would help them expand what they could review.  We could also setup some scripts for them to clean the application's profile and make reviewing faster between each add-on.

Other thoughts or people that would benefit?
(In reply to comment #0)
> Another use that has been requested has been for AMO editors to have accounts. 
> A lot of editors don't have all 3 platforms to use when reviewing add-ons so it
> would help them expand what they could review.  We could also setup some
> scripts for them to clean the application's profile and make reviewing faster
> between each add-on.

Is this not just bug 483018?
(In reply to comment #1)
> Is this not just bug 483018?

Looks like it - perfect.
Well, bug 483018 is about AMO editors, and restricting to that in particular.

This bug seems to be about a bigger scope, and would need to go through a similar process to extend the reach of that machine, i.e., go through shaver (and sethb).
Assignee: server-ops → mrz
 
> Webdev and QA would be the most obvious beneficiaries if VMs were setup for
> each OS with several browsers on them.  We could test our designs on the VMs in

This came up once before and was centered around Mozilla folk.  The feedback I got at that time was rdp/vnc failed at things that tested or exercised video and the issue was largely dropped (I think there was an internal forum thread on this).

> Another use that has been requested has been for AMO editors to have accounts. 

As has been pointed out, this is already covered in bug 483018.

Not sure what to do with this bug now...
(In reply to comment #4)
> > Webdev and QA would be the most obvious beneficiaries if VMs were setup for
> > each OS with several browsers on them.  We could test our designs on the VMs in
> 
> This came up once before and was centered around Mozilla folk.  The feedback I
> got at that time was rdp/vnc failed at things that tested or exercised video
> and the issue was largely dropped (I think there was an internal forum thread
> on this).

Do you have a link to the forum thread or what failing means in this context?  In any case, the vast majority of webdev work doesn't include video stuff.
https://intranet.mozilla.org/forum/comments.php?DiscussionID=530&page=1#Item_11

I must have had some dialog outside of that though.  

Would Windows VMs suffice or do you need Linux & OSX?
If AMO editors are using them to verify add-ons we'll need all three.
AMO editors are over in bug 483018.  Maybe this is just a dump of that bug?
(In reply to comment #8)
> AMO editors are over in bug 483018.  Maybe this is just a dump of that bug?

Yeah, if the boxes are all in the same pool and accessible by all of us, I think we can just dupe this bug to that one. (Maybe not understanding comment 3 though)
Before we bundle all these users in together, I'd like to understand if several users would be able to access the VMs at the same time. If this is basically the same as RDC'ing on a Windows server where multiple people can be on it simultaneously, then that's great. 

Is that the case?
Nothing's been determined yet but I was imagining WinXP VMs that would be destroyed and recreated after each use to ensure against pollution.
So from the sounds of it, it would be a usage of 1 by 1 as opposed to multiple logins into the OS. Curious, does the VM software have the ability to distinguish when someone disconnects from a session and doesn't log out of the OS itself?

The reason I'm asking these questions is because if we're opening up the VMs to a larger group of people than my original request to just the editorial team, then I'd like to understand what availability the editors would have to it. It seems the more people on it, the less slots would be available.
I think there's some miscommunication.  Anyone who needs a VM will have a VM.  When an editor is completely done it'll be destroyed.  When an editor needs it again it'll be re-created and the editor will have a clean OS install.

I'm not advocating users sharing a VM.
Ah great. Thanks!
Same issue as bug 483018.  Do you need OSX?
Component: Server Operations → Server Operations: Projects
Eventually, yes, but if you want to split that requirement out that's fine with me
Agree with Clouser for bug https://bugzilla.mozilla.org/show_bug.cgi?id=483018 as well.
I think webdev is moving towards vagrant for this.
FWIW, even with Vagrant, offering a private Mozilla cloud of throwaway VMs could be handy for contributors who don't themselves have hardware beefy enough to spin up a Vagrant VM. (eg. dev on a MacBook Air, cheap netbook, etc)

But, I'm not sure how urgent a case this would be.
cmore (CCed) asked me recently how he would run a simple, internal script, he wanted to show to people. Vagrant doesn't solve this use case.

Rackspace has acted kind of as a stopgap there, but I don't think we've established any guidelines what kinds of things we'd spin up rackspace nodes for. If that's the preferred way of handling this, please let webdev know through what process we can get rackspace nodes, and then close this bug.
(In reply to Fred Wenzel [:wenzel] from comment #20)
> cmore (CCed) asked me recently how he would run a simple, internal script,
> he wanted to show to people. Vagrant doesn't solve this use case.

Vagrant doesn't, no. Ideally, the Puppet part of a Vagrant+Puppet enabled project would help, though.

> Rackspace has acted kind of as a stopgap there, but I don't think we've
> established any guidelines what kinds of things we'd spin up rackspace nodes
> for. If that's the preferred way of handling this, please let webdev know
> through what process we can get rackspace nodes, and then close this bug.

Yeah, I would say having access to some corporate-billed Rackspace Cloud Server account for VMs would be great. Otherwise, we'd need something like Eucalyptus or Open Stack for more internal control.

The usual concerns over cost, control, trust, etc apply in any case. I'd love to have an option where we could set up a new non-employee contributor with the ability to spin up Mozilla web sites on a "try" server workalike.
(In reply to l.m.orchard [:lorchard] from comment #21)
> Vagrant doesn't, no. Ideally, the Puppet part of a Vagrant+Puppet enabled
> project would help, though.

Also, just for context, I've experimented with spinning up a Vagrant+Puppet project on Rackspace without the Vagrant part:

https://github.com/mozilla/kuma/blob/master/scripts/centos55-bootstrap.sh
Blocks: 688911
Whiteboard: [community]
We are in a much better spot to do this but I don't know if the need is still relevant or the same.
(In reply to matthew zeier [:mrz] from comment #23)
> We are in a much better spot to do this but I don't know if the need is
> still relevant or the same.

The need for something like this came up earlier this week in the Webdev Contribute Group meeting.  mrz, if you'd like to discuss this more with Webdev Stewards, feel free to join the next meeting on July 23 at 10:30 am pacific.

https://wiki.mozilla.org/Contribute/Webdev/Group_07_23_12
Whiteboard: [community] → [community][paas]
Assignee: mrz → nobody
Component: Server Operations: Projects → Community IT: Hosting
Product: mozilla.org → Infrastructure & Operations
Does this need doing?
I think we have enough alternatives (local VMs) to make this not worth the time investment.  It's a cool idea, but we've all got lots to do.  Thanks.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WONTFIX

Bulk move of bugs

Component: Community IT: Hosting → MCWS
Product: Infrastructure & Operations → Participation Infrastructure
You need to log in before you can comment on or make changes to this bug.