GlassFish Server Open Source Edition 3.1 - Administration Console

Introduction

This project will focus on developing the administration console for GlassFish 3.1. We will look at the following high level tasks:

  • switch to use REST api instead of AMX
  • provide clustering support

Goal / Scope

At the end of this effort, we will be able to have a web-based admin console that supports GlassFish 3.1

Feature ID Priority Description Eng Response Owner(s) Source of Requirement Status / Comments
GUI-001 P1 Transition to RESTful APIs Yes Jason, Ken    
GUI-002 P1 Support for centralized administration Yes Anissa, Suma Feature parity Target for application deployment and resources, Creation for cluster, clustered instances and standalone instances. Multiple configurations management
GUI-003 P2 Support for SSH/SSHD Yes Anissa Feature parity Create Node, cluster/instance life cycle.
GUI-004 P3 Support for DAS recovery Yes Srini    
GUI-005 P2 Warn user about conflicts during configuration updates (similar to a wiki) No   Community no support from backend, dropped.
GUI-006 P3 Deployment enhancements Yes Anissa   Application versioning, WebLogic DD support
GUI-007 P3 Security enhancements Yes Anissa   New PAM realm, Support for LoginModule for CertificateRealm
GUI-008 P3 JDBC/Connectors enhancements Yes Suma   Support for Statement leak detection & reclaim, Option to choose introspection or quick selection of JDBC driver vendor implementation name (A checkbox to be added to the JDBC Connection Pools page for "Quick Select; normal mode will be introspection of JDBC drivers), Display app-scoped-resources and datasource-definitions configuration, Categorization of monitoring statistics for app-scoped resources and datasource-definitions
GUI-009 P3 Integration with log viewer for remote instances Yes Ken Feature parity provide a dropdown in logviewer page for all instances; add a button to start logviewer in all instance page;
GUI-010 P3 Improve branding usability Yes Ken   Promotion Frame, Logout / Shutdown / Masthead / Version
GUI-011 P3 Packages update or removal Yes Anissa   dropped due to resources limitation and complication with clustering in the picture.
GUI-016 P3 Log Viewer enhancement Maybe Ken   Naman still needs to tell us what extra search criteria he wants.
GUI-018 P3 Download Diagnostic report Yes Srini   Refer to Logging one pager section 4.1 about the zip file; need to allow user to download this zip file as in v2 diagnostic report
GUI-012 P4 Grizzly enhancements Maybe     Support for new config elements
GUI-013 P4 JNDI browser Maybe     Need backend implementation
GUI-014 P4 HW load balancer support for IIOP No     IIOP backend implementation need to expose the configuration
GUI-015 P3 Plugin and package cleanup Yes Ken Jerome, Sahoo Jerome would like us not to use some special hooks that make our plugin system work. Sahoo would like us to cleanup our import/exports
GUI-017 P2 Monitoring Statistics Yes Suma   Convert from AMX to REST API for getting statistics. Also include new monitoring statistics available for 3.1

Out of Scope

  • HTTP load balancer support

Workspace

Milestone Schedule

Item # Date/Milestone Feature-ID Description QA/Docs Handover? Owner Status / Comments
#1 MS1 (5/24) GUI-001 REST Prototype done, at least 2 pages convereted to user REST No Jason Done.
#2 MS2 (6/21) GUI-002 Modify tree to include clusters, nodes, standalone instances and multi config No Ken Done
#3 MS2 (6/21) GUI-002 Page Layout Change, modify or add additional pages for cluster support. This includes: Create cluster, all the tabs for cluster page, standalone instances page and tab, target support for applications and resources. No Anissa Done
#4 MS3 (7/19) GUI-002 Deployment feature complete Yes Anissa assuming deployment supports target by 7/1.
#5 MS3 (7/19) GUI-002 create nodes, clusters and instances Yes Anissa assuming REST API for these is available by 7/1
  MS4 GUI-002 Tree Nodes -- dynamic tree node propagation;  highlights, Refresh
MBeanTreeAdapter convert to REST
  Ken  
  MS4 GUI-001 Application Tab for Clusters and Standalone Instance (Listing/Deploy/Undeploy for specific target) Yes Anissa  
  MS4 GUI-001 Application Listing of SubComponents Yes Anissa  
  MS4 GUI-001 Config Pages:  Finish  Conversion Yes Srini  
  MS4 GUI-001
Administration Password Yes Srini  
  MS4 GUI-002 Resources Pages:   Finish Conversion;  Add Target Support for Creation; Add Target Tabs for editing Yes Suma  
  MS4 GUI-001 JMS Support:   JMS Hosts,  Physical Dest tab for Cluster and standalone Instances; Connection Factories and Resources Yes Jason  
  MS4 GUI-001 Switch to JSON from XML (REST API) No Ken  
  MS4 GUI-002 Application Launching Yes Siraj  
  MS5 GUI-002 DAS, Cluster Instance and Standalone Instance General Info Yes Jason  
  MS5 GUI-002 Properties Tabs for DAS, Cluster, Cluster Instance, Standalone instance Yes Jason  
  MS5 GUI-002 Configuration -> System Properties and Instance Values Yes Jason  
  MS5 GUI-002 Logging   Support (viewer,  configuration) Yes Ken  
  MS5 GUI-001 JVM Reports Yes Ken  
  MS5 GUI-004 Support for DAS Recovery Yes Srini/Siraj  
  MS5 GUI-002 Cluster and Standalone Instances Resource Tab Yes Suma  
  MS5 GUI-017 Cluster and Standalone Instances Monitoring Tabs Yes Suma  
  MS5 GUI-017
Monitoring Statistics for Runtime and Resources Yes Suma  
  MS5 GUI-002 Group Management Service Config Yes Srini  
  MS5 GUI-001 Applications:  JavaWeb Start Support,  DD Viewing Yes Anissa  
  MS5 GUI-002
Applications: Virtual Servers Yes Anissa  
  MS5 GUI-002 Domain General (Domain Attributes) Yes Jason  
  MS5 GUI-002 Migrate EJB Timers Yes Jason  
  MS5 GUI-001
Restart Required Page with Reasons Yes Jason  
  MS5 GUI-002 Recover Transaction Page Yes Jason  
  MS5 GUI-001 LifeCycle Management (Listing/Create/Delete) Yes Ken  
             
Task List
Task# Task Target Milestone Owner(s) Duration (Man/Day) Start End Date Feature ID Status / Comments
1-1 REST Planning MS1 Jason 5 days 5/10 5/14 GUI-001  
      Ken 5 days 5/10 5/14    
1-2 REST Client Proof of Cocept MS1 Jason 5 days 5/17 5/21 GUI-001 converts 2 pages
1-3 REST GUI Client w/ full API & Security support MS2 Jason 15 days 5/17 6/7 GUI-001  
      Ken 5 days 5/17 6/7    
1-4 Convert 80% Pages MS3 Jason 15 days 6/8 6/29 GUI-001  
      Anissa 10 days        
1-5 Convert remaining pages MS4 Jason 15 days     GUI-001  
      Anissa 10 days        
      Ken 5 day 6/29 7/6    
1-6 Identify case that may need special support from REST (look at both v3 and v2 source) MS1 Anissa 4 days 5/10 5/14 GUI-001  
               
2-1 Dynamic top level tree node MS2 Ken 10 days 5/24 6/7 GUI-002  
               
3-1 Change how plugins import / export packages and maybe how bundles are discovered MS2+ Ken 15 days 6/8 6/29 GUI-015 Jerome would like us not to use some special hooks that make our plugin system work. Sahoo would like us to cleanup our import/exports
               
4-1 SSH/SSHD for cluster/instance life cycle management MS4 Suma, Ken 2 days     GUI-003 REST API should invoke ssh client to execute these commands, GUI changes are limited to additional options which the command may need.
5-1 Support for DAS Recovery (approach and features need to be identified) MS2 Srini, Ken 3 days     GUI-004 Feature encapsulated by the backend,
               
6-2 Add create cluster page (layout only) MS2 Anissa 2 day 6/2 6/3 GUI-002  
6-3 Add cluster listing, cluster general info page MS2 Anissa 3 days 6/4 6/8 GUI-002  
6-4 Add 5 cluster pages: applications, instances, properties (sub tabs: system prop, cluster prop ) (layout only) MS2 Anissa 5 days 6/9 6/15 GUI-002  
6-5 Add 3 cluster instances pages: General, Config props, instance props MS2 Anissa 5 days 6/16 6/22 GUI-002  
6-6 Add standalone instances listing, instance general info page MS3 Anissa 3 days 6/23 6/25 GUI-002  
6-7 Add pages for standalone instance : applications, properties (config props, instance prop) MS3 Anissa 5 days 6/28 7/2 GUI-002  
6-8 Node listing and creation pages MS3 Anissa 5 days 7/6 7/12 GUI-002  
6-9 System Properties page under Configuration and Instance Values page MS3 Anissa 4 day 7/13 7/16 GUI-002  
6-10 Group Management Service   Anissa 1 day     GUI-002  
6-11 Use REST API for end-to-end support for node listing/creation   Anissa 3 day     GUI-002  
6-11 Use REST API for end-to-end support for cluster management   Anissa 5 day     GUI-002  
6-11 Use REST API for end-to-end support for standalone instances management   Anissa 3 day     GUI-002  
6-11 Use REST API for end-to-end support for config props, system props, cluster props, instance props   Anissa 5 day     GUI-002  
               
26-1 Enhance application listing page, showing status, targets, actions, summary/detail view etc. as in v2   Anissa 5 day 5/17 5/21 GUI-002  
26-2 Add target section during deployment   Anissa 1 day 5/24 5/24 GUI-002  
26-3 Add Target tab for editing application, listing target, manage target and manage virtual server page   Anissa 5 day 5/25 6/1 GUI-002  
               
7-1 Enhance the listing of the following resources (modify status display and add target info) : JDBC, JavaMail, JNDI, Connector Resources, Admin Object resources, modify status display and add target info MS-2 Suma       GUI-002  
7-2 Add Target section during resource creation MS-2 Suma       GUI-002  
7-3 Add Target tab and Manage target page for all resources MS-2 Suma       GUI-002  
7-4 Add Resources page (as a tab) to cluster page MS-2 Suma       GUI-002  
7-5 Add Resources page (as a tab) to stand alone instances page MS-2 Suma       GUI-002  
7-6 Resources with target support, function complete MS3 Suma       GUI-002  
               
8-1 JDBC/Connector Enhancement MS-4 Suma       GUI-008  
               
9-1 Application deployment to target function complete MS3 Anissa 5 days     GUI-002  
9-2 Application Enhancement: app versioning & display webLogic DD MS4 Anissa 5 days     GUI-006  
               
10-1 Security Enhancement: support PAM Realm MS4 Anissa 5 days     GUI-007  
10-2 Security Enhancement: Support for LoginModule for CertificateRealm MS5 Anissa 5 days     GUI-007  
               
11-1 Log Viewer support for remote instances MS-3 Srini       GUI-009  
11-2 Log Viewer Enhancement: expand search criteria MS-4 Srini 5 days     GUI-016  
11-3 Download Diagnostic report MS-3 Srini       GUI-017  
               
12-1 Branding: make Promotion Frame optional   Ken 2 days     GUI-010  
12-2 Branding: customize Logout page   Ken 2 days     GUI-010  
12-3 Branding: customize Version page   Ken 1 day     GUI-010  
12-4 Branding: customize Shutdown page   Ken 1 day     GUI-010  
12-5 Branding: customize masthead   Ken 4 days     GUI-010  
               
13-1 Packages update: Design this feature together with backend   Anissa       GUI-011  
13-2 Packages update: implementation   Anissa       GUI-011  
               
14-1 Grizzly Enhancement           GUI-012  
               
15-1 JMS: Enhance the listing pages to add summary/detail view, add Target column   Jason       GUI-002  
15-2 JMS: Add Target section and manage target page   Jason       GUI-002  
15-3 JMS: Add Physical Dest. tab/page for Cluster   Jason       GUI-002  
15-4 JMS: Add Physical Dest. tab/page for standalone instances   Jason       GUI-002  
               
16-1 Display JVM Report for remote instances MS-4 Anissa 4 days     GUI-002  
             
17-1 Recover Transaction page for clustered and standalone instances MS-4 Anissa 3 days     GUI-002  
             
18-1 EJB Timer Migration MS-4 Anissa 3 days     GUI-002  
             
19-1 Monitoring MS-3 Suma       GUI-017 no UI change expected, convert existing page from AMX to REST
19-2 new Monitoring statistic MS-4 Suma       GUI-017 add new monitoring statistic
  • Note: Learning curve time for adding dev test using Selenium is not factored in
  • For many items, the time it takes to add dev test for each of the additional feature is not factored in.

References

  • Dev Tests

Email Alias