You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stratos.apache.org by Isuru Haththotuwa <is...@apache.org> on 2014/09/22 07:03:15 UTC

[Discuss] Planing for Service Grouping - M1

Hi Devs,

The purpose of this thread is to discuss $subject.

I listed down some of the Tasks that we need for the initial milestone of
Service Grouping:

Stratos Manager Rest API Support for Composite Applications)
- Deploying Group Definitions
- Deploying Compoite App Definitions
- Listing Deployed Composite Apps
- Exposing Composite App's instance informationPersist Group Definitions in
CC- Validate the Group Definition (check if any cartridges and/or sub
groups referred are already deployed)
- Persist the Group Definition deployed in CCParse the Application
Definition in CC and update Topology- Generate a unique key for the app
- Parse app definition
- Update topology
- Send Application Created event (with Subcription data)Create and Persist
Composite Application Subscriptions in SM from the Topology after the
ApplicationCreatedEvent- Create Composite Subscriptions (can extend the
current Subscription model) with the help of information sent using the
Application Create Event and meta data service (if required)
- Persist them in SMPayloads and information sharing for the composite app
model(Using metadata service)- Building initial payload with required
initial amount of info
- Specifying the information each member should expose/query (to get
information about dependents), using the meta data serviceMeta Data Service
Improvements- Improve the meta data service to put and get informations,
with support for getting dependent information for GroupingGeneric Meta
Data Client Component- A separate component to interact with the meta data
serviceAutoscaler acting upon Application Created event- Create App Monitor
and Group Monitor(s)
- Create the Cluster Monitors
- Asking to spawn instances in the relevant order for the clusterCartridge
Agent to support with Composite App events- Includes app and group as the
reference along with clusters
Please add anything that you think should come under M1. We can use the
same thread to keep track of progress as well.


-- 
Thanks and Regards,

Isuru H.
+94 716 358 048* <http://wso2.com/>*


* <http://wso2.com/>*

Re: [Discuss] Planing for Service Grouping - M1

Posted by Reka Thirunavukkarasu <re...@wso2.com>.
Hi all,

I have created the version 4.2.0-M1 in stratos jira. Can we all create
jiras which will go to 4.2.0-M1 developer preview and update the progress
on it accordingly? So that we can track it from the jiras and make the code
ready for 4.2.0-M1 developer preview..

Thanks,
Reka



On Fri, Sep 26, 2014 at 6:46 PM, Isuru Haththotuwa <is...@apache.org>
wrote:

> Hi all,
>
> We (Reka, myself and Udara) worked and tested deploying an Application
> with a single cartridge subscription. It worked as expected; the Cluster
> Activated and Application Activated events were received successfully.
> Please note that we tested without loadbalancers and without using git
> repositories.
>
> @ Martin: I have attached the artifacts that we used for testing. Would
> you be able to test the same flow as well?
>
>
> On Thu, Sep 25, 2014 at 10:41 PM, Udara Liyanage <ud...@wso2.com> wrote:
>
>> Hi,
>>
>> I have started end to end testing of grouping release M1.
>> I were able to deploy an app successfully and was able to spin up an
>> instance.
>>
>> However I noticed the following errors [1,2], and am currently looking at
>> them.
>>
>> [1].
>>
>> WARN
>> {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
>> -  Member already activated: [service] php [cluster] myphp.php.domain
>> [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
>> [2014-09-25 15:30:24,165] ERROR
>> {org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver}
>> -  Error processing event
>> java.lang.NullPointerException
>> at
>> org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver$12.onEvent(AutoscalerTopologyEventReceiver.java:439)
>> at
>> org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42)
>> at java.util.Observable.notifyObservers(Observable.java:159)
>> at
>> org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51)
>> at
>> org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor.process(MemberActivatedMessageProcessor.java:153)
>> at
>> org.apache.stratos.messaging.message.processor.topology.MemberStartedMessageProcessor.process(MemberStartedMessageProcessor.java:144)
>> at
>> org.apache.stratos.messaging.message.processor.topology.InstanceSpawnedMessageProcessor.process(InstanceSpawnedMessageProcessor.java:135)
>> at
>> org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:108)
>> at
>> org.apache.stratos.messaging.message.processor.topology.ClusterMaintenanceModeMessageProcessor.process(ClusterMaintenanceModeMessageProcessor.java:106)
>> at
>> org.apache.stratos.messaging.message.processor.topology.ClusterActivatedProcessor.process(ClusterActivatedProcessor.java:113)
>> at
>> org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:117)
>> at
>> org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:87)
>> at
>> org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:87)
>> at
>> org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:151)
>> at
>> org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60)
>> at
>> org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:77)
>> at java.lang.Thread.run(Thread.java:745)
>> [2014-09-25 15:30:24,166]  WARN
>> {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
>> -  Member already activated: [service] php [cluster] myphp.php.domain
>> [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
>>
>> [2].
>>
>> deId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
>> cartridgeType=php, privateIpAddress=10.142.153.174,
>> publicIpAddress=54.255.76.162, allocatedIpAddress=null,
>> initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
>> java.lang.NullPointerException
>> at
>> org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
>> at
>> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
>> 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)
>> Exception in thread "pool-39-thread-3"
>> org.apache.stratos.cloud.controller.exception.CloudControllerException:
>> Error occurred while allocating an ip address. MemberContext
>> [memberId=myphp.php.domaina62f3cc3-9b68-4d04-b617-c3e24e6a6eb8,
>> nodeId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
>> cartridgeType=php, privateIpAddress=10.142.153.174,
>> publicIpAddress=54.255.76.162, allocatedIpAddress=null,
>> initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
>> at
>> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:931)
>> 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.NullPointerException
>> at
>> org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
>> at
>> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
>> ... 3 more
>>
>>
>> On Wed, Sep 24, 2014 at 10:21 PM, Udara Liyanage <ud...@wso2.com> wrote:
>>
>>> Hi,
>>>
>>> I have tested adding/get property/properties via curl. addPropery to
>>> cluster is tested with generic metadata client. Need to add all APIs
>>> available for metadata client.
>>>
>>> On Wed, Sep 24, 2014 at 9:57 PM, Reka Thirunavukkarasu <re...@wso2.com>
>>> wrote:
>>>
>>>> Hi
>>>>
>>>> I'm in the process of testing hierarchical monitors. Will update the
>>>> progress once i get into to a working state..
>>>>
>>>> Thanks,
>>>> Reka
>>>>
>>>> On Wed, Sep 24, 2014 at 9:34 PM, Isuru Haththotuwa <is...@apache.org>
>>>> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> Tested the following flow:
>>>>>
>>>>>    1. Group Deployment.
>>>>>    2. Application Deployment.
>>>>>    3. Publishing information to meta data service.
>>>>>
>>>>> In step #3, encountered a deadlock scenario where when we try to
>>>>> publish to the meta data service while looping through the properties.
>>>>> Myself and Udara are looking in to this.
>>>>>
>>>>> On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <isuruh@apache.org
>>>>> > wrote:
>>>>>
>>>>>> Hi Devs,
>>>>>>
>>>>>> The purpose of this thread is to discuss $subject.
>>>>>>
>>>>>> I listed down some of the Tasks that we need for the initial
>>>>>> milestone of Service Grouping:
>>>>>>
>>>>>> Stratos Manager Rest API Support for Composite Applications)
>>>>>> - Deploying Group Definitions
>>>>>> - Deploying Compoite App Definitions
>>>>>> - Listing Deployed Composite Apps
>>>>>> - Exposing Composite App's instance informationPersist Group
>>>>>> Definitions in CC- Validate the Group Definition (check if any
>>>>>> cartridges and/or sub groups referred are already deployed)
>>>>>> - Persist the Group Definition deployed in CCParse the Application
>>>>>> Definition in CC and update Topology- Generate a unique key for the
>>>>>> app
>>>>>> - Parse app definition
>>>>>> - Update topology
>>>>>> - Send Application Created event (with Subcription data)Create and
>>>>>> Persist Composite Application Subscriptions in SM from the Topology after
>>>>>> the ApplicationCreatedEvent- Create Composite Subscriptions (can
>>>>>> extend the current Subscription model) with the help of information sent
>>>>>> using the Application Create Event and meta data service (if required)
>>>>>> - Persist them in SMPayloads and information sharing for the
>>>>>> composite app model(Using metadata service)- Building initial
>>>>>> payload with required initial amount of info
>>>>>> - Specifying the information each member should expose/query (to get
>>>>>> information about dependents), using the meta data serviceMeta Data
>>>>>> Service Improvements- Improve the meta data service to put and get
>>>>>> informations, with support for getting dependent information for GroupingGeneric
>>>>>> Meta Data Client Component- A separate component to interact with
>>>>>> the meta data serviceAutoscaler acting upon Application Created event-
>>>>>> Create App Monitor and Group Monitor(s)
>>>>>> - Create the Cluster Monitors
>>>>>> - Asking to spawn instances in the relevant order for the clusterCartridge
>>>>>> Agent to support with Composite App events- Includes app and group
>>>>>> as the reference along with clusters
>>>>>> Please add anything that you think should come under M1. We can use
>>>>>> the same thread to keep track of progress as well.
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Thanks and Regards,
>>>>>>
>>>>>> Isuru H.
>>>>>> +94 716 358 048
>>>>>>
>>>>>> --
>>>>>> <%2B94%20716%20358%20048>
>>>>>> Thanks and Regards,
>>>>>>
>>>>>> Isuru H.
>>>>>> <%2B94%20716%20358%20048>
>>>>>> +94 716 358 048* <http://wso2.com/>*
>>>>>>
>>>>>>
>>>>>> * <http://wso2.com/>*
>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>> --
>>>> Reka Thirunavukkarasu
>>>> Senior Software Engineer,
>>>> WSO2, Inc.:http://wso2.com,
>>>> Mobile: +94776442007
>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>>
>>> Udara Liyanage
>>> Software Engineer
>>> WSO2, Inc.: http://wso2.com
>>> lean. enterprise. middleware
>>>
>>> web: http://udaraliyanage.wordpress.com
>>> phone: +94 71 443 6897
>>>
>>
>>
>>
>> --
>>
>> Udara Liyanage
>> Software Engineer
>> WSO2, Inc.: http://wso2.com
>> lean. enterprise. middleware
>>
>> web: http://udaraliyanage.wordpress.com
>> phone: +94 71 443 6897
>>
>> --
>> Thanks and Regards,
>>
>> Isuru H.
>> +94 716 358 048* <http://wso2.com/>*
>>
>>
>> * <http://wso2.com/>*
>>
>>
>>


-- 
Reka Thirunavukkarasu
Senior Software Engineer,
WSO2, Inc.:http://wso2.com,
Mobile: +94776442007

RE: [Discuss] Planing for Service Grouping - M1

Posted by "Martin Eppel (meppel)" <me...@cisco.com>.
Ok

