In a previous blog I talked about the integration we've achieved between XebiaLabs' XL Deploy and IBM's Workload Deployer (still called WebSphere CloudBurst Appliance at the time) to allow users to deploy Java EE packages straight to a private cloud environment managed by IBM Workload Deployer. An IBM developerWorks article with more details is in the publishing queue. When it's been published, I'll post a link here. In this blog, I'd like to discuss another integration we've been working on.
IBM's WebSphere DataPower appliances
are a family of appliances that provide valuable services for SOA architectures such as XML acceleration (XA35
), XML security (XS40
) and data integration/ESB (XI50
). While the DataPower appliances provide a powerful web-based management GUI, they are not easy to automate. The only command line available is an interactive command line that requires you to telnet into the appliance and the other way to automate the system is a SOAP/XML based API
that requires quite a lot of coding.
Luckily for us, iSOA Group has solved this problem by developing DPAdmin. DPAdmin has two modes of operation. The first is the interactive mode that allows you to to access the appliances for runtime support and troubleshooting without having to visit the web-based GUI. The second mode allows you to specify a script (in a format the reminiscent of an Ant
build file) to be executed by DPAdmin. This script can invoke commands to do things like deploy services to a cluster, import a domain or upload files or folders. See the DPAdmin sample scripts for more information. When used stand alone, DPAdmin already gives the DataPower administrator a lot of power to manage the DataPower appliances. But we've also integrated this functionality into XL Deploy to make it as easy to deploy to IBM DataPower appliances as it is to deploy to IBM WebSphere Application Server
So how does the integration work? Well, just like we did for the integration with IBM Workload Deployer (previously known as IBM WebSphere CloudBurst Appliance), we've written a XL Deploy plugin that extends the functionality of XL Deploy. The DataPower plugin for XL Deploy invokes the DPAdmin automation layer (called dpauto
) to perform the deployment work on the IBM DataPower appliance. In this short walkthrough of the plugin, we will perform a domain import with XL Deploy.
- The user creates a package containing a domain ZIP file. This ZIP file is an export of the domain from another appliance (say the development environment). In addition to the ZIP file, the user also specifies the name of the domain into which to import the ZIP file (TargetDomainNode2 in the screenshot below) and the name of the XML manager to use (default in the screenshot). For this demo we've done that manually but you could use DPAdmin to perform this action when building the other artifacts (EAR files, HTML files, etc.) of your application.
- The user defines an environment and adds the IBM DataPower appliance (blue in the screenshot below) to that environment.
- The user configures a deployment of the package he created in step 1 (DataPowerConfig/1.0) to the environment he created in step 2 (Blue) and maps the ZIP file to the appliance (the green arrow in the screenshot).
- The user presss the "Deploy" button in XL Deploy to start the deployment.
- XL Deploy invokes DPAdmin to start the domain import. Any output generated by DPAdmin is shown in the XL Deploy UI.
- DPAdmin imports the domain into the IBM DataPower appliance.
- And of course, if the package were to contain other, non-DataPower, artifacts, XL Deploy would deploy these as it does normally.
As you can see from the screenshots, XL Deploy and DPAdmin seamlessly integrate to give the user to power to perform DataPower deployments in exactly the same manner as his/her IBM WebSphere Application Server deployments
or even his/her IBM WebSphere CloudBurst Appliance deployments
. Or, going outside of the IBM stack, his deployments to Oracle WebLogic Sever
, JBoss Application Server
or Apache Tomcat
. But, even better, this makes it possible to perform deployments to more than one of those platform at the same time in one go! For example within one deployment XL Deploy could copy HTML files to IBM HTTP Server, deploy Java EE artifacts to IBM WebSphere Application Server, and import a domain into an IBM DataPower appliance.
The upshot of all this is that the end user can perform one-click deployments of complex applications to heterogeneous environments without needing detailed knowledge of all those platforms. By extending the XL Deploy deployment automation platform with the IBM DataPower deployment features offered by DPAdmin, IBM DataPower deployments are easier than ever, allowing enterprises to fully exploit the many features of the IBM DataPower appliances.