IBM WebSphere 8.5 Configure and Deploy Project

An IBM WebSphere project to configure a target cell with a cluster and dependencies and then deploy and run an enterprise java application to the cluster

Project overview.

Here is a summary of what this project will achieve.

This project is designed to configure a cluster, database, virtual host and other standard WebSphere configuration items on a target WebSphere cell and then deploy a Java enterprise application (EAR file) into the configured cluster. 

If the cluster does not exist, it is created. If it exists, it is updated. 

The server in the project is Linux, but can be cloned to Windows if required. 

The project is preconfigured with three target environments, Dev, Test and Prod.

Specific configuration items are changed between environments, by use of Data Dictionary items.

Prerequisites

  • A running WebSphere 8.5 Cell on Linux with a Deployment Manager and a federated nodeagent.
  • You should have gathered the URL, Username and password of the Deployment Manager server admin service.
  • You should have the ability to connect to the target server hosting the Deployment Manager as root, or be able to sudo to root once connected as another user.

What is preconfigured and demonstrated

The project demonstrates the following configurations:
  • One to three Target server for Linux. The user will need to configure the actual hostname for each of these logical server definitions.
  • Use of the SSH plugin. If deploying to Windows the you'll probably want to change this to use the agent.
  • An Ear file, as payload
  • WebSphere environment configuration, parameterised per environment with Data Dictionary properties.
  • Search/Replace inside the Ear file per environment, at deployment time to configure environment specific values (in this case @@appName@@)
  • SearchReplaceTask task to perform dictionary value replacements insie the Ear file at deployment time
  • WebSphere85ClusterStateChangeTask task to stop/start the cluster
  • EARExpanderWebSphereTask task to unzip and zip the Ear file
  • WebSphere85DeploymentTask task to deploy configuration and applications to the cell

How to use this project.

  1. Download the project to your desktop by clicking on one of the links. The file will be saved as WebSphere-85-Configure-Deploy-JPetstore.zip
  2. Log into your RapidDeploy instance as mvadmin.
  3. Navigate to Resources-> Projects.
  4. In the top right hand corner click on the Upload Project button.
  5. Select the zip file you downloaded in step 1.
  6. You are guided through a project import wizard. The important thing to check and change (if necessary) here is the path to the project storage directory.
  7. Once the project is imported, there are a couple of things you'll need to do.
    • Firstly, you will need to change the path to your Dmgr installation on the target server. N avigate to    Resources  ->    Projects   and edit the project. Navigate to the Environments tab and click the edit button (pencil icon) on the Action  menu to the right of the environment. In the Edit Environment page, from the menu bar choose Dictionary -> Data Dictionary. Seach for the  @@wasDmHome@@  key. Change the value to match the profile root of your Deployment Manager profile. Save  the setting. Check and change if necessary the following additional keys: @@cellName@@ to match the name of the cell and @@nodeName@@ to match the node that the cluster runs on, then click Save Changes .  

    • Secondly, navigate to  Resources ->  Projects  and edit the project. Navigate to the  Packages  tab and click the  Create Package   button. A new package is created with a version number. This is the package you'll deploy later, containing all the environment definitions, actions and paylod ( jpetstore.ear ) to allow the jobs to be run on all defined servers.
    • By default this job will run on preconfigured hosts that you do not have access to. You will need to edit each of the server definitions to add your own Hostname.
    • To do this navigate to    Resources  ->   Targets   ->    Servers . Select the server  with the logical name (  Display Name ), one of  was85dev was85test or  was85prod. Change the Hostname hostname from the current value  to the IP, DNS or resolvable hostname you actually want to connect to. You might also need to change the   Transport   tab to use either SSH or the MidVision remote agent plugin. The imported server definitions are set up to use SSH to an AWS instance running WebSphere. If you are running your deployment to a WebSphere instance on Amazon Web Services you will only need to amend the IP address and your SSH key (.pem file).
  8. Now you can run a new job to the environment of your choice. 
    • Navigate to Jobs-> New Job
    • Select the project you created earlier. You will see a tree view of server/environment and application. 
    • Select the one you want to deploy and follow the wizard. 
    • On the Version panel you select the version (package version) you want to deploy. 
    • Since there is only one package, it is preselected. The latest package will always be preselected by default. 
    • Click on the Skip to Finish checkbox and click Next
    • On the final tab click the Start Job button. The deployment is started and you see the tasks executed and job log in real time.

Further Reading

The following links will help you gain a deeper understanding of the WebSphere Application Server plugin and the other tasks used in this project:

Download this project!