From: isuruh@wso2.com [mailto:isuruh@wso2.com] On Behalf Of Isuru Haththotuwa
Sent: Friday, September 26, 2014 6:16 AM
To: dev
Subject: Re: [Discuss] Planing for Service Grouping - M1

Hi all,
We (Reka, myself and Udara) worked and tested deploying an Application with a single cartridge subscription. It worked as expected; the Cluster Activated and Application Activated events were received successfully. Please note that we tested without loadbalancers and without using git repositories.
@ Martin: I have attached the artifacts that we used for testing. Would you be able to test the same flow as well?

On Thu, Sep 25, 2014 at 10:41 PM, Udara Liyanage <ud...@wso2.com>> wrote:
Hi,

I have started end to end testing of grouping release M1.
I were able to deploy an app successfully and was able to spin up an instance.

However I noticed the following errors [1,2], and am currently looking at them.

[1].

WARN {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor} -  Member already activated: [service] php [cluster] myphp.php.domain [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
[2014-09-25 15:30:24,165] ERROR {org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver} -  Error processing event
java.lang.NullPointerException
at org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver$12.onEvent(AutoscalerTopologyEventReceiver.java:439)
at org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42)
at java.util.Observable.notifyObservers(Observable.java:159)
at org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51)
at org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor.process(MemberActivatedMessageProcessor.java:153)
at org.apache.stratos.messaging.message.processor.topology.MemberStartedMessageProcessor.process(MemberStartedMessageProcessor.java:144)
at org.apache.stratos.messaging.message.processor.topology.InstanceSpawnedMessageProcessor.process(InstanceSpawnedMessageProcessor.java:135)
at org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:108)
at org.apache.stratos.messaging.message.processor.topology.ClusterMaintenanceModeMessageProcessor.process(ClusterMaintenanceModeMessageProcessor.java:106)
at org.apache.stratos.messaging.message.processor.topology.ClusterActivatedProcessor.process(ClusterActivatedProcessor.java:113)
at org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:117)
at org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:87)
at org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:87)
at org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:151)
at org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60)
at org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:77)
at java.lang.Thread.run(Thread.java:745)
[2014-09-25 15:30:24,166]  WARN {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor} -  Member already activated: [service] php [cluster] myphp.php.domain [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c

[2].

deId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain, cartridgeType=php, privateIpAddress=10.142.153.174, publicIpAddress=54.255.76.162, allocatedIpAddress=null, initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
java.lang.NullPointerException
at org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
at org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
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)
Exception in thread "pool-39-thread-3" org.apache.stratos.cloud.controller.exception.CloudControllerException: Error occurred while allocating an ip address. MemberContext [memberId=myphp.php.domaina62f3cc3-9b68-4d04-b617-c3e24e6a6eb8, nodeId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain, cartridgeType=php, privateIpAddress=10.142.153.174, publicIpAddress=54.255.76.162, allocatedIpAddress=null, initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
at org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:931)
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.NullPointerException
at org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
at org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
... 3 more


On Wed, Sep 24, 2014 at 10:21 PM, Udara Liyanage <ud...@wso2.com>> wrote:
Hi,

I have tested adding/get property/properties via curl. addPropery to cluster is tested with generic metadata client. Need to add all APIs available for metadata client.

On Wed, Sep 24, 2014 at 9:57 PM, Reka Thirunavukkarasu <re...@wso2.com>> wrote:
Hi

I'm in the process of testing hierarchical monitors. Will update the progress once i get into to a working state..

Thanks,
Reka

On Wed, Sep 24, 2014 at 9:34 PM, Isuru Haththotuwa <is...@apache.org>> wrote:
Hi,
Tested the following flow:

  1.  Group Deployment.
  2.  Application Deployment.
  3.  Publishing information to meta data service.

In step #3, encountered a deadlock scenario where when we try to publish to the meta data service while looping through the properties. Myself and Udara are looking in to this.

On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <is...@apache.org>> wrote:
Hi Devs,
The purpose of this thread is to discuss $subject.
I listed down some of the Tasks that we need for the initial milestone of Service Grouping:
Stratos Manager Rest API Support for Composite Applications)

- Deploying Group Definitions
- Deploying Compoite App Definitions
- Listing Deployed Composite Apps
- Exposing Composite App's instance information

Persist Group Definitions in CC

- Validate the Group Definition (check if any cartridges and/or sub groups referred are already deployed)
- Persist the Group Definition deployed in CC

Parse the Application Definition in CC and update Topology

- Generate a unique key for the app
- Parse app definition
- Update topology
- Send Application Created event (with Subcription data)

Create and Persist Composite Application Subscriptions in SM from the Topology after the ApplicationCreatedEvent

- Create Composite Subscriptions (can extend the current Subscription model) with the help of information sent using the Application Create Event and meta data service (if required)
- Persist them in SM

Payloads and information sharing for the composite app model(Using metadata service)

- Building initial payload with required initial amount of info
- Specifying the information each member should expose/query (to get information about dependents), using the meta data service

Meta Data Service Improvements

- Improve the meta data service to put and get informations, with support for getting dependent information for Grouping

Generic Meta Data Client Component

- A separate component to interact with the meta data service

Autoscaler acting upon Application Created event

- Create App Monitor and Group Monitor(s)
- Create the Cluster Monitors
- Asking to spawn instances in the relevant order for the cluster

Cartridge Agent to support with Composite App events

- Includes app and group as the reference along with clusters


Please add anything that you think should come under M1. We can use the same thread to keep track of progress as well.


--
Thanks and Regards,

Isuru H.
+94 716 358 048

--
<tel:%2B94%20716%20358%20048>
<tel:%2B94%20716%20358%20048>
Thanks and Regards,

Isuru H.

<tel:%2B94%20716%20358%20048>

+94 716 358 048<tel:%2B94%20716%20358%20048>






--
Reka Thirunavukkarasu
Senior Software Engineer,
WSO2, Inc.:http://wso2.com,
Mobile: +94776442007<tel:%2B94776442007>




--

Udara Liyanage
Software Engineer
WSO2, Inc.: http://wso2.com<http://wso2.com/>
lean. enterprise. middleware
web: http://udaraliyanage.wordpress.com
phone: +94 71 443 6897



--

Udara Liyanage
Software Engineer
WSO2, Inc.: http://wso2.com<http://wso2.com/>
lean. enterprise. middleware
web: http://udaraliyanage.wordpress.com
phone: +94 71 443 6897

--
Thanks and Regards,

Isuru H.
+94 716 358 048




Re: [Discuss] Planing for Service Grouping - M1

Posted by Isuru Haththotuwa <is...@apache.org>.
On Sat, Sep 27, 2014 at 3:30 AM, Isuru Haththotuwa <is...@apache.org>
wrote:

> Hi Martin,
>
> Thanks for reporting this, it was an issue in a debug log. You got this
> since you had enabled debug logs. Its not fixed. Can you please check again
> with the application definition that I sent earlier.
>
Sorry, meant to say it is now fixed. Please check with the application
definition that I sent previously.

