GlassFish Server Open Source Edition 3.1

Features

The defining feature set for 3.1 is cluster management and high availability. Please use product requirements from GlassFish Server Open Source Edition 3.0 as a guideline and do the next level drill down for features. The data captured below will be used create a list of functional specifications.

Legend

(1) Required

(2) Preferred

(3) Desired, but optional

Clustering Infrastructure

Area Features Notes Comments
Basic Infrastructure

(1) Provide support for clustering infrastructure – Provide cluster lifecycle management (install, create, delete, start, stop, re-start) and monitoring infrastructure More details

 
Dynamic Re-config

(1) Dynamically make configuration changes

(1) Status/results/error reporting and recovery

(1) Restart required status More details

 
Synchronization

(1) Synchronization with DAS during server boot – Cleanup of stale files

(3) Improved diagnostics More details

 
Security

(1) Security for cluster infrastructure (see spec ) More details

(1) Implement --target option for existing 3.0 commands – change-master-password, create-audit-module, delete-audit-module, list-audit-modules, create-auth-realm, delete-auth-realm, list-auth-realms, create-file-user, delete-file-user, update-file-user, list-file-users, list-file-groups, create-message-security-provider, delete-message-security-provider, list-message-security-providers, create-password-alias, delete-password-alias, update-password-alias, list-password-aliases, change-admin-password, login, etc.

 
SSH Provisioning

(3) Provisioning of remote instances (leverage from Hudson)

(2) Lifecycle management of remote instance start/stop-instance, start/stop-cluster More details

 
Configuration

(1) Support for concurrent administration (ex. domain.xml corruption) – Token support

(1) Config validation

(2) Performance – Size of domain.xml should not be a bottleneck for startup and administration – Read config on-demand in DAS for management More details

 
Infrastructure CLI

(1) New commands – create-cluster, delete-cluster, list-clusters, create-instance, delete-instance, list-instances, start-instance, stop-instance, list-instances, backup-domain, restore-domain, list-backups, copy-config, delete-config, list-configs, etc.

(1) Existing 3.0 commands – create-jvm-options, delete-jvm-options, delete-jvm-options, create-profiler, delete-profiler, create-system-properties, delete-system-property, list-system-properties, monitor, list-jndi-entries, start-domain, stop-domain, restart-domain, version, get, set, list, verify-domain.xml, create-domain, delete-domain, list-domain, start-database, stop-database, create-service, export, multimode, help, verify-domain-xml, unset, monitor, list-domains, etc.

 
Deployment

(1) Maintain backward compatibility

(1) Hot deploy: dynamically deploy application to a cluster

(1) Performance, error reporting

(1) Rolling upgrade (same as v2.x)

(2) WebLogic DD support (see details ) – Web Applications

(2) Generate WebLogic DD in tools (NB)

(2) Rename sun-* DD to glassfish-*

(3) Application versioning

(3) Progress status - More details - deployment , ACC

(1) New commands – create-application-ref, delete-application-ref, list-application-refs, etc.

(1) Implement -target option support for existing 3.0 commands – create-lifecycle-module, delete-lifecycle-module, list-lifecycle-modules, deploy, undeploy, enable, disable, deploydir, get-client-stubs, list-components, list-sub-components, show-component-status, list-applications, etc.

  %%
Resources

(3) Support for multi pool (JDBC Connection Pool) - More details

(1) New commands – create-resource-ref, delete-resource-ref, list-resource-refs, etc.

(1) Implement -target option for existing 3.0 commands – add-resources, create-admin-object, delete-admin-object, list-admin-objects, create-connector-connection-pool, delete-connector-connection-pool, list-connector-connection-pools, create-connector-resource, delete-connector-resource, list-connector-resources, create-connector-security-map, delete-connector-security-map, update-connector-security-map, list-connector-security-maps, create-resource-adapter-config, delete-resource-adapter-config, list-resource-adapter-configs, create-javamail-resource, delete-javamail-resource, list-javamail-resources, create-jdbc-connection-pool, delete-jdbc-connection-pool, list-jdbc-connection-pools, create-jdbc-resource, delete-jdbc-resource, list-jdbc-resources, ping-connection-pool, create-custom-resource, delete-custom-resource, list-custom-resources, create-jndi-resource, delete-jndi-resource, list-jndi-resources, list-jndi-entries, etc.

 
Transaction Service

