| Number |
Requirement |
Version |
Description |
| 1. |
General |
|
|
| 1.1 |
Release concurrently with Web Space Server 10 |
1.0 |
In addition to releasing the initial final release based images at the same time of the Web Space Server 10 release in January, plan to make available pre-release versions of the VM images prior to the January final release of Web Space Server 10. For example, soon after Stable Build 3 of Web Space Server 10 is released in mid-October, make available a Stable Build 3-based early form of VM images available for public download. |
| 1.2 |
Ensure that images can be used as basis for commercially supported deployments |
1.0 |
- Ensure that all of the supported elements of the image are still supported for production use even though they have been deployed in the form of a VM image.
- Document any interfaces associated with the use of the VM images that are expressly not supported for production use. For example, if there is a component present for demonstration purposes, make it clear that this component is not supported for production use.
- Ensure that techniques used to pre-install and initially configure the components result in supported initial configurations. The VM image assembly techniques themselves are not required to be production supported.
- Ensure Support staff is trained on how the use of the supported images results in the same or different initial deployment and whether the use of the images has any unique downstream implications as compared to traditional installation and initial configuration methods.
|
| 2. |
Integrated Functionality |
|
|
| 2.1 |
Web Space Server 10 |
1.0 |
|
| 2.2 |
GlassFish V2.1 and MQ 4.3 |
1.0 |
|
| 2.3 |
Java 6 Update x |
1.0 |
Available in OpenSolaris |
| 2.4 |
MySQL 5.x Community Server |
1.0 |
Available in OpenSolaris |
2.5 |
OpenSSO |
Post 1.0 |
Inclusion in VM image depends on whether or not the Web Space Server group has demonstrated OpenSSO with Web Space Server 10.
http://blogs.sun.com/kamble/entry/integrating_websynergy_with_opensso_on\\
http://blogs.sun.com/theaquarium/entry/opensso_liferay_and_glassfish_redux\\
(this also applies to GFv2)
Authorization (and identity-based content delivery):
http://wikihome.sfbay.sun.com/portalserver/Wiki.jsp?page=IBCDInstructions
|
| 3. |
Assembly |
|
|
| 3.0 |
Documented Reassembly |
1.0 |
The process of assembling the images must be documented and made easily accessible to anyone wanting to do the same. All custom scripts used in the assembly process must be made publily available along with the assembly documentation. |
| 3.1 |
Automated Assembly |
Post 1.0 |
The process of assembling the images must be scripted and made easily accessible to anyone wanting to do the same. The assembly scripts must be publicly available.
Not targeted for 1.0 because it is expected that the bulk of the effort will be spent determining the basic steps to deliver VM images that meet the target v12n platform requirements. Automated reassembly will be a post 1.0 feature. |
| 3.2 |
Integrated into Web Space Server's Build Environment |
Post 1.0 |
So as to ensure ease of refreshing the images as the Web Space Server 10 codebase evolves, the process of assembling the images should be hooked into the Web Space Server 10 build environment.
Depends on automated assembly feature. |
| 4. |
Out of the Box Experience |
|
|
| 4.1.1 |
Images: Minimize number of VM Images Types |
1.0 |
As much as feasible, provide support for the required v12n platforms with a minimum number of images and image types. |
| 4.1.2 |
Images: Minimize size of images |
1.0 |
Minimize size of images to both ease download and to demonstrate the degree of OS minimization supported by Web Space Server 10.
Balance degree of OS minimization with the requirement to use a supported deployment OS configuration. For example, the project team will likely need to determine if OpenSolaris has a desktop free installation profile that can be used.
For each OS, degree of minimization that is feasible depends in part on the supported OS profiles of the OS vendor.
See our OpenSolaris Minimization working document for more information. |
| 4.1.3 |
Images: Different Images for Different Profiles |
Post 1.0 |
The initial set of VM images will focus on one deployment profile.
Offer different VM Images for substantially different deployment profiles. If substantially different deployment profiles are interesting, then one option after 1.0 is to deliver multiple VM images with one VM image per profile. |
| 4.2.1 |
Downloads: Provide image downloads adjacent to regular Web Space Server 10 downloads |
1.0 |
|
| 4.2.2 |
Downloads: BitTorrent option |
1.0 |
Publish images on Sun's BitTorrent service. |
|
| 4.2.3 |
Downloads: Market images in VM marketplaces |
1.0 |
e.g. Add entries to VMware's Virtual Appliance Marketplace. |
| 4.2.4 |
Downloads: Ensure sufficient documentation is present at download |
1.0 |
See virtual appliance template |
| 4.2.5 |
Downloads: Quick Start document |
1.0 |
Provide several page quick start guide to help deployers access key administrative interfaces and perform initial customizations. |
| 4.3.0 |
Quick Start Web Page |
1.0 |
Provide an initial web page served by the appliance that acts as a quick introduction to the appliance and the available services and how to interact with the appliance. Also consider the "Appliance View" option for VMware Workstation that presents the user with an overview of the appliance and a link to the getting started web site within the appliance. |
| 4.3.1 |
Getting Started: License agreement during first boot |
1.0 |
|
| 4.3.1.2 |
Getting Started: Product Registration option during first boot |
1.0 |
Provide CLI means to carry out product registration of the VM image. |
| 4.3.2 |
Getting Started: All services start automatically upon boot |
1.0 |
|
| 4.3.3 |
Getting Started: Ability to verify service is up and running properly |
1.0 |
Ensure deployer can easily try out a pre-deployed sample to ensure basic functionality is operating as expected. |
| 4.3.4 |
Getting Started: Live Integrated End-to-end Sample |
1.0 |
Running out of the box as a result of starting the VM. It must be easy to remove or at least disable this sample when preparing an image for actual deployment use. |
| 4.4.1 |
Secure by Default: ... |
1.0 |
List key out of the box security requirements such as networking requirements. |
| 4.4.2 |
Force to Reconfigure Security |
TBD |
Force users to change default passwords, regenerate self-signed certificates and so on |
| 4.5.1 |
Deployment Best Practices: Ensure deployment demonstrated recommended best practices |
1.0 |
List key best practices such as initial JVM tuning and other aspects that are demonstrated in the VM images. |
| 5. |
Virtualization Platform Support |
|
|
| |
Deployment-oriented v12n Platforms |
|
|
| 5.1 |
Sun xVM Server |
1.0 |
Sun xVM Server 1.0-compatible VM images must be provided. |
| 5.2 |
VMware ESX 3 |
1.0 |
Ideally, the same VMDK-based image will be suitable for use on both Sun xVM Server 1.0 and VMware ESX 3. However, if for technical reasons different images are required, the project will deliver multiple images. |
| |
Evaluation / Desktop v12n Platforms |
|
|
| |
Even though this project is delivering deployment-oriented VM images, supporting desktop virtualization platforms is important because:
1) Adoption: many developers and administrators have access to these platforms. Since Sun xVM VirtualBox is free, the barrier to entry is very low.
2) VM Assembly and Modification: these platforms are seen as a means to assemble and modify VM images. |
|
|
| 5.3 |
Sun xVM VirtualBox 2.x |
1.0 |
Not targeted for production deployment, but useful for developers and pre-release integration. Also a requirement from a Sun alignment perspective.
Ideally, the same image that is used for Sun xVM Server will work out of the box with Sun xVM VirtualBox. However, if for the initial release separate images are required, then the project team will deliver multiple images. |
| 5.4 |
VMware Server and VMware Workstation |
1.0 |
Not targeted for production deployment.
As long as our images are exercised on VMware Server, they are likely to work on VMware Workstation. We will perform basic sanity testing on each of these platforms. |
| 5.5 |
Others |
Post 1.0 |
Amazon's EC2, Microsoft Hyper-V and other v12n platforms are out of scope for 1.0, but the results of this initial effort will certainly ease subsequent or parallel development of images for these other platforms. |
| 6. |
Deployment Operating Systems |
|
|
| 6.1 |
OpenSolaris 2008.11 |
1.0 |
Deliver Web Space Server appliance on OpenSolaris 2008.11. |
| 6.2 |
Solaris 10 Update 6 |
Post 1.0 |
Since many production deployments of Web Space Server will use Solaris 10, it is important to provide a VM Image based on Solaris 10 x64. However, given the resources available, the project team recognizes that it can only address one deployment OS for the January release. As a follow-on to the OpenSolaris-based release, the project team will consider delivery of a Solaris 10-based image. Much of the application level integration investment of the OpenSolaris-based image will be reusable in support of the Solaris-based image. |
| 6.3 |
Linux |
Not Applicable |
Since the primary intent of this project is to focus on the delivery of the Web Space Server application in a VM image form and we are obliged to promote OpenSolaris and Solaris while doing so, VM images based on Linux guest OS' are not a high priority for this effort. However, many of the techniques for assembling the integrated deployment images will apply to the creation of Linux-based images. |
| 7. |
Administration and Life Cycle Management |
|
|
| 7.1 |
Document how each layer of the images can be updated and maintained using that layer's supported tooling. For example, ensure that use of the OpenSolaris pkg(5) tooling is able to manage the OS layer of the VM image. |
1.0 |
No separate, image-wide update and upgrade tooling is required in this release.
The Image Packaging System, aka pkg(5), will be used to update OpenSolaris and a separate set of pkg(5) repositories will be available to manage the Web Space Server 10, GlassFish V2.1 and MQ components. |
| 7.2 |
Ensure that configuration and application data is maintained in a separate location from OS and application binaries. |
1.0 |
Promote the ability to easily backup and restore configuration and variable data and to prepare for a future VM level upgrade option.
Ideally, manage the configuration and variable data on a separate filesystem of ZFS area and demonstrate how to efficiently backup and restore this data via ZFS features.
Also prepare to demonstrate how this data could be hosted on a NAS server such that very little if any application and configuration data would live on the VM itself. |
| 7.3 |
Provide VM image level upgrade option |
Post 1.0 |
As a move toward a real appliance, document how to upgrade from one VM image release level to another. |
| 7.4 |
Secure Remote Access via SSH |
1.0 |
Out of the box, provide ssh access to the appliance. |
| 7.5 |
Reset to Factory Defaults |
1.0 |
Provide easy means to reset appliance's configuration to factory default configuration. |
| 7.6 |
Web Administrative UI |
1.0 |
Consider pre-installation and configuration of webmin such that appliance administrators will have an easy means to administer the underlying OS environment. Consider providing Web Space Server 10, GlassFish, etc. modules for Webmin so as to at least provide visibility to their web administrative interfaces via the Webmin console. These modules could be a post 1.0 feature. Use of webmin would suffice for the initial series of VM images. In the future, an appliance-specific administrative interface perhaps using an off-the-shelf appliance management framework could be delivered to support delivery of true Web Space Server black box appliances. |
| 7.7 |
External Management |
Post 1.0 |
Ensure SNMP can be used to remotely monitor the appliance. Also consider XML over HTTP and perhaps JMX interfaces for remote monitoring. Consider use of the JES Monitoring Framework as a preconfigured feature of the appliance. |
| 8. |
Support and Community |
|
|
| 8.1 |
Provide SRT as part of Web Space Server SRT |
1.0 |
Insert several slides addressing the VM images in the Web Space Server SRT material. Present these slides. |
| 8.2 |
Monitor Web Space Server forums and render developer support |
1.0 |
Support for use of the images. |
| 8.3. |
Provide development backline support |
1.0 |
To the extent that users base deployments on these images, provide assistance to Engineering and Support when customers ask for help in using the images. |
| 9. |
Marketing and Promotion |
|
|
| 9.1 |
JavaOne '09 Session |
Post 1.0 |
Submit proposal for either separate session or piggyback on a suitable Web Space Server session. |
9.2 |
Write blog entries to stimulate interest in Web Space Server and the images |
1.0 |
Engage Web Space Server community members and other by writing blog entries addressing the development of these images and the response from initial users. |