The ION Grid is a Java-based application server that provides a distributed runtime environment for other applications. Those other applications may, at any time, be added (deployed) or removed (undeployed) from a grid. The distributed nature of a grid means that an instance of the Infor ION Grid may span multiple server machines.
The ION Grid consists of several parts:
A host is a server machine that is participating in a grid. The host may be a physical or a virtual machine. Each grid has at least one host but may have several. A host may be a member of more than one grid.
Hosts operating in the same grid do not have to be running the same operating system as each other. A grid can contain any combination of hosts from the supported platforms.
The Grid bootstrap is a JVM used to install, upgrade, and launch the grid on a specific host. The bootstrap JVM is not owned by the grid but is in fact executed as a service, registered with the operating system. It is designed to be decoupled in this way to allow the bootstrap or the Host Router (which it launches) to fail independently of each other without causing total grid failure.
The Host Router is a built-in default router JVM. It is started by the bootstrap and subsequently there is exactly one Host Router per host.
The host router is responsible for:
Establishing the communication channels use for all grid internal communication
Starting other grid JVMs on its host (nodes, other routers, and deploy nodes)
Presenting a fixed point for communication with the grid from external clients (for example, the grid administration ui)
A router is a JVM that acts as an entry point that client applications can connect to. A router is configured to listen for client requests on a given network interface and with a number of specified ports including HTTP, HTTP(S) and in some cases other TCP/IP ports. Normally, the selected port number has to be made accessible through firewalls, when applicable, since it must be reachable from clients.
A node is a JVM that is registered as being part of a grid where grid applications are running. A grid typically has several nodes running different applications. Each node is running on one of the hosts that are part of the grid.
Nodes operating in the same grid do not have to be running the same Java version as each other. A grid can contain any combination of nodes running the supported Java versions. A typical example of combining Java versions could be using 32-bit and 64-bit editions together depending on the memory requirements for a specific node or application.
Deploy Nodes are used to execute deployment, upgrades, and undeployment of applications. The deploy node is not necessarily launched on a host which is the target of an application deployment operation. Also, one Deploy Node may perform a deployment operation with several hosts as targets.