(1) Transaction recovery in a cluster (same as v2.x) – Support for shared file system

(2) Performance

(3) WebLogic DD support

(2) DTrace monitoring probes

(3) Coherence integration More details

(1) Implement target option for existing 3.0 commands – recover-transactions, rollback-transaction, freeze-transaction-service, unfreeze-transaction-service

 

Management API / Tools

Area Features Notes Comments
RESTful API

(1) Management and monitoring using REST API More details

 
JMX MBeans

(2) Continue to provide Mbeans for management and monitoring

(1) Java EE Management (JSR 77) support

(2) Provide documentation with examples on how to use RESTful APIs More details

 
Console

(1) Support for centralized administration and clustering

(2) Support for SSH/SSHD (features parity with create cluster etc.)

(3) Warn user about conflicts during configuration updates (similar to a wiki)

(3) Ability to apply updates from UC ?

(3) Support for DAS backup/recovery

(3) Multi-domain support

(3) Integrate OSGi administration in admin console ? More details

 
CLI Commands

(1) Support for centralized administration and clustering (same as v2.x) – Any interface change requires CCC approval and full documentation

 

Product Delivery

Area Features Notes Comments
Installer

(1) GUI installer More details

 
Packaging

(1) IPS packaging More details

 
Upgrade

(1) GlassFish 2.1.1 (side-by-side with noted exceptions for missing features - Node agent, HADB) - GlassFish 3.0.1 (side-by-side) More details

 

Clustering & Availability

Area Features Notes Comments
In-memory Session Replication

(1) Support for in-memory state replication

(1) HA SPI Implementation with Provider implementation from Project Shoal

(2) Use Shoal based on Grizzly and remove JXTA

(2) DTrace monitoring probes ?

(2) Performance More details

Loadbalancer

(1) LB plugin and mod_jk support for 3.1

(2) Cookie based smart failover support for HA (to support consistent hash based in-memory replication)

(2) Configurator

(3) Automatic apply from DAS is optional More details

(1) New commands – apply-http-lb-changes, configure-lb-weight, create-http-health-checker, create-http-lb, create-http-lb-config, create-http-lb-ref, delete-http-health-checker, delete-http-lb, delete-http-lb-config, delete-http-lb-ref, disable-http-lb-application, disable-http-lb-server, enable-http-lb-application, enable-http-lb-server, export-http-lb-config, list-http-lbs, list-http-lb-configs, etc.

Web Tier

(1) Integration of HA container SPI

(2) WebLogic DD support

(2) Additional DTrace monitoring probes

(2) Coherence web support

(3) Additional Coherence support More details

(1) Implement -target option for existing 3.0 commands – create-threadpool, delete-threadpool, list-threadpools, create-ssl, delete-ssl, create-http-listener, delete-http-listener, list-http-listeners, create-virtual-server, delete-virtual-server, list-virtual-servers

EJB

(1) Integration of HA container SPI

(1) EJB Timer service in cluster mode

(1) Singleton EJB support (per SPEC)

(1) Integration with IIOP path

(3) WebLogic DD support

(2) Additional DTrace monitoring probes

(3) Coherence support ?

(3) Retain SFSB / EJB Timer state during redeployment (save-session-on-reload) More details

(1) New Commands – migrate-timers

(1) Implement -target option for existing 3.0 commands – list-timers

 
IIOP

(1) Clustering and HA support on IIOP path

(3) WebLogic DD support

(2) DTrace monitoring probes More details

(1) Implement -target option for existing 3.0 commands – create-iiop-listener, delete-iiop-listener, list-iiop-listeners

 
JMS

(1) JMS clustering and HA support – Support for EMBEDDED, LOCAL, REMOTE modes

(3) WebLogic DD support

(1) Support for resource adapter

(2) DTrace monitoring probes

(3) Coherence support More details

(1) Implement -target option for existing 3.0 commands – create-jms-host, delete-jms-host, list-jms-hosts, create-jms-resource, delete-jms-resource, list-jms-resources, create-jmsdest, delete-jmsdest, list-jmsdest, flush-jmsdest, jms-ping, etc.

 
Metro

