Related reading:
The Intershop 7 deployment is based on Gradle, a tool for automating the build, publication and deployment of software packages. Primarily, Intershop uses Gradle to support a continuous integration and continuous assembly of Intershop 7 components. At the same time, it provides a flexible base for custom-taylored deployments of Intershop 7. The basic idea is: You define a so-called "desired state" beforehand, and the Gradle tools take care of its implementation. With respect to the Intershop 7 deployment, this means that you configure all relevant options in advance, and then execute the deployment (or have it executed automatically).
For more information about Gradle, refer to www.gradle.org.
With Gradle, Intershop 7 introduces a number of new deployment concepts, which are essential for understanding the deployment.
Concept | Description |
---|---|
Cluster | A cluster is a complete Intershop 7 system, made up of all cluster nodes acting together. The nodes that make up the cluster may be installed all on one physical or virtual machine or distributed over several physical or virtual machines via host types. |
Cluster node | A cluster node is one of the three main building blocks, which may be deployed individually for distributed installations via host types. |
Instance | An instance is a self-contained deployment containing at least one installed Intershop 7 host type. Each instance has a unique ID, such as ES1, ES2. |
Assembly | An assembly refers to a number of system components (software packages) that can be deployed together in order to deliver a specific feature set. |
Host type | A host type refers to a specific combination of system components that make up the runtime environment of an individual cluster node. |
Environment | The environment is an additional dimension of a deployment configuration used to address different needs with respect to the usage of a particular assembly. |
An Intershop 7 cluster follows the classical three-tier architecture and basically consists of following cluster nodes.
The Intershop Application Server (IAS) comprises all system components necessary to create a runtime environment ("engine") for Intershop 7 cartridges. The components are grouped as:
In distributed deployments, the IAS is deployed via the host type appserver
.
The Intershop Shared Files (ISF) comprise the application server's business logic, which is structured in cartridges, Intershop 7's containers for executable code. Cluster-wide configuration information, which is necessary for running an application server instance, is also kept in the ISF. In addition, the ISF includes all static file content that is required for Intershop 7 applications, like import/export files, branding packages, etc.
The ISF must be deployed before setting up a distributed cluster with multiple application servers.
In distributed deployments, the ISF is deployed via the host type share
.
The Intershop Web Server comprises the Apache HTTP Server and the Intershop 7 Web Adapter (including the Web Adpater agent).
Note
In distributed deployments, the IWS is deployed via the host type webserver
.
When using Apache Solr as search engine, you may want to operate the Solr server on a dedicated machine. Starting with Intershop 7.5, Solr servers can be deployed automatically just like the other nodes.
The database is not part of the Intershop 7 delivery but is required to run an Intershop 7 cluster. For more information, see Guide - General Database Setup (valid to 7.10).
An assembly refers to a number of system components ("software packages") that can be deployed together in order to deliver a specific feature set. The Intershop 7 distribution package contains a file system-based artifact repository that provides three default assemblies, upon which new custom assemblies can be based:
intershop7
, the basic application,intershop7-solr
, (since Intershop 7.5) includes the basic application as well as the Solr search service,primetech
, includes the basic application and the reference applications,primetech-solr
, includes the basic application, the reference applications as well as the Solr search service.A host type refers to a specific combination of system components that make up the runtime environment of an individual cluster node. Intershop 7 delivers the following predefined host types:
all
, used to deploy all nodes of an Intershop 7 cluster for a single-host deployment on one machine,webserver
, used to deploy the Intershop Web Server for a multiple-host deployment on multiple machines,appserver
, used to deploy the Intershop Application Server for a multiple-host deployment on multiple machines,share
, used to deploy the Intershop Shared Files for a multiple-host deployment on multiple machines,solr
, used to deploy the Solr search engine server for a multiple-host deployment on multiple machinesjavadoc
, used to deploy the Intershop 7 JavaDoc only, independent of any Intershop 7 instance, for distributed development environments, for example.Additional host types can be created with a project-specific implementation.
The environment is an additional dimension of a deployment configuration used to address different needs with respect to the usage of a particular assembly. The predefined Intershop 7 environments include:
development
, uses a single node deployment that allows to test an assembly under development; requires specific application configurations that, among others, enable the autoload mechanisms for code artifacts like ISML, pipelines, queries, etc., enable additional type checks during pipeline processing to avoid errors,test
, configures the application in production mode and requires all test cartridges of the assembly to run the automated test suite,production
, configures the application so that incoming requests are processed as fast as possible and excludes the test cartridges.Intershop 7’s open, scalable design means that a variety of deployment scenarios are possible. Its components can be grouped on one machine, several instances distributed over multiple logical CPUs or over multiple hosts, or instances can be duplicated for load balancing.
Depending on the requirements for an Intershop 7 system, different deployment scenarios can be used. Most requirements or priorities can be categorized as follows:
With respect to the deployment scenarios, this breaks down to the following basic approaches.
all
.Multiple-Host Deployment
With a multiple-host deployment, only selected host types are deployed on individual machines. A multiple-host deployment allows full use of Intershop 7’s open architecture by distributing the components over as many machines and processors as you need, and configuring them optimally for your site.
Note
Production environments must provide for a maximum scalability and high availability, and therefore include multiple web servers and Web Adapters, multiple application servers, load balancers, etc.