>
> On Sat, Sep 27, 2014 at 2:24 AM, Martin Eppel (meppel) <me...@cisco.com>
> wrote:
>
>>
>>
>> Hi Isuru, Rekha and Udara
>>
>>
>>
>> I was also able to deploy successfully an application, however, without
>> defining the group subscription in the application definition it will throw
>> an exception (see below). I attached my application artifacts. If you are
>> interested I kept the log (with debug enabled),
>>
>>
>>
>> Thanks
>>
>>
>>
>> Martin
>>
>>
>>
>> Exception thrown when deploying application definition without group
>> subscription:
>>
>>
>>
>> TID: [0] [STRATOS] [2014-09-26 18:56:02,721] ERROR
>> {org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver} -  Exception
>> occurred while trying to invoke service method deployApplicationDefinition
>> {org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver}
>>
>> java.lang.NullPointerException
>>
>>         at
>> org.apache.stratos.cloud.controller.application.parser.DefaultApplicationParser.parse(DefaultApplicationParser.java:81)
>>
>>         at
>> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl.deployApplicationDefinition(CloudControllerServiceImpl.java:1437)
>>
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>
>>         at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>
>>         at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>
>>         at java.lang.reflect.Method.invoke(Method.java:606)
>>
>>
>>
>> *From:* isuruh@wso2.com [mailto:isuruh@wso2.com] *On Behalf Of *Isuru
>> Haththotuwa
>> *Sent:* Friday, September 26, 2014 6:16 AM
>> *To:* dev
>> *Subject:* Re: [Discuss] Planing for Service Grouping - M1
>>
>>
>>
>> Hi all,
>>
>> We (Reka, myself and Udara) worked and tested deploying an Application
>> with a single cartridge subscription. It worked as expected; the Cluster
>> Activated and Application Activated events were received successfully.
>> Please note that we tested without loadbalancers and without using git
>> repositories.
>>
>> @ Martin: I have attached the artifacts that we used for testing. Would
>> you be able to test the same flow as well?
>>
>>
>>
>> On Thu, Sep 25, 2014 at 10:41 PM, Udara Liyanage <ud...@wso2.com> wrote:
>>
>> Hi,
>>
>>
>>
>> I have started end to end testing of grouping release M1.
>>
>> I were able to deploy an app successfully and was able to spin up an
>> instance.
>>
>>
>>
>> However I noticed the following errors [1,2], and am currently looking at
>> them.
>>
>>
>>
>> [1].
>>
>>
>>
>> WARN
>> {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
>> -  Member already activated: [service] php [cluster] myphp.php.domain
>> [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
>>
>> [2014-09-25 15:30:24,165] ERROR
>> {org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver}
>> -  Error processing event
>>
>> java.lang.NullPointerException
>>
>> at
>> org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver$12.onEvent(AutoscalerTopologyEventReceiver.java:439)
>>
>> at
>> org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42)
>>
>> at java.util.Observable.notifyObservers(Observable.java:159)
>>
>> at
>> org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51)
>>
>> at
>> org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor.process(MemberActivatedMessageProcessor.java:153)
>>
>> at
>> org.apache.stratos.messaging.message.processor.topology.MemberStartedMessageProcessor.process(MemberStartedMessageProcessor.java:144)
>>
>> at
>> org.apache.stratos.messaging.message.processor.topology.InstanceSpawnedMessageProcessor.process(InstanceSpawnedMessageProcessor.java:135)
>>
>> at
>> org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:108)
>>
>> at
>> org.apache.stratos.messaging.message.processor.topology.ClusterMaintenanceModeMessageProcessor.process(ClusterMaintenanceModeMessageProcessor.java:106)
>>
>> at
>> org.apache.stratos.messaging.message.processor.topology.ClusterActivatedProcessor.process(ClusterActivatedProcessor.java:113)
>>
>> at
>> org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:117)
>>
>> at
>> org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:87)
>>
>> at
>> org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:87)
>>
>> at
>> org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:151)
>>
>> at
>> org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60)
>>
>> at
>> org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:77)
>>
>> at java.lang.Thread.run(Thread.java:745)
>>
>> [2014-09-25 15:30:24,166]  WARN
>> {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
>> -  Member already activated: [service] php [cluster] myphp.php.domain
>> [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
>>
>>
>>
>> [2].
>>
>>
>>
>> deId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
>> cartridgeType=php, privateIpAddress=10.142.153.174,
>> publicIpAddress=54.255.76.162, allocatedIpAddress=null,
>> initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
>>
>> java.lang.NullPointerException
>>
>> at
>> org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
>>
>> at
>> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
>>
>> 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)
>>
>> Exception in thread "pool-39-thread-3"
>> org.apache.stratos.cloud.controller.exception.CloudControllerException:
>> Error occurred while allocating an ip address. MemberContext
>> [memberId=myphp.php.domaina62f3cc3-9b68-4d04-b617-c3e24e6a6eb8,
>> nodeId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
>> cartridgeType=php, privateIpAddress=10.142.153.174,
>> publicIpAddress=54.255.76.162, allocatedIpAddress=null,
>> initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
>>
>> at
>> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:931)
>>
>> 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.NullPointerException
>>
>> at
>> org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
>>
>> at
>> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
>>
>> ... 3 more
>>
>>
>>
>>
>>
>> On Wed, Sep 24, 2014 at 10:21 PM, Udara Liyanage <ud...@wso2.com> wrote:
>>
>> Hi,
>>
>>
>>
>> I have tested adding/get property/properties via curl. addPropery to
>> cluster is tested with generic metadata client. Need to add all APIs
>> available for metadata client.
>>
>>
>>
>> On Wed, Sep 24, 2014 at 9:57 PM, Reka Thirunavukkarasu <re...@wso2.com>
>> wrote:
>>
>> Hi
>>
>>
>>
>> I'm in the process of testing hierarchical monitors. Will update the
>> progress once i get into to a working state..
>>
>>
>>
>> Thanks,
>>
>> Reka
>>
>>
>>
>> On Wed, Sep 24, 2014 at 9:34 PM, Isuru Haththotuwa <is...@apache.org>
>> wrote:
>>
>> Hi,
>>
>> Tested the following flow:
>>
>>    1. Group Deployment.
>>    2. Application Deployment.
>>    3. Publishing information to meta data service.
>>
>> In step #3, encountered a deadlock scenario where when we try to publish
>> to the meta data service while looping through the properties. Myself and
>> Udara are looking in to this.
>>
>>
>>
>> On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <is...@apache.org>
>> wrote:
>>
>> Hi Devs,
>>
>> The purpose of this thread is to discuss $subject.
>>
>> I listed down some of the Tasks that we need for the initial milestone of
>> Service Grouping:
>>
>> Stratos Manager Rest API Support for Composite Applications)
>>
>> - Deploying Group Definitions
>> - Deploying Compoite App Definitions
>> - Listing Deployed Composite Apps
>> - Exposing Composite App's instance information
>>
>> Persist Group Definitions in CC
>>
>> - Validate the Group Definition (check if any cartridges and/or sub
>> groups referred are already deployed)
>> - Persist the Group Definition deployed in CC
>>
>> Parse the Application Definition in CC and update Topology
>>
>> - Generate a unique key for the app
>> - Parse app definition
>> - Update topology
>> - Send Application Created event (with Subcription data)
>>
>> Create and Persist Composite Application Subscriptions in SM from the
>> Topology after the ApplicationCreatedEvent
>>
>> - Create Composite Subscriptions (can extend the current Subscription
>> model) with the help of information sent using the Application Create Event
>> and meta data service (if required)
>> - Persist them in SM
>>
>> Payloads and information sharing for the composite app model(Using
>> metadata service)
>>
>> - Building initial payload with required initial amount of info
>> - Specifying the information each member should expose/query (to get
>> information about dependents), using the meta data service
>>
>> Meta Data Service Improvements
>>
>> - Improve the meta data service to put and get informations, with support
>> for getting dependent information for Grouping
>>
>> Generic Meta Data Client Component
>>
>> - A separate component to interact with the meta data service
>>
>> Autoscaler acting upon Application Created event
>>
>> - Create App Monitor and Group Monitor(s)
>> - Create the Cluster Monitors
>> - Asking to spawn instances in the relevant order for the cluster
>>
>> Cartridge Agent to support with Composite App events
>>
>> - Includes app and group as the reference along with clusters
>>
>>
>>
>> Please add anything that you think should come under M1. We can use the
>> same thread to keep track of progress as well.
>>
>>
>>
>> --
>>
>> Thanks and Regards,
>>
>> Isuru H.
>>
>> +94 716 358 048
>>
>> --
>>  <%2B94%20716%20358%20048>
>>
>>  <%2B94%20716%20358%20048>
>>
>>
>>
>>
>>
>> *Thanks and Regards, Isuru H. <%2B94%20716%20358%20048>*
>>
>>
>>
>> +94 716 358 048
>>
>>
>>
>>
>>
>>
>>
>> --
>>
>> Reka Thirunavukkarasu
>> Senior Software Engineer,
>> WSO2, Inc.:http://wso2.com,
>>
>> Mobile: +94776442007
>>
>>
>>
>>
>>
>>
>>
>> --
>>
>>
>> Udara Liyanage
>>
>> Software Engineer
>>
>> WSO2, Inc.: http://wso2.com
>>
>> lean. enterprise. middleware
>>
>> web: http://udaraliyanage.wordpress.com
>>
>> phone: +94 71 443 6897
>>
>>
>>
>>
>>
>> --
>>
>>
>> Udara Liyanage
>>
>> Software Engineer
>>
>> WSO2, Inc.: http://wso2.com
>>
>> lean. enterprise. middleware
>>
>> web: http://udaraliyanage.wordpress.com
>>
>> phone: +94 71 443 6897
>>
>> --
>>
>> Thanks and Regards,
>>
>> Isuru H.
>>
>> +94 716 358 048
>>
>> --
>> <%2B94%20716%20358%20048>
>> Thanks and Regards,
>>
>> Isuru H.
>> <%2B94%20716%20358%20048>
>> +94 716 358 048
>>
>> --
>> <%2B94%20716%20358%20048>
>> Thanks and Regards,
>>
>> Isuru H.
>> <%2B94%20716%20358%20048>
>> +94 716 358 048* <http://wso2.com/>*
>>
>>
>> * <http://wso2.com/>*
>>
>>
>>

Re: [Discuss] Planing for Service Grouping - M1

Posted by Isuru Haththotuwa <is...@apache.org>.
Hi Martin,

On Sat, Sep 27, 2014 at 4:09 AM, Martin Eppel (meppel) <me...@cisco.com>
wrote:

>  Hi Isuru,
>
>
>
> Just confirmed, with DEBUG disabled the exception goes away,
>
Thanks for the update. I pushed a fix, now the error should not be there
even when you enable DEBUG logs.