(2) High Availability support

(2) – Reliable messaging sequence failover

(2) – Secure conversation session failover

(3) WebLogic DD support

(2) DTrace monitoring probes

(2) Compliance: WS-I BP 2.0, RSP 1.0 and BSP 1.1 More details

 
Group Management Service (GMS)

(1) Support in-memory replication module, timer migration, IIOP LB, Metro HA (if any), tx recovery (for failure notification)

(1) Shoal GMS Over Grizzly

(2) DTrace monitoring probes ?

(2) Performance

(3) GMS over non-multicast networks More details

(2) New commands – get-health

Serviceability

Area Features Notes Comments
DAS's Recovery

(2) Manual recovery support with backup/recovery

Logging & Diagnostics

(2) Integration with log viewer for remote instances

(1) Error message reference

(2) Integration with syslog for remote instances - Self management rule for log file pruning ? (Optional) - Diagnostic report ? More details

(2) New Commands – display-error-distribution, display-error-statistics, display-log-records, display-license, generate-jvm-report, generate-diagnostic-report, etc.

(1) Implement -target option for existing 3.0 commands – rotate-log, etc.

 

Embedded

Area Features Notes Comments
Embedded

(3) Formalize the APIs and offer official support

(3) Finish the remaining work (Scattered archive, EJB timer, etc.) - Enhancement to the Maven plugin More details

Maven plugin enhancents: glassfish:run should use reasonable defaults and little-to-no pre-configuration.

OSGi

Area Features Notes Comments
OSGi & Java EE

(3) Support OSGi enabled war, ejb-jar, rar, ear. Support OSGi & JPA More details

 

References

GlassFish Open Source Edition 2.x CLI Commands Not Available in GlassFish Server Open Source Edition 3.1 Release

Area Comments CLI Commands
Node Agent All node-agent related commands are not available in 3.1 release. Node agent is optional in 3.x architecture create-node-agent, create-node-agent-config, delete-node-agent, delete-node-agent-config, list-node-agents, start-node-agent, stop-node-agent
HADB All HADB related commands are not available in 3.1 release configure-ha-persistence, clear-ha-store, configure-ha-cluster, create-ha-store, remove-ha-cluster
JBI All JBI related commands are not available in 3.1 release create-jbi-application-configuration, create-jbi-application-variable, delete-jbi-application-configuration, delete-jbi-application-variable, deploy-jbi-service-assembly, export-jbi-application-environment, install-jbi-component, install-jbi-shared-library, list-jbi-application-configurations, list-jbi-application-variables, list-jbi-binding-components, list-jbi-service-assemblie, list-jbi-service-engines, list-jbi-shared-libraries, set-jbi-component-configuration, set-jbi-component-logger, set-jbi-runtime-configuration, set-jbi-runtime-logger, show-jbi-application-configuration, show-jbi-binding-component, show-jbi-runtime-configuration, show-jbi-runtime-loggers, show-jbi-service-assembly, show-jbi-service-engine, show-jbi-shared-library, show-jbi-statistics, shut-down-jbi-component, shut-down-jbi-service-assembly, start-jbi-component, start-jbi-service-assembly, stop-jbi-component, stop-jbi-service-assembly, undeploy-jbi-service-assembly, uninstall-jbi-component, uninstall-jbi-shared-library, update-jbi-application-configuration, update-jbi-application-variable, upgrade-jbi-component, verify-jbi-application-environment, list-jbi-service-assemblies
Web Services Management All web services management commands are not available in 3.1 release configure-webservice-management, create-transformation-rule, unpublish-from-registry, publish-to-registry, list-transformation-rules, list-registry-locations, delete-management-rule, delete-transformation-rule, delete-management-rule
Self Management Self Management is not implemented in 3.1 release create-management-rule, delete-management-rule, list-management-rules, create-mbean, delete-mbean, list-mbeans
Call Flow Call Flow monitoring is not available in 3.1 release start-callflow-monitoring, stop-callflow-monitoring
Misc Deprecated commands and other commands that do not make sense in 3.x start-appserv, stop-appserv, shutdown, list-acls, create-persistence-resource, delete-persistence-resource, list-persistence-resources, install-license