QA/Infrastructure/On Demand Provisioning: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(Created page with "=Overview= {| | style="width: 45%" | | style="width: 55%" | |- valign="top" | '''Lead:''' | [mailto:abillings@mozilla.com Al Billings] |- valign="top" | '''Dates:''' | P...")
 
 
(15 intermediate revisions by the same user not shown)
Line 6: Line 6:
  | '''Lead:'''
  | '''Lead:'''
  | [mailto:abillings@mozilla.com Al Billings]
  | [mailto:abillings@mozilla.com Al Billings]
|- valign="top"
| '''Dates:'''
| Plan formalized by end of 2011Q1
  |- valign="top"
  |- valign="top"
  | '''Status:'''
  | '''Status:'''
  | Writing initial plan and doing investigation
  | ESX Server in PHX is qp-vmware02. Virtual machines are running.
|- valign="top"
| '''Documentation:'''
| TBD
  |}
  |}


=Summary=
=Summary=
The QA organization needs on demand resources for a variety of client testing with Firefox.  
The QA organization needs on demand resources for support of various projects under development (such as Jenkins integration or Webapps QA).


One goal is to be able to set up a client machine on demand with specific combinations of anti-virus software, firewall software, extensions, or plugins and run Firefox builds with the Mozmill Crowd extension.
The following templates are available for virtual machines:
 
* Ubuntu 11.04 Standard 32-bit
Being able to provision multiple machines with unique configurations on demand will allow QA to test specific scenarios that are currently not tested.
* Ubuntu 11.04 Standard 64-bit
* Ubuntu 11.10 Server 32-bit
* Ubuntu 11.10 Server 64-bit


=Project Plan=
=Project Plan=
== Goal ==
== Goal ==
 
To provide on demand servers for members of the QA team for development sandboxes or other short to mid-term needs.
 
== Use Case Scope ==
 


== Milestones ==
== Milestones ==


=== Milestone 1 ===
=== Milestone 1 ===
Completion of:
Completion of:
* Creation of QA ESX Server
* {{done|Creation of QA ESX Server}}
* Creation of a series of virtual machines running the list of currently supported operating systems on the ESX server.
* {{done| Creation of a series of virtual machines running the list of currently supported operating systems on the ESX server.}}


=== Milestone 2 ===
=== Milestone 2 ===
Completion of:
Completion of:
* Command line tools to instantiate one or more of existing virtual machines on command.  
* {{done|Templates for common operating system virtual machines are available.}}
* Possibly configuration scripts to tweak details of instantiated virtual machine.
 
=== Milestone 3 ===
Completion of:
* something
* something
 
=== Milestone 4 ===
Completion of:
* something
* something


=== Notes ===
=== Notes ===


'''VM management'''
'''VM management'''
* Host-based
* Scriptable via [http://www.vmware.com/support/developer/vcli/ vSphere Command-Line Interface] (VCLI)
** [http://www.vmware.com/products/vsphere/esxi-and-esx/ Vmware ESX]
* [http://www.vmware.com/support/developer/vima/ vSphere Management Assistant] (vMA) - prepackaged Linux VM that can deploy scripts and third-party agents to manage ESX systems.
*** Already supported by Mozilla IT using HP blades servers.
*** IT says it ''may'' have two outdated servers in the San Jose data-center that we can use.
*** IT also says that there is an existing QA license for ESX (still waiting for details).
*** According to VMware, is superceded in future by shiny new ESXi, which doesn't have same feature set. Need to know Mozilla's migration path, if any, to ESXi.
*** Pricing for [http://www.vmware.com/vmwarestore/vsphere_purchaseoptions.html ESX] vs. [http://www.vmware.com/vmwarestore/buyvsphere-small-business.html ESXi].
*** Supports all of the Windows and Linux operating systems we currently use.
*** supports scriptable installations through utilities like KickStart.
*** supports managing VMs through VI Web Access.
*** uses [http://www.vmware.com/products/converter/faqs.html vcenter converter] to convert existing Vmware VMs or hardware machines to ESX capable VMs.
*** Scriptable via [http://www.vmware.com/support/developer/vcli/ vSphere Command-Line Interface] (VCLI) ''(Though this may only apply to ESXi and ESX may use a different set of local tools. Unclear.)''
*** [http://www.vmware.com/support/developer/vima/ vSphere Management Assistant] (vMA) - prepackaged Linux VM that can deploy scripts and third-party agents to manage ESX systems.
** [http://www.xen.org/ Xen]
*** Runs as host under:
**** SUSE Linux Enterprise 10
**** RHEL 5/Fedora 7
**** Sun Solaris
**** Debian's Etch
*** Client, guest, VMs:
**** Linux
**** OpenBSD, FreeBSD
**** Windows (if the host machine's processor supports hardware virtualization)
*** Commercial versions
**** [http://www.citrix.com/English/ps2/products/product.asp?contentID=683148 Citrix XenServer]
* Cloud-based
** [http://aws.amazon.com/ec2/ Amazon Elastic Cloud Compute (EC2)]
*** Supports:
**** Windows Server 2003/2008
**** Fedora, Gentoo, Ubuntu, SUSE, Debian
*** No Windows client systems (XP, Vista, 7)
*** Can import VMware VMs for Windows Server 2008 SP2
*** Scriptable through command line interface of [http://www.logicstyle.com/raintoolkit.html Rain Toolkit]
*** [http://aws.amazon.com/ec2/#pricing Pricing]:
**** Machines cost between $0.085 to $0.68 an hour for Linux, $0.12 to $0.96 an hour for Windows
**** Data transfer in or out is $0.10 per GB.
**** $0.11 per GB-month of provisioned storage, $0.11 per 1 million I/O requests
*** Primary advantage is immediate, on-demand, infinite* scaling based on ability to pay.
** [http://www.rackspace.com/managed_hosting/private_cloud/index.php Rackspace]
*** Runs VMware-based virtual machines in cloud using either ESX or ESXi
*** Appears to only suppport Linux or Windows Server systems.
* Other Hosting Options
** Mac OS X would have to be run on its own Apple hardware due to licensing.
** One option is scriptable, imaging software and not use VMs at all.
*** [http://clonezilla.org/ Clonezilla]
* Execution/Content management
** Use Mozmill crowd extension with BYOB technology:
*** Combinations of:
**** anti-virus software
**** firewall versions
**** OS versions
**** browser plugins
**** extensions - top 100?
**** Reporting
 
* Action items
** Expand data for Cloud automation and Mozmill Server above
*** identify
**** dependencies
**** milestones
**** components

Latest revision as of 18:49, 30 December 2011

Overview

Lead: Al Billings
Status: ESX Server in PHX is qp-vmware02. Virtual machines are running.

Summary

The QA organization needs on demand resources for support of various projects under development (such as Jenkins integration or Webapps QA).

The following templates are available for virtual machines:

  • Ubuntu 11.04 Standard 32-bit
  • Ubuntu 11.04 Standard 64-bit
  • Ubuntu 11.10 Server 32-bit
  • Ubuntu 11.10 Server 64-bit

Project Plan

Goal

To provide on demand servers for members of the QA team for development sandboxes or other short to mid-term needs.

Milestones

Milestone 1

Completion of:

  • [DONE] Creation of QA ESX Server
  • [DONE] Creation of a series of virtual machines running the list of currently supported operating systems on the ESX server.

Milestone 2

Completion of:

  • [DONE] Templates for common operating system virtual machines are available.

Notes

VM management