>
>
> Thanks
>
>
>
> Martin
>
>
>
> *From:* isuruh@wso2.com [mailto:isuruh@wso2.com] *On Behalf Of *Isuru
> Haththotuwa
> *Sent:* Friday, September 26, 2014 3:01 PM
> *To:* Martin Eppel (meppel)
> *Cc:* Reka Thirunavukkarasu (reka@wso2.com); Udara Liyanage (
> udara@wso2.com); dev@stratos.apache.org
>
> *Subject:* Re: [Discuss] Planing for Service Grouping - M1
>
>
>
> Hi Martin,
>
> Thanks for reporting this, it was an issue in a debug log. You got this
> since you had enabled debug logs. Its not fixed. Can you please check again
> with the application definition that I sent earlier.
>
>
>
> On Sat, Sep 27, 2014 at 2:24 AM, Martin Eppel (meppel) <me...@cisco.com>
> wrote:
>
>
>
> Hi Isuru, Rekha and Udara
>
>
>
> I was also able to deploy successfully an application, however, without
> defining the group subscription in the application definition it will throw
> an exception (see below). I attached my application artifacts. If you are
> interested I kept the log (with debug enabled),
>
>
>
> Thanks
>
>
>
> Martin
>
>
>
> Exception thrown when deploying application definition without group
> subscription:
>
>
>
> TID: [0] [STRATOS] [2014-09-26 18:56:02,721] ERROR
> {org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver} -  Exception
> occurred while trying to invoke service method deployApplicationDefinition
> {org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver}
>
> java.lang.NullPointerException
>
>         at
> org.apache.stratos.cloud.controller.application.parser.DefaultApplicationParser.parse(DefaultApplicationParser.java:81)
>
>         at
> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl.deployApplicationDefinition(CloudControllerServiceImpl.java:1437)
>
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>
>         at java.lang.reflect.Method.invoke(Method.java:606)
>
>
>
> *From:* isuruh@wso2.com [mailto:isuruh@wso2.com] *On Behalf Of *Isuru
> Haththotuwa
> *Sent:* Friday, September 26, 2014 6:16 AM
> *To:* dev
> *Subject:* Re: [Discuss] Planing for Service Grouping - M1
>
>
>
> Hi all,
>
> We (Reka, myself and Udara) worked and tested deploying an Application
> with a single cartridge subscription. It worked as expected; the Cluster
> Activated and Application Activated events were received successfully.
> Please note that we tested without loadbalancers and without using git
> repositories.
>
> @ Martin: I have attached the artifacts that we used for testing. Would
> you be able to test the same flow as well?
>
>
>
> On Thu, Sep 25, 2014 at 10:41 PM, Udara Liyanage <ud...@wso2.com> wrote:
>
> Hi,
>
>
>
> I have started end to end testing of grouping release M1.
>
> I were able to deploy an app successfully and was able to spin up an
> instance.
>
>
>
> However I noticed the following errors [1,2], and am currently looking at
> them.
>
>
>
> [1].
>
>
>
> WARN
> {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
> -  Member already activated: [service] php [cluster] myphp.php.domain
> [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
>
> [2014-09-25 15:30:24,165] ERROR
> {org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver}
> -  Error processing event
>
> java.lang.NullPointerException
>
> at
> org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver$12.onEvent(AutoscalerTopologyEventReceiver.java:439)
>
> at
> org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42)
>
> at java.util.Observable.notifyObservers(Observable.java:159)
>
> at
> org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51)
>
> at
> org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor.process(MemberActivatedMessageProcessor.java:153)
>
> at
> org.apache.stratos.messaging.message.processor.topology.MemberStartedMessageProcessor.process(MemberStartedMessageProcessor.java:144)
>
> at
> org.apache.stratos.messaging.message.processor.topology.InstanceSpawnedMessageProcessor.process(InstanceSpawnedMessageProcessor.java:135)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:108)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterMaintenanceModeMessageProcessor.process(ClusterMaintenanceModeMessageProcessor.java:106)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterActivatedProcessor.process(ClusterActivatedProcessor.java:113)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:117)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:87)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:87)
>
> at
> org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:151)
>
> at
> org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60)
>
> at
> org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:77)
>
> at java.lang.Thread.run(Thread.java:745)
>
> [2014-09-25 15:30:24,166]  WARN
> {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
> -  Member already activated: [service] php [cluster] myphp.php.domain
> [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
>
>
>
> [2].
>
>
>
> deId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
> cartridgeType=php, privateIpAddress=10.142.153.174,
> publicIpAddress=54.255.76.162, allocatedIpAddress=null,
> initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
>
> java.lang.NullPointerException
>
> at
> org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
>
> at
> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
>
> 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)
>
> Exception in thread "pool-39-thread-3"
> org.apache.stratos.cloud.controller.exception.CloudControllerException:
> Error occurred while allocating an ip address. MemberContext
> [memberId=myphp.php.domaina62f3cc3-9b68-4d04-b617-c3e24e6a6eb8,
> nodeId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
> cartridgeType=php, privateIpAddress=10.142.153.174,
> publicIpAddress=54.255.76.162, allocatedIpAddress=null,
> initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
>
> at
> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:931)
>
> 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.NullPointerException
>
> at
> org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
>
> at
> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
>
> ... 3 more
>
>
>
>
>
> On Wed, Sep 24, 2014 at 10:21 PM, Udara Liyanage <ud...@wso2.com> wrote:
>
> Hi,
>
>
>
> I have tested adding/get property/properties via curl. addPropery to
> cluster is tested with generic metadata client. Need to add all APIs
> available for metadata client.
>
>
>
> On Wed, Sep 24, 2014 at 9:57 PM, Reka Thirunavukkarasu <re...@wso2.com>
> wrote:
>
> Hi
>
>
>
> I'm in the process of testing hierarchical monitors. Will update the
> progress once i get into to a working state..
>
>
>
> Thanks,
>
> Reka
>
>
>
> On Wed, Sep 24, 2014 at 9:34 PM, Isuru Haththotuwa <is...@apache.org>
> wrote:
>
> Hi,
>
> Tested the following flow:
>
>    1. Group Deployment.
>    2. Application Deployment.
>    3. Publishing information to meta data service.
>
> In step #3, encountered a deadlock scenario where when we try to publish
> to the meta data service while looping through the properties. Myself and
> Udara are looking in to this.
>
>
>
> On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <is...@apache.org>
> wrote:
>
> Hi Devs,
>
> The purpose of this thread is to discuss $subject.
>
> I listed down some of the Tasks that we need for the initial milestone of
> Service Grouping:
>
> Stratos Manager Rest API Support for Composite Applications)
>
> - Deploying Group Definitions
> - Deploying Compoite App Definitions
> - Listing Deployed Composite Apps
> - Exposing Composite App's instance information
>
> Persist Group Definitions in CC
>
> - Validate the Group Definition (check if any cartridges and/or sub groups
> referred are already deployed)
> - Persist the Group Definition deployed in CC
>
> Parse the Application Definition in CC and update Topology
>
> - Generate a unique key for the app
> - Parse app definition
> - Update topology
> - Send Application Created event (with Subcription data)
>
> Create and Persist Composite Application Subscriptions in SM from the
> Topology after the ApplicationCreatedEvent
>
> - Create Composite Subscriptions (can extend the current Subscription
> model) with the help of information sent using the Application Create Event
> and meta data service (if required)
> - Persist them in SM
>
> Payloads and information sharing for the composite app model(Using
> metadata service)
>
> - Building initial payload with required initial amount of info
> - Specifying the information each member should expose/query (to get
> information about dependents), using the meta data service
>
> Meta Data Service Improvements
>
> - Improve the meta data service to put and get informations, with support
> for getting dependent information for Grouping
>
> Generic Meta Data Client Component
>
> - A separate component to interact with the meta data service
>
> Autoscaler acting upon Application Created event
>
> - Create App Monitor and Group Monitor(s)
> - Create the Cluster Monitors
> - Asking to spawn instances in the relevant order for the cluster
>
> Cartridge Agent to support with Composite App events
>
> - Includes app and group as the reference along with clusters
>
>
>
> Please add anything that you think should come under M1. We can use the
> same thread to keep track of progress as well.
>
>
>
> --
>
> Thanks and Regards,
>
> Isuru H.
>
> +94 716 358 048
>
> --
>  <%2B94%20716%20358%20048>
>
>
>
>
>
> *Thanks and Regards, Isuru H. <%2B94%20716%20358%20048>*
>
>
>
> +94 716 358 048
>
>
>
>
>
>
>
> --
>
> Reka Thirunavukkarasu
> Senior Software Engineer,
> WSO2, Inc.:http://wso2.com,
>
> Mobile: +94776442007
>
>
>
>
>
>
>
> --
>
>
> Udara Liyanage
>
> Software Engineer
>
> WSO2, Inc.: http://wso2.com
>
> lean. enterprise. middleware
>
> web: http://udaraliyanage.wordpress.com
>
> phone: +94 71 443 6897
>
>
>
>
>
> --
>
>
> Udara Liyanage
>
> Software Engineer
>
> WSO2, Inc.: http://wso2.com
>
> lean. enterprise. middleware
>
> web: http://udaraliyanage.wordpress.com
>
> phone: +94 71 443 6897
>
> --
>
> Thanks and Regards,
>
> Isuru H.
>
> +94 716 358 048
>
> --
>  <%2B94%20716%20358%20048>
>
> Thanks and Regards,
>
> Isuru H.
>  <%2B94%20716%20358%20048>
>
> +94 716 358 048
>
> --
> <%2B94%20716%20358%20048>
> Thanks and Regards,
>
> Isuru H.
> <%2B94%20716%20358%20048>
> +94 716 358 048* <http://wso2.com/>*
>
>
> * <http://wso2.com/>*
>
>
>

RE: [Discuss] Planing for Service Grouping - M1

Posted by "Martin Eppel (meppel)" <me...@cisco.com>.
Hi Isuru,

Just confirmed, with DEBUG disabled the exception goes away,

Thanks

Martin

From: isuruh@wso2.com [mailto:isuruh@wso2.com] On Behalf Of Isuru Haththotuwa
Sent: Friday, September 26, 2014 3:01 PM
To: Martin Eppel (meppel)
Cc: Reka Thirunavukkarasu (reka@wso2.com); Udara Liyanage (udara@wso2.com); dev@stratos.apache.org
Subject: Re: [Discuss] Planing for Service Grouping - M1

Hi Martin,
Thanks for reporting this, it was an issue in a debug log. You got this since you had enabled debug logs. Its not fixed. Can you please check again with the application definition that I sent earlier.

On Sat, Sep 27, 2014 at 2:24 AM, Martin Eppel (meppel) <me...@cisco.com>> wrote:

Hi Isuru, Rekha and Udara

I was also able to deploy successfully an application, however, without defining the group subscription in the application definition it will throw an exception (see below). I attached my application artifacts. If you are interested I kept the log (with debug enabled),

Thanks

Martin

Exception thrown when deploying application definition without group subscription:

TID: [0] [STRATOS] [2014-09-26 18:56:02,721] ERROR {org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver} -  Exception occurred while trying to invoke service method deployApplicationDefinition {org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver}
java.lang.NullPointerException
        at org.apache.stratos.cloud.controller.application.parser.DefaultApplicationParser.parse(DefaultApplicationParser.java:81)
        at org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl.deployApplicationDefinition(CloudControllerServiceImpl.java:1437)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)

From: isuruh@wso2.com<ma...@wso2.com> [mailto:isuruh@wso2.com<ma...@wso2.com>] On Behalf Of Isuru Haththotuwa
Sent: Friday, September 26, 2014 6:16 AM
To: dev
Subject: Re: [Discuss] Planing for Service Grouping - M1

Hi all,
We (Reka, myself and Udara) worked and tested deploying an Application with a single cartridge subscription. It worked as expected; the Cluster Activated and Application Activated events were received successfully. Please note that we tested without loadbalancers and without using git repositories.
@ Martin: I have attached the artifacts that we used for testing. Would you be able to test the same flow as well?

On Thu, Sep 25, 2014 at 10:41 PM, Udara Liyanage <ud...@wso2.com>> wrote:
Hi,

I have started end to end testing of grouping release M1.
I were able to deploy an app successfully and was able to spin up an instance.

However I noticed the following errors [1,2], and am currently looking at them.

[1].

WARN {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor} -  Member already activated: [service] php [cluster] myphp.php.domain [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
[2014-09-25 15:30:24,165] ERROR {org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver} -  Error processing event
java.lang.NullPointerException
at org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver$12.onEvent(AutoscalerTopologyEventReceiver.java:439)
at org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42)
at java.util.Observable.notifyObservers(Observable.java:159)
at org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51)
at org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor.process(MemberActivatedMessageProcessor.java:153)
at org.apache.stratos.messaging.message.processor.topology.MemberStartedMessageProcessor.process(MemberStartedMessageProcessor.java:144)
at org.apache.stratos.messaging.message.processor.topology.InstanceSpawnedMessageProcessor.process(InstanceSpawnedMessageProcessor.java:135)
at org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:108)
at org.apache.stratos.messaging.message.processor.topology.ClusterMaintenanceModeMessageProcessor.process(ClusterMaintenanceModeMessageProcessor.java:106)
at org.apache.stratos.messaging.message.processor.topology.ClusterActivatedProcessor.process(ClusterActivatedProcessor.java:113)
at org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:117)
at org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:87)
at org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:87)
at org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:151)
at org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60)
at org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:77)
at java.lang.Thread.run(Thread.java:745)
[2014-09-25 15:30:24,166]  WARN {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor} -  Member already activated: [service] php [cluster] myphp.php.domain [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c

[2].

deId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain, cartridgeType=php, privateIpAddress=10.142.153.174, publicIpAddress=54.255.76.162, allocatedIpAddress=null, initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
java.lang.NullPointerException
at org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
at org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
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)
Exception in thread "pool-39-thread-3" org.apache.stratos.cloud.controller.exception.CloudControllerException: Error occurred while allocating an ip address. MemberContext [memberId=myphp.php.domaina62f3cc3-9b68-4d04-b617-c3e24e6a6eb8, nodeId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain, cartridgeType=php, privateIpAddress=10.142.153.174, publicIpAddress=54.255.76.162, allocatedIpAddress=null, initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
at org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:931)
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.NullPointerException
at org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
at org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
... 3 more


On Wed, Sep 24, 2014 at 10:21 PM, Udara Liyanage <ud...@wso2.com>> wrote:
Hi,

I have tested adding/get property/properties via curl. addPropery to cluster is tested with generic metadata client. Need to add all APIs available for metadata client.

On Wed, Sep 24, 2014 at 9:57 PM, Reka Thirunavukkarasu <re...@wso2.com>> wrote:
Hi

I'm in the process of testing hierarchical monitors. Will update the progress once i get into to a working state..

Thanks,
Reka

On Wed, Sep 24, 2014 at 9:34 PM, Isuru Haththotuwa <is...@apache.org>> wrote:
Hi,
Tested the following flow:

  1.  Group Deployment.
  2.  Application Deployment.
  3.  Publishing information to meta data service.

