Using N1SPS in GlassFish V2 Enterprise Environment
By janeyoung on Oct 05, 2007
Now that GlassFish V2 has launched, you are able to setup an enterprise environment website where you can create cluster of instances on multiple hosts. Websites such as shopping carts, auctions, financial institution, health care and others rely on an enterprise setup to support scalability, load-balancing, fail over protection and high availability. Surely, you don't want your site to crash and there are no backups or sessions persistence. And of course, you want your site to be load-balanced so that if there are thousands of requests, customers are not waiting at your site to load. Furthermore, if you want to setup a production and development systems, you want to be able to replicate the enterprise environment on a separate domain running on separate machines.
A typical enterprise setup looks somewhat like this (click to enlarge image):
Where the color boxes represent domains and the outlined boxes represent the machines. Missing from the diagram is the node-agents. Each machine that has a server instance will require installation of a node-agent.
Adding load-balancer and HADB to the diagram:
where WebServer is installed on separate machine to load balance clustered instances and High Availability Database (HADB) is installed on another machine to provide high availability.
In a data center, you may have hundred of machines and the machines may spread across many geographic locations. As you can imagine, managing this enterprise setup can be very challenging and complex.
GlassFish V2's administration console provides a very good web console to manage and administer domain. However, if you have multiple domains, you'll need to login to multiple administration consoles. Likewise, using GlassFish V2 CLI, you'll need to know the user name, password, host name and port number for each domain.
N1SPS is the solution to enterprise environment complexity by offering deployment of multi-tier applications across heterogeneous platforms from one console.
First let me give a brief overview of how N1SPS works. N1SPS is distributed software platform that includes the following special-purpose applications you install on the servers in your network. These applications interact to allow you to deploy software to the servers in your network.
- Master Server – A central server that provides an interface for managing application deployments.
- Remove Agent – A management application that performs operations on a host. Every server that you want to be controlled by the N1SPS must have the Remote Agent application.
- Local Distributor – Optional servers that act as a proxy for the Master Server to optimize network communications across data centers and through firewalls.
There is a Sun Java System Application Server Plugin (available soon for FREE as well) that gets imported to N1SPS Master Server which allows you to do the following:
- Installation of Sun Java System Application Server
- Domain Management
- Node Agent Management
- Instance Management
- Cluster Management
- Application Deployment
- Installation of Load Balancer Plugin
- Installation of HADB Server and Client
- Resource Configuration
The plugin supports GlassFish V2 productized distribution, Sun Java System Application Server 9.1 as well as Sun Java System Application Server 8.2 (which is part of Java Enterprise System 5) and 8.1 (which is part of Java Enterprise System 4). Download Sun Java System Application Server 9.1 with HADB here.
You will need to install a Remote Agent for each machine that will have Application Server, WebServer and HADB installed.
Here's an overview of how the setup looks like:
With this setup, you'll be able to administrator an enterprise system with multiple domains/node-agents/clusters/server instances with software load-balancer and HADB installed on multiple machines from one administration console and CLI.
Here's more blogs on N1SPS and Sun Java System Application Server Plugin: