Skip to main content

Posts

Running multiple ActiveMQ instances on one machine

1. Download and unzip the ActiveMQ http://activemq.apache.org/ 2. Go to the ActiveMQ home directory and create the instances as follows cd <ACTIVEMQ_HOME> ./bin/activemq create instanceA ./bin/activemq create instanceB 3. Do ls -l you can see two sub directories created as instanceA and instance B 4. Let instanceA to use the default config, modify the config of instanceB Go to the instanceB/conf folder and open the file jetty.xml to make the webconsole available at port '8162'        <property name="connectors">             <list>                 <bean id="Connector" class="org.eclipse.jetty.server.nio.SelectChannelConnector">                     <property name="port" value="8162" />                 </bean>         ...

Mounting remote governance registry

Let's say we have AS instance and G-reg instance, both instance have pointed their governance registry to MySql database. Now I want to mount the AS's governance registry to G-reg's /_system/as/governance path 1. Shutdown both instances 2. Configurations to be done in G-reg side (in registry.xml file) mount G-reg governance registry as <mount path="/_system/governance" overwrite="true">         <instanceId>greggov</instanceId>         <targetPath>/_system/governance</targetPath>     </mount> mount AS governance registry as <mount path="/_system/as/governance" overwrite="true">         <instanceId>asgov</instanceId>         <targetPath>/_system/as/governance</targetPath>     </mount> 3. Configuration to be done in AS side (in registry.xml file) mount AS governance registry <mount path="/_...

Pointing governance registry to a MySQL database

Take WSO2 instance (here, I'm taking WSO2 AS) and do the following configurations 1. Modify the master-datasource.xml file <datasource>             <name>asgove</name>             <description>The datasource used for governance registry</description>             <jndiConfig>                 <name>jdbc/asgove</name>             </jndiConfig>             <definition type="RDBMS">                 <configuration>                     <url>jdbc:mysql://localhost:3306/asgove?autoReconnect=true</url>                     <username>root</username>       ...

Why we need atleast 2 WKMs for WSO2 Product cluster

Assume we have an ELB cluster with 2 nodes connected to AS and ESB clusters. (Here the well known members are 2 ELBs) All nodes are connected and working fine (members joined the cluster). Let’s say, if both ELBs were down and then restarted, the ASs and ESBs also have to be restarted to join the cluster again. This is a known issue in Hazelcast. If all WK members fail, the entire cluster has to be restarted. Thats why they have recommend to have two WKs members at minimum. To avoid this situation you can configure the AS and ESB management nodes also as well-known members. Clustering details can found on AS[2] and ESB[3] links. [1] https://docs.wso2.com/display/CLUSTER420/Overview [2] https://docs.wso2.com/display/CLUSTER420/Clustering+Application+Server [3] https://docs.wso2.com/display/CLUSTER420/Clustering+ESB To configure AS & ESB mgt nodes as WK members, follow the following steps - Update the AS mgt node axis2.xml file with WK member details as f...

Define HTTP endpoint in WSO2 ESB 4.6.0

WSO2 ESB 4.6.0 does not support the HTTP endpoint feature as 4.7.0. But we can send a HTTP GET request with query parameters using the property REST_URL_POSTFIX in ESB 4.6.0. Below proxy configuration in 4.6.0 will send a GET request with the query parameters defined in REST_URL_POSTFIX. <proxy xmlns=" http://ws.apache.org/ns/synapse " name="myProxy" transports="https,http" statistics="disable" trace="disable" startOnLoad="true">    <target>       <inSequence>          <property name="uri.var.site" value="33" scope="default" type="STRING"/>          <property xmlns:ns=" http://org.apache.synapse/xsd " name="REST_URL_POSTFIX"          expression="fn:concat('?site=', get-property('uri.var.site'), '&cm_user_pw=' ,12345 , '&account=' , 'accout' , '&key=' , 'te...

How to configure api-key for the back-end service/API during the publishing process

This blog explains how to configure api-key for the back-end service/API during publishing process. The API key would be always constant. The scenario is: one user will register for the public API, obtain the non-expiring API-Key(let's call it as x-api-key) and publish that API on the WSO2 API Manager. Once the API is published the consumer of the API need not pass the x-api-key each time he/she is invoking the API, he/she only needs to pass the WSO2 Access Token and necessary parameters for the API. You can set the api-key as follows 1. Create custom sequence as follows and save it in a xml file. <sequence xmlns="http://ws.apache.org/ns/synapse" name="xxxxx"> <in> <header name="api-key" scope="transport" value="123456789"/> </in> </sequence> name the sequence as <API_NAME>:v<VERSION>--<DIRECTION> 2. login to the https://localhost:9443/carbon and add the xml file to t...