In step #3, encountered a deadlock scenario where when we try to publish to the meta data service while looping through the properties. Myself and Udara are looking in to this.

On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <is...@apache.org>> wrote:
Hi Devs,
The purpose of this thread is to discuss $subject.
I listed down some of the Tasks that we need for the initial milestone of Service Grouping:
Stratos Manager Rest API Support for Composite Applications)

- Deploying Group Definitions
- Deploying Compoite App Definitions
- Listing Deployed Composite Apps
- Exposing Composite App's instance information

Persist Group Definitions in CC

- Validate the Group Definition (check if any cartridges and/or sub groups referred are already deployed)
- Persist the Group Definition deployed in CC

Parse the Application Definition in CC and update Topology

- Generate a unique key for the app
- Parse app definition
- Update topology
- Send Application Created event (with Subcription data)

Create and Persist Composite Application Subscriptions in SM from the Topology after the ApplicationCreatedEvent

- Create Composite Subscriptions (can extend the current Subscription model) with the help of information sent using the Application Create Event and meta data service (if required)
- Persist them in SM

Payloads and information sharing for the composite app model(Using metadata service)

- Building initial payload with required initial amount of info
- Specifying the information each member should expose/query (to get information about dependents), using the meta data service

Meta Data Service Improvements

- Improve the meta data service to put and get informations, with support for getting dependent information for Grouping

Generic Meta Data Client Component

- A separate component to interact with the meta data service

Autoscaler acting upon Application Created event

- Create App Monitor and Group Monitor(s)
- Create the Cluster Monitors
- Asking to spawn instances in the relevant order for the cluster

Cartridge Agent to support with Composite App events

- Includes app and group as the reference along with clusters


Please add anything that you think should come under M1. We can use the same thread to keep track of progress as well.


--
Thanks and Regards,

Isuru H.
+94 716 358 048

--
<tel:%2B94%20716%20358%20048>
Thanks and Regards,

Isuru H.

<tel:%2B94%20716%20358%20048>

+94 716 358 048<tel:%2B94%20716%20358%20048>




--
Reka Thirunavukkarasu
Senior Software Engineer,
WSO2, Inc.:http://wso2.com,
Mobile: +94776442007<tel:%2B94776442007>




--

Udara Liyanage
Software Engineer
WSO2, Inc.: http://wso2.com<http://wso2.com/>
lean. enterprise. middleware
web: http://udaraliyanage.wordpress.com
phone: +94 71 443 6897<tel:%2B94%2071%20443%206897>



--

Udara Liyanage
Software Engineer
WSO2, Inc.: http://wso2.com<http://wso2.com/>
lean. enterprise. middleware
web: http://udaraliyanage.wordpress.com
phone: +94 71 443 6897<tel:%2B94%2071%20443%206897>

--
Thanks and Regards,

Isuru H.
+94 716 358 048

--
<tel:%2B94%20716%20358%20048>
Thanks and Regards,

Isuru H.
<tel:%2B94%20716%20358%20048>
+94 716 358 048<tel:%2B94%20716%20358%20048>




Re: [Discuss] Planing for Service Grouping - M1

Posted by Isuru Haththotuwa <is...@apache.org>.
Hi Martin,

Thanks for reporting this, it was an issue in a debug log. You got this
since you had enabled debug logs. Its not fixed. Can you please check again
with the application definition that I sent earlier.

On Sat, Sep 27, 2014 at 2:24 AM, Martin Eppel (meppel) <me...@cisco.com>
wrote:

>
>
> Hi Isuru, Rekha and Udara
>
>
>
> I was also able to deploy successfully an application, however, without
> defining the group subscription in the application definition it will throw
> an exception (see below). I attached my application artifacts. If you are
> interested I kept the log (with debug enabled),
>
>
>
> Thanks
>
>
>
> Martin
>
>
>
> Exception thrown when deploying application definition without group
> subscription:
>
>
>
> TID: [0] [STRATOS] [2014-09-26 18:56:02,721] ERROR
> {org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver} -  Exception
> occurred while trying to invoke service method deployApplicationDefinition
> {org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver}
>
> java.lang.NullPointerException
>
>         at
> org.apache.stratos.cloud.controller.application.parser.DefaultApplicationParser.parse(DefaultApplicationParser.java:81)
>
>         at
> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl.deployApplicationDefinition(CloudControllerServiceImpl.java:1437)
>
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>
>         at java.lang.reflect.Method.invoke(Method.java:606)
>
>
>
> *From:* isuruh@wso2.com [mailto:isuruh@wso2.com] *On Behalf Of *Isuru
> Haththotuwa
> *Sent:* Friday, September 26, 2014 6:16 AM
> *To:* dev
> *Subject:* Re: [Discuss] Planing for Service Grouping - M1
>
>
>
> Hi all,
>
> We (Reka, myself and Udara) worked and tested deploying an Application
> with a single cartridge subscription. It worked as expected; the Cluster
> Activated and Application Activated events were received successfully.
> Please note that we tested without loadbalancers and without using git
> repositories.
>
> @ Martin: I have attached the artifacts that we used for testing. Would
> you be able to test the same flow as well?
>
>
>
> On Thu, Sep 25, 2014 at 10:41 PM, Udara Liyanage <ud...@wso2.com> wrote:
>
> Hi,
>
>
>
> I have started end to end testing of grouping release M1.
>
> I were able to deploy an app successfully and was able to spin up an
> instance.
>
>
>
> However I noticed the following errors [1,2], and am currently looking at
> them.
>
>
>
> [1].
>
>
>
> WARN
> {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
> -  Member already activated: [service] php [cluster] myphp.php.domain
> [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
>
> [2014-09-25 15:30:24,165] ERROR
> {org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver}
> -  Error processing event
>
> java.lang.NullPointerException
>
> at
> org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver$12.onEvent(AutoscalerTopologyEventReceiver.java:439)
>
> at
> org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42)
>
> at java.util.Observable.notifyObservers(Observable.java:159)
>
> at
> org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51)
>
> at
> org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor.process(MemberActivatedMessageProcessor.java:153)
>
> at
> org.apache.stratos.messaging.message.processor.topology.MemberStartedMessageProcessor.process(MemberStartedMessageProcessor.java:144)
>
> at
> org.apache.stratos.messaging.message.processor.topology.InstanceSpawnedMessageProcessor.process(InstanceSpawnedMessageProcessor.java:135)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:108)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterMaintenanceModeMessageProcessor.process(ClusterMaintenanceModeMessageProcessor.java:106)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterActivatedProcessor.process(ClusterActivatedProcessor.java:113)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:117)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:87)
>
> at
> org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:87)
>
> at
> org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:151)
>
> at
> org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60)
>
> at
> org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:77)
>
> at java.lang.Thread.run(Thread.java:745)
>
> [2014-09-25 15:30:24,166]  WARN
> {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
> -  Member already activated: [service] php [cluster] myphp.php.domain
> [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
>
>
>
> [2].
>
>
>
> deId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
> cartridgeType=php, privateIpAddress=10.142.153.174,
> publicIpAddress=54.255.76.162, allocatedIpAddress=null,
> initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
>
> java.lang.NullPointerException
>
> at
> org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
>
> at
> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
>
> 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)
>
> Exception in thread "pool-39-thread-3"
> org.apache.stratos.cloud.controller.exception.CloudControllerException:
> Error occurred while allocating an ip address. MemberContext
> [memberId=myphp.php.domaina62f3cc3-9b68-4d04-b617-c3e24e6a6eb8,
> nodeId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
> cartridgeType=php, privateIpAddress=10.142.153.174,
> publicIpAddress=54.255.76.162, allocatedIpAddress=null,
> initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
>
> at
> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:931)
>
> 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.NullPointerException
>
> at
> org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
>
> at
> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
>
> ... 3 more
>
>
>
>
>
> On Wed, Sep 24, 2014 at 10:21 PM, Udara Liyanage <ud...@wso2.com> wrote:
>
> Hi,
>
>
>
> I have tested adding/get property/properties via curl. addPropery to
> cluster is tested with generic metadata client. Need to add all APIs
> available for metadata client.
>
>
>
> On Wed, Sep 24, 2014 at 9:57 PM, Reka Thirunavukkarasu <re...@wso2.com>
> wrote:
>
> Hi
>
>
>
> I'm in the process of testing hierarchical monitors. Will update the
> progress once i get into to a working state..
>
>
>
> Thanks,
>
> Reka
>
>
>
> On Wed, Sep 24, 2014 at 9:34 PM, Isuru Haththotuwa <is...@apache.org>
> wrote:
>
> Hi,
>
> Tested the following flow:
>
>    1. Group Deployment.
>    2. Application Deployment.
>    3. Publishing information to meta data service.
>
> In step #3, encountered a deadlock scenario where when we try to publish
> to the meta data service while looping through the properties. Myself and
> Udara are looking in to this.
>
>
>
> On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <is...@apache.org>
> wrote:
>
> Hi Devs,
>
> The purpose of this thread is to discuss $subject.
>
> I listed down some of the Tasks that we need for the initial milestone of
> Service Grouping:
>
> Stratos Manager Rest API Support for Composite Applications)
>
> - Deploying Group Definitions
> - Deploying Compoite App Definitions
> - Listing Deployed Composite Apps
> - Exposing Composite App's instance information
>
> Persist Group Definitions in CC
>
> - Validate the Group Definition (check if any cartridges and/or sub groups
> referred are already deployed)
> - Persist the Group Definition deployed in CC
>
> Parse the Application Definition in CC and update Topology
>
> - Generate a unique key for the app
> - Parse app definition
> - Update topology
> - Send Application Created event (with Subcription data)
>
> Create and Persist Composite Application Subscriptions in SM from the
> Topology after the ApplicationCreatedEvent
>
> - Create Composite Subscriptions (can extend the current Subscription
> model) with the help of information sent using the Application Create Event
> and meta data service (if required)
> - Persist them in SM
>
> Payloads and information sharing for the composite app model(Using
> metadata service)
>
> - Building initial payload with required initial amount of info
> - Specifying the information each member should expose/query (to get
> information about dependents), using the meta data service
>
> Meta Data Service Improvements
>
> - Improve the meta data service to put and get informations, with support
> for getting dependent information for Grouping
>
> Generic Meta Data Client Component
>
> - A separate component to interact with the meta data service
>
> Autoscaler acting upon Application Created event
>
> - Create App Monitor and Group Monitor(s)
> - Create the Cluster Monitors
> - Asking to spawn instances in the relevant order for the cluster
>
> Cartridge Agent to support with Composite App events
>
> - Includes app and group as the reference along with clusters
>
>
>
> Please add anything that you think should come under M1. We can use the
> same thread to keep track of progress as well.
>
>
>
> --
>
> Thanks and Regards,
>
> Isuru H.
>
> +94 716 358 048
>
> --
>  <%2B94%20716%20358%20048>
>
>  <%2B94%20716%20358%20048>
>
>
>
>
>
> *Thanks and Regards, Isuru H. <%2B94%20716%20358%20048>*
>
>
>
> +94 716 358 048
>
>
>
>
>
>
>
> --
>
> Reka Thirunavukkarasu
> Senior Software Engineer,
> WSO2, Inc.:http://wso2.com,
>
> Mobile: +94776442007
>
>
>
>
>
>
>
> --
>
>
> Udara Liyanage
>
> Software Engineer
>
> WSO2, Inc.: http://wso2.com
>
> lean. enterprise. middleware
>
> web: http://udaraliyanage.wordpress.com
>
> phone: +94 71 443 6897
>
>
>
>
>
> --
>
>
> Udara Liyanage
>
> Software Engineer
>
> WSO2, Inc.: http://wso2.com
>
> lean. enterprise. middleware
>
> web: http://udaraliyanage.wordpress.com
>
> phone: +94 71 443 6897
>
> --
>
> Thanks and Regards,
>
> Isuru H.
>
> +94 716 358 048
>
> --
> <%2B94%20716%20358%20048>
> Thanks and Regards,
>
> Isuru H.
> <%2B94%20716%20358%20048>
> +94 716 358 048* <http://wso2.com/>*
>
>
> * <http://wso2.com/>*
>
>
>

