Hi David, No I did not test. AFAIK we haven't tested HA proxy lb extension with k8. You can find the docs related to lb extension in [1].
[1] - https://cwiki.apache.org/confluence/display/STRATOS/4.1.0+Configuring+HAProxy+Load+Balancer Thank you! On Fri, Feb 5, 2016 at 3:43 AM, David Hbase <davidhb...@gmail.com> wrote: > Hi, Pubudu > > Did you test the haproxy-lb-extension with k8s? I not sure how the lb > working with k8s, is there any doc for lb-extension with k8s? > > Thanks > -D > > On Tue, Feb 2, 2016 at 12:02 PM, David Hbase <davidhb...@gmail.com> wrote: > >> So nice, working now! Thanks >> >> -D >> >> On Tue, Feb 2, 2016 at 11:31 AM, David Hbase <davidhb...@gmail.com> >> wrote: >> >>> Thanks for quick help. I am testing now, will update soon >>> >>> -D >>> >>> On Tue, Feb 2, 2016 at 11:06 AM, Pubudu Gunatilaka <pubu...@wso2.com> >>> wrote: >>> >>>> Hi David, >>>> >>>> I have pushed the php docker image to the docker hub [1]. You can pull >>>> the docker image by using 'docker pull stratos/php:4.1.5'. >>>> >>>> Please use the 4.1.5 samples with this docker image. >>>> >>>> [1] - https://hub.docker.com/r/stratos/php/tags/ >>>> >>>> Thank you! >>>> >>>> On Tue, Feb 2, 2016 at 10:18 PM, Pubudu Gunatilaka <pubu...@wso2.com> >>>> wrote: >>>> >>>>> Hi David, >>>>> >>>>> I will try to create the docker image for php and push the image to >>>>> the docker hub. I will update the thread with the progress. >>>>> >>>>> Thank you! >>>>> >>>>> On Tue, Feb 2, 2016 at 8:33 PM, David Hbase <davidhb...@gmail.com> >>>>> wrote: >>>>> >>>>>> Hi, Pubudu >>>>>> >>>>>> Thanks for your update, I am trying the work around now. >>>>>> >>>>>> Since we a re moving to production approach now, would you able to >>>>>> have the 4.1.5 container image ready as soon as possible for 4.1.5? >>>>>> >>>>>> Thanks again! >>>>>> -D >>>>>> >>>>>> On Tue, Feb 2, 2016 at 1:31 AM, Pubudu Gunatilaka <pubu...@wso2.com> >>>>>> wrote: >>>>>> >>>>>>> Hi David, >>>>>>> >>>>>>> It looks like there is a minor issue. I think you are using Stratos >>>>>>> 4.1.5 samples and the docker image is 4.1.4. We haven't published 4.1.5 >>>>>>> php >>>>>>> docker image and php 4.1.4 docker image is not compatible with the >>>>>>> Stratos >>>>>>> 4.1.5 samples. We will publish 4.1.5 php docker image soon. >>>>>>> >>>>>>> For the moment you can try following. >>>>>>> >>>>>>> 1. Make sure you have the following structure in [1]. >>>>>>> >>>>>>> If you have MB_URLS in the sample, use MB_IP and MB_PORT. In Stratos >>>>>>> 4.1.4 we don't support mb credentials. So you can remove MB_USERNAME and >>>>>>> MB_PASSWORD as well. >>>>>>> >>>>>>> Due to the payload values mismatch, python agent has not started. >>>>>>> That is why you cannot see the agent log in the tmp directory except >>>>>>> init.log. >>>>>>> >>>>>>> [1] - >>>>>>> https://github.com/apache/stratos/blob/4.1.4/samples/kubernetes-clusters/kubernetes-cluster-2.json >>>>>>> >>>>>>> Thank you! >>>>>>> >>>>>>> On Tue, Feb 2, 2016 at 1:59 PM, David Hbase <davidhb...@gmail.com> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi, Pubudu >>>>>>>> >>>>>>>> Looks like the payload is not working. Is there any introduction >>>>>>>> for the kubernetes cartridge setup? >>>>>>>> >>>>>>>> etc: python agent and initial scripts for the kubernetes containers? >>>>>>>> >>>>>>>> Thanks >>>>>>>> -D >>>>>>>> >>>>>>>> On Tue, Feb 2, 2016 at 12:27 AM, David Hbase <davidhb...@gmail.com> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi, Pubudu >>>>>>>>> >>>>>>>>> There is no python agent running and /tmp folder is empty in the >>>>>>>>> container. >>>>>>>>> >>>>>>>>> [2016-02-02 08:24:07,821] DEBUG >>>>>>>>> {PluginFileLocator.py:locatePlugins} - __init__.py is not a valid >>>>>>>>> plugin >>>>>>>>> for strategy info_ext >>>>>>>>> [2016-02-02 08:24:07,821] DEBUG {config.py:initialize_extensions} >>>>>>>>> - Found extension executor [ExtensionExecutor] at >>>>>>>>> [/mnt/apache-stratos-python-cartridge-agent-4.1.4/extensions/py/ExtensionExecutor] >>>>>>>>> [2016-02-02 08:24:07,821] INFO {config.py:initialize_extensions} - >>>>>>>>> Activated extension executor [ExtensionExecutor] >>>>>>>>> [2016-02-02 08:24:07,821] DEBUG {config.py:read_property} - >>>>>>>>> Reading property: mb.ip = >>>>>>>>> Traceback (most recent call last): >>>>>>>>> File >>>>>>>>> "/mnt/apache-stratos-python-cartridge-agent-4.1.4/agent.py", line >>>>>>>>> 329, in >>>>>>>>> <module> >>>>>>>>> main() >>>>>>>>> File >>>>>>>>> "/mnt/apache-stratos-python-cartridge-agent-4.1.4/agent.py", line >>>>>>>>> 317, in >>>>>>>>> main >>>>>>>>> cartridge_agent = CartridgeAgent() >>>>>>>>> File >>>>>>>>> "/mnt/apache-stratos-python-cartridge-agent-4.1.4/agent.py", line 44, >>>>>>>>> in >>>>>>>>> __init__ >>>>>>>>> mb_ip = Config.read_property(constants.MB_IP) >>>>>>>>> File >>>>>>>>> "/mnt/apache-stratos-python-cartridge-agent-4.1.4/config.py", line >>>>>>>>> 258, in >>>>>>>>> read_property >>>>>>>>> raise ParameterNotFoundException("Cannot find the value of >>>>>>>>> required parameter: %r" % property_key) >>>>>>>>> exception.ParameterNotFoundException: Cannot find the value of >>>>>>>>> required parameter: 'mb.ip' >>>>>>>>> ^C >>>>>>>>> [1]+ Exit 1 >>>>>>>>> /mnt/apache-stratos-python-cartridge-agent-4.1.4/agent.py >>>>>>>>> >>>>>>>>> Thanks >>>>>>>>> -D >>>>>>>>> >>>>>>>>> On Tue, Feb 2, 2016 at 12:06 AM, David Hbase <davidhb...@gmail.com >>>>>>>>> > wrote: >>>>>>>>> >>>>>>>>>> Great! Checking now. will update soon. >>>>>>>>>> >>>>>>>>>> Thanks >>>>>>>>>> -D >>>>>>>>>> >>>>>>>>>> On Tue, Feb 2, 2016 at 12:05 AM, Pubudu Gunatilaka < >>>>>>>>>> pubu...@wso2.com> wrote: >>>>>>>>>> >>>>>>>>>>> Hi, >>>>>>>>>>> >>>>>>>>>>> In Stratos we do have a python cartridge agent which publishers >>>>>>>>>>> health stats to Stratos manager and handles life cycle in the >>>>>>>>>>> application >>>>>>>>>>> deployment. To narrow down the issue, please follow the steps below. >>>>>>>>>>> >>>>>>>>>>> 1. Find the ip address of the container (or pod). It will be >>>>>>>>>>> shown in the application. If you hover the mouse on top of the >>>>>>>>>>> application >>>>>>>>>>> node you can see the ip address of the pod. >>>>>>>>>>> 2. SSH to K8 master node and again ssh to the pod using >>>>>>>>>>> following commands. >>>>>>>>>>> >>>>>>>>>>> ssh core@<master_ip> >>>>>>>>>>> ssh root@<container_ip> >>>>>>>>>>> >>>>>>>>>>> Use the password as stratos when logging. >>>>>>>>>>> >>>>>>>>>>> 3. Now you can check the agent log in the /tmp directory. Log is >>>>>>>>>>> agent-screen.log. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Thank you! >>>>>>>>>>> >>>>>>>>>>> On Tue, Feb 2, 2016 at 1:20 PM, David Hbase < >>>>>>>>>>> davidhb...@gmail.com> wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi, Pubudu >>>>>>>>>>>> >>>>>>>>>>>> Thanks for your quick response, >>>>>>>>>>>> >>>>>>>>>>>> I found an issue: the docker image tag is a wrong tag ( in our >>>>>>>>>>>> 4.1.5 kubernetes sample code ): >>>>>>>>>>>> "imageId": "stratos/php:4.1.5", can not be found in docker hub, >>>>>>>>>>>> after changed to "imageId": "stratos/php:4.1.4", the php container >>>>>>>>>>>> can be >>>>>>>>>>>> initialized, but can not be activated in Stratos Topology >>>>>>>>>>>> >>>>>>>>>>>> Checked with kubectl get pod, it's already activated. >>>>>>>>>>>> >>>>>>>>>>>> Want to know if Stratos Topology monitor the service/pod status >>>>>>>>>>>> or not? If not, how can be activated? >>>>>>>>>>>> >>>>>>>>>>>> Thanks >>>>>>>>>>>> -D >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Mon, Feb 1, 2016 at 11:25 PM, Pubudu Gunatilaka < >>>>>>>>>>>> pubu...@wso2.com> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Hi David, >>>>>>>>>>>>> >>>>>>>>>>>>> Stratos 4.1.5 supports Kubernetes 1.0.3. >>>>>>>>>>>>> >>>>>>>>>>>>> This error log could encounter due to following reasons. >>>>>>>>>>>>> >>>>>>>>>>>>> 1. Make sure you have pulled the correct php docker image in >>>>>>>>>>>>> kubernetes nodes. (except k8 master node) >>>>>>>>>>>>> Docker image version is specified in the php cartridge. >>>>>>>>>>>>> >>>>>>>>>>>>> 2. If the docker image is there, try executing 'docker ps' in >>>>>>>>>>>>> k8 nodes. Basically you will have to find correct k8 host node >>>>>>>>>>>>> for the >>>>>>>>>>>>> particular pod. 'docker ps' will show the reason for not starting >>>>>>>>>>>>> the >>>>>>>>>>>>> container. >>>>>>>>>>>>> >>>>>>>>>>>>> Thank you! >>>>>>>>>>>>> >>>>>>>>>>>>> On Tue, Feb 2, 2016 at 12:31 PM, David Hbase < >>>>>>>>>>>>> davidhb...@gmail.com> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> Hi, Imesh >>>>>>>>>>>>>> >>>>>>>>>>>>>> Thanks for your reply. I follow the doc to setup the >>>>>>>>>>>>>> Stratos-Kubernetes cluster, but can not have the topology >>>>>>>>>>>>>> activated. >>>>>>>>>>>>>> >>>>>>>>>>>>>> The kubernetes version is: >>>>>>>>>>>>>> kubernetes-1.0.3-0.2.gitb9a88a7.el7.x86_64 >>>>>>>>>>>>>> >>>>>>>>>>>>>> Stratos version: is 4.1.5 >>>>>>>>>>>>>> >>>>>>>>>>>>>> Do we have to upgrade kubernetes to 1.1 or later version? >>>>>>>>>>>>>> >>>>>>>>>>>>>> Is there any suggestion? >>>>>>>>>>>>>> >>>>>>>>>>>>>> Thanks >>>>>>>>>>>>>> -D >>>>>>>>>>>>>> >>>>>>>>>>>>>> {org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas} >>>>>>>>>>>>>> - Could not start container: [application] single-cartridge-app >>>>>>>>>>>>>> [cartridge] php [member] >>>>>>>>>>>>>> single-cartridge-app.my-php.php.domain2393142c-70e0-4c51-8ff0-bcbdd234c1fc >>>>>>>>>>>>>> java.lang.RuntimeException: Pod status did not change to >>>>>>>>>>>>>> running within 60 sec: [application] single-cartridge-app >>>>>>>>>>>>>> [cartridge] php >>>>>>>>>>>>>> [member] >>>>>>>>>>>>>> single-cartridge-app.my-php.php.domain2393142c-70e0-4c51-8ff0-bcbdd234c1fc >>>>>>>>>>>>>> [pod] pod-1 >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.waitForPodToBeActivated(KubernetesIaas.java:347) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.startContainer(KubernetesIaas.java:234) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.startInstance(KubernetesIaas.java:127) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.stratos.cloud.controller.services.impl.InstanceCreator.startInstance(InstanceCreator.java:99) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.stratos.cloud.controller.services.impl.InstanceCreator.run(InstanceCreator.java:67) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >>>>>>>>>>>>>> at java.lang.Thread.run(Thread.java:745) >>>>>>>>>>>>>> TID: [0] [STRATOS] [2016-01-28 01:14:47,976] ERROR >>>>>>>>>>>>>> {org.apache.stratos.cloud.controller.services.impl.InstanceCreator} >>>>>>>>>>>>>> - >>>>>>>>>>>>>> Could not start instance: [cartridge-type] php [cluster-id] >>>>>>>>>>>>>> single-cartridge-app.my-php.php.domain >>>>>>>>>>>>>> java.lang.RuntimeException: Could not start container: >>>>>>>>>>>>>> [application] single-cartridge-app [cartridge] php [member] >>>>>>>>>>>>>> single-cartridge-app.my-php.php.domain2393142c-70e0-4c51-8ff0-bcbdd234c1fc >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.startContainer(KubernetesIaas.java:248) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.startInstance(KubernetesIaas.java:127) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.stratos.cloud.controller.services.impl.InstanceCreator.startInstance(InstanceCreator.java:99) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.stratos.cloud.controller.services.impl.InstanceCreator.run(InstanceCreator.java:67) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >>>>>>>>>>>>>> at java.lang.Thread.run(Thread.java:745) >>>>>>>>>>>>>> Caused by: java.lang.RuntimeException: Pod status did not >>>>>>>>>>>>>> change to running within 60 sec: [application] >>>>>>>>>>>>>> single-cartridge-app >>>>>>>>>>>>>> [cartridge] php [member] >>>>>>>>>>>>>> single-cartridge-app.my-php.php.domain2393142c-70e0-4c51-8ff0-bcbdd234c1fc >>>>>>>>>>>>>> [pod] pod-1 >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.waitForPodToBeActivated(KubernetesIaas.java:347) >>>>>>>>>>>>>> at >>>>>>>>>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.startContainer(KubernetesIaas.java:234) >>>>>>>>>>>>>> ... 6 more >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Wed, Jan 27, 2016 at 1:44 AM, Imesh Gunaratne < >>>>>>>>>>>>>> im...@apache.org> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> Hi David, >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Tue, Jan 26, 2016 at 8:28 PM, David Hbase < >>>>>>>>>>>>>>> davidhb...@gmail.com> wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Hi, Imesh >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> I have realized the tenancy routing service, but still >>>>>>>>>>>>>>>> issues with Kubernetes. Would like to know if there any >>>>>>>>>>>>>>>> updated kubernetes >>>>>>>>>>>>>>>> document? etc: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> AFAIK the documentation is updated, what were the issues you >>>>>>>>>>>>>>> got? >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> 1. Auto scaling with Kubernetes? ( Dynamic add the minions >>>>>>>>>>>>>>>> without interrupt the curretn running services ?) >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Kubernetes (K8S) nodes can be autoscaled by creating a >>>>>>>>>>>>>>> separate composite application for K8S. Then another >>>>>>>>>>>>>>> application can be >>>>>>>>>>>>>>> created for the required product to be run on the above K8S >>>>>>>>>>>>>>> cluster. >>>>>>>>>>>>>>> However dynamic load balancing would be a problem for the pods >>>>>>>>>>>>>>> that run on >>>>>>>>>>>>>>> K8S because Stratos topology does not get updated with Node IPs >>>>>>>>>>>>>>> when K8S >>>>>>>>>>>>>>> nodes are autoscaled. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> 2. Application Topology can display the service and pods in >>>>>>>>>>>>>>>> the Kubernetes cluster? >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> No, currently the topology view in the Stratos UI does not >>>>>>>>>>>>>>> show services or pords. However Kubernetes Cockpit UI can be >>>>>>>>>>>>>>> used for this. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Thanks >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Wed, Jan 27, 2016 at 2:40 PM, David Hbase < >>>>>>>>>>>>>>> davidhb...@gmail.com> wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Thanks Chamila, >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Got great answers with the Kubernetes auto scaling (via >>>>>>>>>>>>>>>> node v 1.1 and or node). But would like to know what's the >>>>>>>>>>>>>>>> Stratos auto >>>>>>>>>>>>>>>> scaling functions with Kubernetes? >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> etc: in Stratos we setup the auto scaling policy for the >>>>>>>>>>>>>>>> kubernetes cluster, when and how can this auto scaling policy >>>>>>>>>>>>>>>> work? ( will >>>>>>>>>>>>>>>> scaling the new pod or node ? ) >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Thanks >>>>>>>>>>>>>>>> -D >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> On Tue, Jan 26, 2016 at 11:16 AM, Chamila De Alwis < >>>>>>>>>>>>>>>> chami...@wso2.com> wrote: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Hi David, >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> On Tue, Jan 26, 2016 at 8:28 PM, David Hbase < >>>>>>>>>>>>>>>>> davidhb...@gmail.com> wrote: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> 1. Auto scaling with Kubernetes? ( Dynamic add the >>>>>>>>>>>>>>>>>> minions without interrupt the curretn running services ?) >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> In Kubernetes, the Node Controller is the component in >>>>>>>>>>>>>>>>> charge of registration and revocation of Nodes (minions) in a >>>>>>>>>>>>>>>>> cluster. >>>>>>>>>>>>>>>>> However as the Kubernetes documentation states [1], it doesn't >>>>>>>>>>>>>>>>> automatically provision a new node, simply performing the >>>>>>>>>>>>>>>>> registry task for >>>>>>>>>>>>>>>>> the list of nodes. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Therefore, any autoscaling of Nodes would have to be done >>>>>>>>>>>>>>>>> at a different layer, based on metrics like CPU usage. >>>>>>>>>>>>>>>>> CloudWatch for EC2 >>>>>>>>>>>>>>>>> or Heat for OpenStack are few examples of achieving this. >>>>>>>>>>>>>>>>> Nodes will have >>>>>>>>>>>>>>>>> to be configured to auto register with the proxy. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> If you're looking for Pod autoscaling, this is already >>>>>>>>>>>>>>>>> implemented in Kubernetes 1.1 [2]. Autoscaling is based on >>>>>>>>>>>>>>>>> CPU usage. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> 2. Application Topology can display the service and pods >>>>>>>>>>>>>>>>>> in the Kubernetes cluster? >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> In Stratos, the Application Topology is the view of the >>>>>>>>>>>>>>>>> Composite Application deployment. It doesn't show the IaaS >>>>>>>>>>>>>>>>> specific details >>>>>>>>>>>>>>>>> such as Services and Pods. These details will have to be >>>>>>>>>>>>>>>>> retrieved from the >>>>>>>>>>>>>>>>> Kube-UI. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> [1] - >>>>>>>>>>>>>>>>> http://kubernetes.io/v1.1/docs/admin/node.html#node-controller >>>>>>>>>>>>>>>>> [2] - >>>>>>>>>>>>>>>>> http://kubernetes.io/v1.1/docs/user-guide/horizontal-pod-autoscaler.html >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Regards, >>>>>>>>>>>>>>>>> Chamila de Alwis >>>>>>>>>>>>>>>>> Committer and PMC Member - Apache Stratos >>>>>>>>>>>>>>>>> Software Engineer | WSO2 | +94772207163 >>>>>>>>>>>>>>>>> Blog: code.chamiladealwis.com >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>> Imesh Gunaratne >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Senior Technical Lead, WSO2 >>>>>>>>>>>>>>> Committer & PMC Member, Apache Stratos >>>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> *Pubudu Gunatilaka* >>>>>>>>>>>>> Committer and PMC Member - Apache Stratos >>>>>>>>>>>>> Software Engineer >>>>>>>>>>>>> WSO2, Inc.: http://wso2.com >>>>>>>>>>>>> mobile : +94774079049 <%2B94772207163> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> *Pubudu Gunatilaka* >>>>>>>>>>> Committer and PMC Member - Apache Stratos >>>>>>>>>>> Software Engineer >>>>>>>>>>> WSO2, Inc.: http://wso2.com >>>>>>>>>>> mobile : +94774079049 <%2B94772207163> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Pubudu Gunatilaka* >>>>>>> Committer and PMC Member - Apache Stratos >>>>>>> Software Engineer >>>>>>> WSO2, Inc.: http://wso2.com >>>>>>> mobile : +94774079049 <%2B94772207163> >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Pubudu Gunatilaka* >>>>> Committer and PMC Member - Apache Stratos >>>>> Software Engineer >>>>> WSO2, Inc.: http://wso2.com >>>>> mobile : +94774079049 <%2B94772207163> >>>>> >>>>> >>>> >>>> >>>> -- >>>> *Pubudu Gunatilaka* >>>> Committer and PMC Member - Apache Stratos >>>> Software Engineer >>>> WSO2, Inc.: http://wso2.com >>>> mobile : +94774079049 <%2B94772207163> >>>> >>>> >>> >> > -- *Pubudu Gunatilaka* Committer and PMC Member - Apache Stratos Software Engineer WSO2, Inc.: http://wso2.com mobile : +94774079049 <%2B94772207163>