Providing High Availability for Stratos with Pacemaker & Heartbeat

This article describes how High Availability (HA) can be configured with Pacemaker & Heartbeat for Apache Stratos. In general this concept can be applied for any server application which needs HA and does not require any data replication. If data replication is needed you may need to consider using DRBD with Pacemaker. First of all we will see what Pacemaker and Heartbeat are and go through a series of steps on configuring those. »

on #ha,

Re-Writing Query Parameters in WSO2 ESB

The following code sample shows how to re-write a query parameter in an URL in WSO2 ESB. This technique might be useful when dynamically handling endpoint URLs. <property name="URL" value="http://host:8280?p1=abc&amp;p2=qwe"/> <filter source="$ctx:URL" regex=".*format=.*"> <then> <!-- format query parameter found in URL, replace it --> <property name="URL_UPDATED" expression="replace($ctx:URL, 'format=([^&amp;]*)', 'format=xml')"/> </then> <else> <!-- format query parameter not found in URL, add it --> <property name="URL_UPDATED" expression="concat($ctx:URL, '&amp;format=xml')"/> </else> </filter> <log level="custom"> »

Install Stratos in One Go

Apache Stratos 4.0.0 installation process has series of manual steps; installing prerequisites, downloading source and binary packages, installing and configuring puppet master, configuring Stratos products, etc. I think it is a waste of time to do all these steps over an over again when setting up Stratos development or demo environments. As a solution to this, I implemented a script to automate the complete Stratos installation process by filling the gaps in between: Prerequisites: An Ubuntu 12.04 64bit host Git client Steps to follow: Take a git clone of the below git repository: git clone https://github.com/imesh/stratos-dev-stack.git Update install.sh with host private IP and IaaS configuration parameters: host_private_ip="" ec2_identity="identity" ec2_credential="credential" ec2_keypair_name="keypair-name" ec2_owner_id="owner-id" ec2_availability_zone="availability-zone" ec2_security_groups="security-groups" Grant install.sh executable access: chmod +x install.sh Run install.sh with root permissions: sudo ./install.sh This will download and install Stratos source/binary packages, Java, MySQL connector, ActiveMQ, puppet master and configure all of them with default configuration settings. »

Implementing Split Aggregate Pattern in ESB

Split Aggregate is an Enterprise Integration Pattern (EIP) which could be implemented in an ESB in scenarios where the same backend service needs to be invoked with different payloads. This will avoid the need of making multiple service calls to backend services and eventually reduce the service invocation round trip time. In this article I have designed a sample mediation flow in WSO2 ESB, by using the Iterate and Aggregate mediators to demonstrate the usage of Split Aggregate patten. »

Exposing WSO2 Identity Server Admin Services as REST APIs

WSO2 Identity server 4.5.0 does not provide REST APIs for accessing its administrative services out of the box. However we could use WSO2 ESB to convert SOAP based administrative services to REST. Please follow the below steps to do this: Download WSO2 ESB 4.8.1 and IS 4.5.0. Extract ESB distribution and set the offset to 1 in carbon.xml file. <offset>1</offset> Extract IS distribution and set the HideAdminServiceWSDLs property to false in carbon.xml file. »