RE: [Discuss] Planing for Service Grouping - M1

Posted by "Martin Eppel (meppel)" <me...@cisco.com>.
Hi Isuru, Rekha and Udara

I was also able to deploy successfully an application, however, without defining the group subscription in the application definition it will throw an exception (see below). I attached my application artifacts. If you are interested I kept the log (with debug enabled),

Thanks

Martin

Exception thrown when deploying application definition without group subscription:

TID: [0] [STRATOS] [2014-09-26 18:56:02,721] ERROR {org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver} -  Exception occurred while trying to invoke service method deployApplicationDefinition {org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver}
java.lang.NullPointerException
        at org.apache.stratos.cloud.controller.application.parser.DefaultApplicationParser.parse(DefaultApplicationParser.java:81)
        at org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl.deployApplicationDefinition(CloudControllerServiceImpl.java:1437)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)

From: isuruh@wso2.com [mailto:isuruh@wso2.com] On Behalf Of Isuru Haththotuwa
Sent: Friday, September 26, 2014 6:16 AM
To: dev
Subject: Re: [Discuss] Planing for Service Grouping - M1

Hi all,
We (Reka, myself and Udara) worked and tested deploying an Application with a single cartridge subscription. It worked as expected; the Cluster Activated and Application Activated events were received successfully. Please note that we tested without loadbalancers and without using git repositories.
@ Martin: I have attached the artifacts that we used for testing. Would you be able to test the same flow as well?

On Thu, Sep 25, 2014 at 10:41 PM, Udara Liyanage <ud...@wso2.com>> wrote:
Hi,

I have started end to end testing of grouping release M1.
I were able to deploy an app successfully and was able to spin up an instance.

However I noticed the following errors [1,2], and am currently looking at them.

[1].

WARN {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor} -  Member already activated: [service] php [cluster] myphp.php.domain [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
[2014-09-25 15:30:24,165] ERROR {org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver} -  Error processing event
java.lang.NullPointerException
at org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver$12.onEvent(AutoscalerTopologyEventReceiver.java:439)
at org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42)
at java.util.Observable.notifyObservers(Observable.java:159)
at org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51)
at org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor.process(MemberActivatedMessageProcessor.java:153)
at org.apache.stratos.messaging.message.processor.topology.MemberStartedMessageProcessor.process(MemberStartedMessageProcessor.java:144)
at org.apache.stratos.messaging.message.processor.topology.InstanceSpawnedMessageProcessor.process(InstanceSpawnedMessageProcessor.java:135)
at org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:108)
at org.apache.stratos.messaging.message.processor.topology.ClusterMaintenanceModeMessageProcessor.process(ClusterMaintenanceModeMessageProcessor.java:106)
at org.apache.stratos.messaging.message.processor.topology.ClusterActivatedProcessor.process(ClusterActivatedProcessor.java:113)
at org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:117)
at org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:87)
at org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:87)
at org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:151)
at org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60)
at org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:77)
at java.lang.Thread.run(Thread.java:745)
[2014-09-25 15:30:24,166]  WARN {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor} -  Member already activated: [service] php [cluster] myphp.php.domain [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c

[2].

deId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain, cartridgeType=php, privateIpAddress=10.142.153.174, publicIpAddress=54.255.76.162, allocatedIpAddress=null, initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
java.lang.NullPointerException
at org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
at org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
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)
Exception in thread "pool-39-thread-3" org.apache.stratos.cloud.controller.exception.CloudControllerException: Error occurred while allocating an ip address. MemberContext [memberId=myphp.php.domaina62f3cc3-9b68-4d04-b617-c3e24e6a6eb8, nodeId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain, cartridgeType=php, privateIpAddress=10.142.153.174, publicIpAddress=54.255.76.162, allocatedIpAddress=null, initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
at org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:931)
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.NullPointerException
at org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
at org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
... 3 more


On Wed, Sep 24, 2014 at 10:21 PM, Udara Liyanage <ud...@wso2.com>> wrote:
Hi,

I have tested adding/get property/properties via curl. addPropery to cluster is tested with generic metadata client. Need to add all APIs available for metadata client.

On Wed, Sep 24, 2014 at 9:57 PM, Reka Thirunavukkarasu <re...@wso2.com>> wrote:
Hi

I'm in the process of testing hierarchical monitors. Will update the progress once i get into to a working state..

Thanks,
Reka

On Wed, Sep 24, 2014 at 9:34 PM, Isuru Haththotuwa <is...@apache.org>> wrote:
Hi,
Tested the following flow:

  1.  Group Deployment.
  2.  Application Deployment.
  3.  Publishing information to meta data service.

In step #3, encountered a deadlock scenario where when we try to publish to the meta data service while looping through the properties. Myself and Udara are looking in to this.

On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <is...@apache.org>> wrote:
Hi Devs,
The purpose of this thread is to discuss $subject.
I listed down some of the Tasks that we need for the initial milestone of Service Grouping:
Stratos Manager Rest API Support for Composite Applications)

- Deploying Group Definitions
- Deploying Compoite App Definitions
- Listing Deployed Composite Apps
- Exposing Composite App's instance information

Persist Group Definitions in CC

- Validate the Group Definition (check if any cartridges and/or sub groups referred are already deployed)
- Persist the Group Definition deployed in CC

Parse the Application Definition in CC and update Topology

- Generate a unique key for the app
- Parse app definition
- Update topology
- Send Application Created event (with Subcription data)

Create and Persist Composite Application Subscriptions in SM from the Topology after the ApplicationCreatedEvent

- Create Composite Subscriptions (can extend the current Subscription model) with the help of information sent using the Application Create Event and meta data service (if required)
- Persist them in SM

Payloads and information sharing for the composite app model(Using metadata service)

- Building initial payload with required initial amount of info
- Specifying the information each member should expose/query (to get information about dependents), using the meta data service

Meta Data Service Improvements

- Improve the meta data service to put and get informations, with support for getting dependent information for Grouping

Generic Meta Data Client Component

- A separate component to interact with the meta data service

Autoscaler acting upon Application Created event

- Create App Monitor and Group Monitor(s)
- Create the Cluster Monitors
- Asking to spawn instances in the relevant order for the cluster

Cartridge Agent to support with Composite App events

- Includes app and group as the reference along with clusters


Please add anything that you think should come under M1. We can use the same thread to keep track of progress as well.


--
Thanks and Regards,

Isuru H.
+94 716 358 048

--
<tel:%2B94%20716%20358%20048>
<tel:%2B94%20716%20358%20048>
Thanks and Regards,

Isuru H.

<tel:%2B94%20716%20358%20048>

+94 716 358 048<tel:%2B94%20716%20358%20048>






--
Reka Thirunavukkarasu
Senior Software Engineer,
WSO2, Inc.:http://wso2.com,
Mobile: +94776442007<tel:%2B94776442007>




--

Udara Liyanage
Software Engineer
WSO2, Inc.: http://wso2.com<http://wso2.com/>
lean. enterprise. middleware
web: http://udaraliyanage.wordpress.com
phone: +94 71 443 6897



--

Udara Liyanage
Software Engineer
WSO2, Inc.: http://wso2.com<http://wso2.com/>
lean. enterprise. middleware
web: http://udaraliyanage.wordpress.com
phone: +94 71 443 6897

--
Thanks and Regards,

Isuru H.
+94 716 358 048




Re: [Discuss] Planing for Service Grouping - M1

Posted by Isuru Haththotuwa <is...@apache.org>.
Hi all,

We (Reka, myself and Udara) worked and tested deploying an Application with
a single cartridge subscription. It worked as expected; the Cluster
Activated and Application Activated events were received successfully.
Please note that we tested without loadbalancers and without using git
repositories.

@ Martin: I have attached the artifacts that we used for testing. Would you
be able to test the same flow as well?


On Thu, Sep 25, 2014 at 10:41 PM, Udara Liyanage <ud...@wso2.com> wrote:

> Hi,
>
> I have started end to end testing of grouping release M1.
> I were able to deploy an app successfully and was able to spin up an
> instance.
>
> However I noticed the following errors [1,2], and am currently looking at
> them.
>
> [1].
>
> WARN
> {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
> -  Member already activated: [service] php [cluster] myphp.php.domain
> [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
> [2014-09-25 15:30:24,165] ERROR
> {org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver}
> -  Error processing event
> java.lang.NullPointerException
> at
> org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver$12.onEvent(AutoscalerTopologyEventReceiver.java:439)
> at
> org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42)
> at java.util.Observable.notifyObservers(Observable.java:159)
> at
> org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51)
> at
> org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor.process(MemberActivatedMessageProcessor.java:153)
> at
> org.apache.stratos.messaging.message.processor.topology.MemberStartedMessageProcessor.process(MemberStartedMessageProcessor.java:144)
> at
> org.apache.stratos.messaging.message.processor.topology.InstanceSpawnedMessageProcessor.process(InstanceSpawnedMessageProcessor.java:135)
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:108)
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterMaintenanceModeMessageProcessor.process(ClusterMaintenanceModeMessageProcessor.java:106)
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterActivatedProcessor.process(ClusterActivatedProcessor.java:113)
> at
> org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:117)
> at
> org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:87)
> at
> org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:87)
> at
> org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:151)
> at
> org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60)
> at
> org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:77)
> at java.lang.Thread.run(Thread.java:745)
> [2014-09-25 15:30:24,166]  WARN
> {org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
> -  Member already activated: [service] php [cluster] myphp.php.domain
> [member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
>
> [2].
>
> deId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
> cartridgeType=php, privateIpAddress=10.142.153.174,
> publicIpAddress=54.255.76.162, allocatedIpAddress=null,
> initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
> java.lang.NullPointerException
> at
> org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
> at
> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
> 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)
> Exception in thread "pool-39-thread-3"
> org.apache.stratos.cloud.controller.exception.CloudControllerException:
> Error occurred while allocating an ip address. MemberContext
> [memberId=myphp.php.domaina62f3cc3-9b68-4d04-b617-c3e24e6a6eb8,
> nodeId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
> cartridgeType=php, privateIpAddress=10.142.153.174,
> publicIpAddress=54.255.76.162, allocatedIpAddress=null,
> initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
> at
> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:931)
> 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.NullPointerException
> at
> org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
> at
> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
> ... 3 more
>
>
> On Wed, Sep 24, 2014 at 10:21 PM, Udara Liyanage <ud...@wso2.com> wrote:
>
>> Hi,
>>
>> I have tested adding/get property/properties via curl. addPropery to
>> cluster is tested with generic metadata client. Need to add all APIs
>> available for metadata client.
>>
>> On Wed, Sep 24, 2014 at 9:57 PM, Reka Thirunavukkarasu <re...@wso2.com>
>> wrote:
>>
>>> Hi
>>>
>>> I'm in the process of testing hierarchical monitors. Will update the
>>> progress once i get into to a working state..
>>>
>>> Thanks,
>>> Reka
>>>
>>> On Wed, Sep 24, 2014 at 9:34 PM, Isuru Haththotuwa <is...@apache.org>
>>> wrote:
>>>
>>>> Hi,
>>>>
>>>> Tested the following flow:
>>>>
>>>>    1. Group Deployment.
>>>>    2. Application Deployment.
>>>>    3. Publishing information to meta data service.
>>>>
>>>> In step #3, encountered a deadlock scenario where when we try to
>>>> publish to the meta data service while looping through the properties.
>>>> Myself and Udara are looking in to this.
>>>>
>>>> On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <is...@apache.org>
>>>> wrote:
>>>>
>>>>> Hi Devs,
>>>>>
>>>>> The purpose of this thread is to discuss $subject.
>>>>>
>>>>> I listed down some of the Tasks that we need for the initial milestone
>>>>> of Service Grouping:
>>>>>
>>>>> Stratos Manager Rest API Support for Composite Applications)
>>>>> - Deploying Group Definitions
>>>>> - Deploying Compoite App Definitions
>>>>> - Listing Deployed Composite Apps
>>>>> - Exposing Composite App's instance informationPersist Group
>>>>> Definitions in CC- Validate the Group Definition (check if any
>>>>> cartridges and/or sub groups referred are already deployed)
>>>>> - Persist the Group Definition deployed in CCParse the Application
>>>>> Definition in CC and update Topology- Generate a unique key for the
>>>>> app
>>>>> - Parse app definition
>>>>> - Update topology
>>>>> - Send Application Created event (with Subcription data)Create and
>>>>> Persist Composite Application Subscriptions in SM from the Topology after
>>>>> the ApplicationCreatedEvent- Create Composite Subscriptions (can
>>>>> extend the current Subscription model) with the help of information sent
>>>>> using the Application Create Event and meta data service (if required)
>>>>> - Persist them in SMPayloads and information sharing for the
>>>>> composite app model(Using metadata service)- Building initial payload
>>>>> with required initial amount of info
>>>>> - Specifying the information each member should expose/query (to get
>>>>> information about dependents), using the meta data serviceMeta Data
>>>>> Service Improvements- Improve the meta data service to put and get
>>>>> informations, with support for getting dependent information for GroupingGeneric
>>>>> Meta Data Client Component- A separate component to interact with the
>>>>> meta data serviceAutoscaler acting upon Application Created event-
>>>>> Create App Monitor and Group Monitor(s)
>>>>> - Create the Cluster Monitors
>>>>> - Asking to spawn instances in the relevant order for the clusterCartridge
>>>>> Agent to support with Composite App events- Includes app and group as
>>>>> the reference along with clusters
>>>>> Please add anything that you think should come under M1. We can use
>>>>> the same thread to keep track of progress as well.
>>>>>
>>>>>
>>>>> --
>>>>> Thanks and Regards,
>>>>>
>>>>> Isuru H.
>>>>> +94 716 358 048
>>>>>
>>>>> --
>>>>> <%2B94%20716%20358%20048>
>>>>> Thanks and Regards,
>>>>>
>>>>> Isuru H.
>>>>> <%2B94%20716%20358%20048>
>>>>> +94 716 358 048* <http://wso2.com/>*
>>>>>
>>>>>
>>>>> * <http://wso2.com/>*
>>>>>
>>>>>
>>>>>
>>>
>>>
>>> --
>>> Reka Thirunavukkarasu
>>> Senior Software Engineer,
>>> WSO2, Inc.:http://wso2.com,
>>> Mobile: +94776442007
>>>
>>>
>>>
>>
>>
>> --
>>
>> Udara Liyanage
>> Software Engineer
>> WSO2, Inc.: http://wso2.com
>> lean. enterprise. middleware
>>
>> web: http://udaraliyanage.wordpress.com
>> phone: +94 71 443 6897
>>
>
>
>
> --
>
> Udara Liyanage
> Software Engineer
> WSO2, Inc.: http://wso2.com
> lean. enterprise. middleware
>
> web: http://udaraliyanage.wordpress.com
> phone: +94 71 443 6897
>
> --
> Thanks and Regards,
>
> Isuru H.
> +94 716 358 048* <http://wso2.com/>*
>
>
> * <http://wso2.com/>*
>
>
>

Re: [Discuss] Planing for Service Grouping - M1

Posted by Udara Liyanage <ud...@wso2.com>.
Hi,

I have started end to end testing of grouping release M1.
I were able to deploy an app successfully and was able to spin up an
instance.

However I noticed the following errors [1,2], and am currently looking at
them.

[1].

WARN
{org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
-  Member already activated: [service] php [cluster] myphp.php.domain
[member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c
[2014-09-25 15:30:24,165] ERROR
{org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver}
-  Error processing event
java.lang.NullPointerException
at
org.apache.stratos.autoscaler.message.receiver.topology.AutoscalerTopologyEventReceiver$12.onEvent(AutoscalerTopologyEventReceiver.java:439)
at
org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42)
at java.util.Observable.notifyObservers(Observable.java:159)
at
org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51)
at
org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor.process(MemberActivatedMessageProcessor.java:153)
at
org.apache.stratos.messaging.message.processor.topology.MemberStartedMessageProcessor.process(MemberStartedMessageProcessor.java:144)
at
org.apache.stratos.messaging.message.processor.topology.InstanceSpawnedMessageProcessor.process(InstanceSpawnedMessageProcessor.java:135)
at
org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:108)
at
org.apache.stratos.messaging.message.processor.topology.ClusterMaintenanceModeMessageProcessor.process(ClusterMaintenanceModeMessageProcessor.java:106)
at
org.apache.stratos.messaging.message.processor.topology.ClusterActivatedProcessor.process(ClusterActivatedProcessor.java:113)
at
org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:117)
at
org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:87)
at
org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:87)
at
org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:151)
at
org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60)
at
org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:77)
at java.lang.Thread.run(Thread.java:745)
[2014-09-25 15:30:24,166]  WARN
{org.apache.stratos.messaging.message.processor.topology.MemberActivatedMessageProcessor}
-  Member already activated: [service] php [cluster] myphp.php.domain
[member] myphp.php.domainc110824d-94d7-4de9-b5ca-50023db40f7c

[2].

deId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
cartridgeType=php, privateIpAddress=10.142.153.174,
publicIpAddress=54.255.76.162, allocatedIpAddress=null,
initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
java.lang.NullPointerException
at
org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
at
org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
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)
Exception in thread "pool-39-thread-3"
org.apache.stratos.cloud.controller.exception.CloudControllerException:
Error occurred while allocating an ip address. MemberContext
[memberId=myphp.php.domaina62f3cc3-9b68-4d04-b617-c3e24e6a6eb8,
nodeId=ap-southeast-1/i-6cfe1047, clusterId=myphp.php.domain,
cartridgeType=php, privateIpAddress=10.142.153.174,
publicIpAddress=54.255.76.162, allocatedIpAddress=null,
initTime=1411659453081, lbClusterId=null, networkPartitionId=openstack]
at
org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:931)
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.NullPointerException
at
org.apache.stratos.cloud.controller.topology.TopologyBuilder.handleMemberSpawned(TopologyBuilder.java:235)
at
org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl$IpAllocator.run(CloudControllerServiceImpl.java:906)
... 3 more


On Wed, Sep 24, 2014 at 10:21 PM, Udara Liyanage <ud...@wso2.com> wrote:

> Hi,
>
> I have tested adding/get property/properties via curl. addPropery to
> cluster is tested with generic metadata client. Need to add all APIs
> available for metadata client.
>
> On Wed, Sep 24, 2014 at 9:57 PM, Reka Thirunavukkarasu <re...@wso2.com>
> wrote:
>
>> Hi
>>
>> I'm in the process of testing hierarchical monitors. Will update the
>> progress once i get into to a working state..
>>
>> Thanks,
>> Reka
>>
>> On Wed, Sep 24, 2014 at 9:34 PM, Isuru Haththotuwa <is...@apache.org>
>> wrote:
>>
>>> Hi,
>>>
>>> Tested the following flow:
>>>
>>>    1. Group Deployment.
>>>    2. Application Deployment.
>>>    3. Publishing information to meta data service.
>>>
>>> In step #3, encountered a deadlock scenario where when we try to publish
>>> to the meta data service while looping through the properties. Myself and
>>> Udara are looking in to this.
>>>
>>> On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <is...@apache.org>
>>> wrote:
>>>
>>>> Hi Devs,
>>>>
>>>> The purpose of this thread is to discuss $subject.
>>>>
>>>> I listed down some of the Tasks that we need for the initial milestone
>>>> of Service Grouping:
>>>>
>>>> Stratos Manager Rest API Support for Composite Applications)
>>>> - Deploying Group Definitions
>>>> - Deploying Compoite App Definitions
>>>> - Listing Deployed Composite Apps
>>>> - Exposing Composite App's instance informationPersist Group
>>>> Definitions in CC- Validate the Group Definition (check if any
>>>> cartridges and/or sub groups referred are already deployed)
>>>> - Persist the Group Definition deployed in CCParse the Application
>>>> Definition in CC and update Topology- Generate a unique key for the app
>>>> - Parse app definition
>>>> - Update topology
>>>> - Send Application Created event (with Subcription data)Create and
>>>> Persist Composite Application Subscriptions in SM from the Topology after
>>>> the ApplicationCreatedEvent- Create Composite Subscriptions (can
>>>> extend the current Subscription model) with the help of information sent
>>>> using the Application Create Event and meta data service (if required)
>>>> - Persist them in SMPayloads and information sharing for the composite
>>>> app model(Using metadata service)- Building initial payload with
>>>> required initial amount of info
>>>> - Specifying the information each member should expose/query (to get
>>>> information about dependents), using the meta data serviceMeta Data
>>>> Service Improvements- Improve the meta data service to put and get
>>>> informations, with support for getting dependent information for GroupingGeneric
>>>> Meta Data Client Component- A separate component to interact with the
>>>> meta data serviceAutoscaler acting upon Application Created event-
>>>> Create App Monitor and Group Monitor(s)
>>>> - Create the Cluster Monitors
>>>> - Asking to spawn instances in the relevant order for the clusterCartridge
>>>> Agent to support with Composite App events- Includes app and group as
>>>> the reference along with clusters
>>>> Please add anything that you think should come under M1. We can use the
>>>> same thread to keep track of progress as well.
>>>>
>>>>
>>>> --
>>>> Thanks and Regards,
>>>>
>>>> Isuru H.
>>>> +94 716 358 048
>>>>
>>>> --
>>>> <%2B94%20716%20358%20048>
>>>> Thanks and Regards,
>>>>
>>>> Isuru H.
>>>> <%2B94%20716%20358%20048>
>>>> +94 716 358 048* <http://wso2.com/>*
>>>>
>>>>
>>>> * <http://wso2.com/>*
>>>>
>>>>
>>>>
>>
>>
>> --
>> Reka Thirunavukkarasu
>> Senior Software Engineer,
>> WSO2, Inc.:http://wso2.com,
>> Mobile: +94776442007
>>
>>
>>
>
>
> --
>
> Udara Liyanage
> Software Engineer
> WSO2, Inc.: http://wso2.com
> lean. enterprise. middleware
>
> web: http://udaraliyanage.wordpress.com
> phone: +94 71 443 6897
>



-- 

Udara Liyanage
Software Engineer
WSO2, Inc.: http://wso2.com
lean. enterprise. middleware

web: http://udaraliyanage.wordpress.com
phone: +94 71 443 6897

Re: [Discuss] Planing for Service Grouping - M1

Posted by Udara Liyanage <ud...@wso2.com>.
Hi,

I have tested adding/get property/properties via curl. addPropery to
cluster is tested with generic metadata client. Need to add all APIs
available for metadata client.

On Wed, Sep 24, 2014 at 9:57 PM, Reka Thirunavukkarasu <re...@wso2.com>
wrote:

> Hi
>
> I'm in the process of testing hierarchical monitors. Will update the
> progress once i get into to a working state..
>
> Thanks,
> Reka
>
> On Wed, Sep 24, 2014 at 9:34 PM, Isuru Haththotuwa <is...@apache.org>
> wrote:
>
>> Hi,
>>
>> Tested the following flow:
>>
>>    1. Group Deployment.
>>    2. Application Deployment.
>>    3. Publishing information to meta data service.
>>
>> In step #3, encountered a deadlock scenario where when we try to publish
>> to the meta data service while looping through the properties. Myself and
>> Udara are looking in to this.
>>
>> On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <is...@apache.org>
>> wrote:
>>
>>> Hi Devs,
>>>
>>> The purpose of this thread is to discuss $subject.
>>>
>>> I listed down some of the Tasks that we need for the initial milestone
>>> of Service Grouping:
>>>
>>> Stratos Manager Rest API Support for Composite Applications)
>>> - Deploying Group Definitions
>>> - Deploying Compoite App Definitions
>>> - Listing Deployed Composite Apps
>>> - Exposing Composite App's instance informationPersist Group
>>> Definitions in CC- Validate the Group Definition (check if any
>>> cartridges and/or sub groups referred are already deployed)
>>> - Persist the Group Definition deployed in CCParse the Application
>>> Definition in CC and update Topology- Generate a unique key for the app
>>> - Parse app definition
>>> - Update topology
>>> - Send Application Created event (with Subcription data)Create and
>>> Persist Composite Application Subscriptions in SM from the Topology after
>>> the ApplicationCreatedEvent- Create Composite Subscriptions (can extend
>>> the current Subscription model) with the help of information sent using the
>>> Application Create Event and meta data service (if required)
>>> - Persist them in SMPayloads and information sharing for the composite
>>> app model(Using metadata service)- Building initial payload with
>>> required initial amount of info
>>> - Specifying the information each member should expose/query (to get
>>> information about dependents), using the meta data serviceMeta Data
>>> Service Improvements- Improve the meta data service to put and get
>>> informations, with support for getting dependent information for GroupingGeneric
>>> Meta Data Client Component- A separate component to interact with the
>>> meta data serviceAutoscaler acting upon Application Created event-
>>> Create App Monitor and Group Monitor(s)
>>> - Create the Cluster Monitors
>>> - Asking to spawn instances in the relevant order for the clusterCartridge
>>> Agent to support with Composite App events- Includes app and group as
>>> the reference along with clusters
>>> Please add anything that you think should come under M1. We can use the
>>> same thread to keep track of progress as well.
>>>
>>>
>>> --
>>> Thanks and Regards,
>>>
>>> Isuru H.
>>> +94 716 358 048
>>>
>>> --
>>> <%2B94%20716%20358%20048>
>>> Thanks and Regards,
>>>
>>> Isuru H.
>>> <%2B94%20716%20358%20048>
>>> +94 716 358 048* <http://wso2.com/>*
>>>
>>>
>>> * <http://wso2.com/>*
>>>
>>>
>>>
>
>
> --
> Reka Thirunavukkarasu
> Senior Software Engineer,
> WSO2, Inc.:http://wso2.com,
> Mobile: +94776442007
>
>
>


-- 

Udara Liyanage
Software Engineer
WSO2, Inc.: http://wso2.com
lean. enterprise. middleware

web: http://udaraliyanage.wordpress.com
phone: +94 71 443 6897

Re: [Discuss] Planing for Service Grouping - M1

Posted by Reka Thirunavukkarasu <re...@wso2.com>.
Hi

I'm in the process of testing hierarchical monitors. Will update the
progress once i get into to a working state..

Thanks,
Reka

On Wed, Sep 24, 2014 at 9:34 PM, Isuru Haththotuwa <is...@apache.org>
wrote:

> Hi,
>
> Tested the following flow:
>
>    1. Group Deployment.
>    2. Application Deployment.
>    3. Publishing information to meta data service.
>
> In step #3, encountered a deadlock scenario where when we try to publish
> to the meta data service while looping through the properties. Myself and
> Udara are looking in to this.
>
> On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <is...@apache.org>
> wrote:
>
>> Hi Devs,
>>
>> The purpose of this thread is to discuss $subject.
>>
>> I listed down some of the Tasks that we need for the initial milestone of
>> Service Grouping:
>>
>> Stratos Manager Rest API Support for Composite Applications)
>> - Deploying Group Definitions
>> - Deploying Compoite App Definitions
>> - Listing Deployed Composite Apps
>> - Exposing Composite App's instance informationPersist Group Definitions
>> in CC- Validate the Group Definition (check if any cartridges and/or sub
>> groups referred are already deployed)
>> - Persist the Group Definition deployed in CCParse the Application
>> Definition in CC and update Topology- Generate a unique key for the app
>> - Parse app definition
>> - Update topology
>> - Send Application Created event (with Subcription data)Create and
>> Persist Composite Application Subscriptions in SM from the Topology after
>> the ApplicationCreatedEvent- Create Composite Subscriptions (can extend
>> the current Subscription model) with the help of information sent using the
>> Application Create Event and meta data service (if required)
>> - Persist them in SMPayloads and information sharing for the composite
>> app model(Using metadata service)- Building initial payload with
>> required initial amount of info
>> - Specifying the information each member should expose/query (to get
>> information about dependents), using the meta data serviceMeta Data
>> Service Improvements- Improve the meta data service to put and get
>> informations, with support for getting dependent information for GroupingGeneric
>> Meta Data Client Component- A separate component to interact with the
>> meta data serviceAutoscaler acting upon Application Created event-
>> Create App Monitor and Group Monitor(s)
>> - Create the Cluster Monitors
>> - Asking to spawn instances in the relevant order for the clusterCartridge
>> Agent to support with Composite App events- Includes app and group as
>> the reference along with clusters
>> Please add anything that you think should come under M1. We can use the
>> same thread to keep track of progress as well.
>>
>>
>> --
>> Thanks and Regards,
>>
>> Isuru H.
>> +94 716 358 048
>>
>> --
>> <%2B94%20716%20358%20048>
>> Thanks and Regards,
>>
>> Isuru H.
>> <%2B94%20716%20358%20048>
>> +94 716 358 048* <http://wso2.com/>*
>>
>>
>> * <http://wso2.com/>*
>>
>>
>>


-- 
Reka Thirunavukkarasu
Senior Software Engineer,
WSO2, Inc.:http://wso2.com,
Mobile: +94776442007

Re: [Discuss] Planing for Service Grouping - M1

Posted by Isuru Haththotuwa <is...@apache.org>.
Hi,

Tested the following flow:

   1. Group Deployment.
   2. Application Deployment.
   3. Publishing information to meta data service.

In step #3, encountered a deadlock scenario where when we try to publish to
the meta data service while looping through the properties. Myself and
Udara are looking in to this.

On Mon, Sep 22, 2014 at 10:33 AM, Isuru Haththotuwa <is...@apache.org>
wrote:

> Hi Devs,
>
> The purpose of this thread is to discuss $subject.
>
> I listed down some of the Tasks that we need for the initial milestone of
> Service Grouping:
>
> Stratos Manager Rest API Support for Composite Applications)
> - Deploying Group Definitions
> - Deploying Compoite App Definitions
> - Listing Deployed Composite Apps
> - Exposing Composite App's instance informationPersist Group Definitions
> in CC- Validate the Group Definition (check if any cartridges and/or sub
> groups referred are already deployed)
> - Persist the Group Definition deployed in CCParse the Application
> Definition in CC and update Topology- Generate a unique key for the app
> - Parse app definition
> - Update topology
> - Send Application Created event (with Subcription data)Create and
> Persist Composite Application Subscriptions in SM from the Topology after
> the ApplicationCreatedEvent- Create Composite Subscriptions (can extend
> the current Subscription model) with the help of information sent using the
> Application Create Event and meta data service (if required)
> - Persist them in SMPayloads and information sharing for the composite
> app model(Using metadata service)- Building initial payload with required
> initial amount of info
> - Specifying the information each member should expose/query (to get
> information about dependents), using the meta data serviceMeta Data
> Service Improvements- Improve the meta data service to put and get
> informations, with support for getting dependent information for GroupingGeneric
> Meta Data Client Component- A separate component to interact with the
> meta data serviceAutoscaler acting upon Application Created event- Create
> App Monitor and Group Monitor(s)
> - Create the Cluster Monitors
> - Asking to spawn instances in the relevant order for the clusterCartridge
> Agent to support with Composite App events- Includes app and group as the
> reference along with clusters
> Please add anything that you think should come under M1. We can use the
> same thread to keep track of progress as well.
>
>
> --
> Thanks and Regards,
>
> Isuru H.
> +94 716 358 048
>
> --
> <%2B94%20716%20358%20048>
> Thanks and Regards,
>
> Isuru H.
> <%2B94%20716%20358%20048>
> +94 716 358 048* <http://wso2.com/>*
>
>
> * <http://wso2.com/>*
>
>
>