I knew that there was a Python Cartridge Agent in the works, but did I miss any 
recent 
the discussion of it? I provided some details comments/requirements on some 
related 
discussions in May/June [1],[2] but got no responses to suggest if those would 
be 
considered or not.

In case I have been asleep, one thing I would like to ensure the new agent 
supports is 
restartability. This is required because the CA is not stateless: at least in 
the 
start_servers extension point, when used in "proxy" mode [3], if the proxy 
server 
hosting the CAs for a bunch of proxied VMs dies, the current CA cannot be 
restarted 
on a failover server *in* the start_servers state.

Note that [3] was written originally in terms of the need to make a cartridge 
out of a 
VM that did not support Java: even with a Python CA the following two classes 
of 
equivalent problem still remain:
     *  VMs that don't have Python.
     *  "Hostile" VMs which are simply not open to having a CA inserted for 
Cartridgification.
These are surprisingly common in the NFV world.

Thanks, Shaheed

[1] Cartridge Agent Extension Points
[2] autoscaling - load average and memory consumption on docker/lxc instances
[3] Cartridge agent for a VM without Java


On Tuesday 23 Sep 2014 20:34:09 Chamila De Alwis wrote:


Hi,

For $subject, we decided to implement the following steps.

Following aspects need to be tested from agent's point of view.

1) Listening to and publishing instance related events2) Managing artifacts3) 
Managing tenants based on tenant related events4) Managing log publishing

We chose the following three cartridge types to cover the above basic scenarios.

1) PHP - Single tenant framework cartridge2) MySQL - Single tenant data 
cartridge3) 
WSO2AS - Multi tenant cartridge



The initial test cases are as follows.It is a work in progress, however further 
test cases 
will be added in the future. 



Please add your suggestions on any improvements. 




*Cartridge Agent successfully publishes instance status events*
*Prerequisites *
Stratos Installed
Puppet master configured
Stratos policies deployed
A base cartridge configured
MySQL cartridge definition deployed




*Steps*
*Step*
*Expected result*
Log in to Stratos admin console
My Cartridges page will be displayed
Subscribe to MySQL cartridge
MySQL subscription page will be loaded
Enter a name for the cartridge and click Subscribe
Subscription page will be displayed with MySQL cartridge marked as subscribed
Wait until cartridge is spawned
wso2carbon.log will output "Instance is successfully starting up." when the 
instance is 
spawning.
SSH in to the spawned instance 
Successfully SSH in to the instance
Check the log file, /tmp/puppet_log 
/tmp/puppet_log will out put "Initialization completed successfully." after 
puppet has 
successfully configured the instance
Check the wso2carbon.log for the InstanceStartedEvent published from the 
cartridge 
agent
wso2carbon.log will output the received event details.
Check the wso2carbon.log for the InstanceActivatedEvent published from the 
cartridge 
agent
wso2carbon.log will output the received event details.












*Cartridge Agent successfully listenes to instance notifier events*
*Prerequisites *
Stratos Installed
Puppet master configured
Stratos policies deployed
A base cartridge configured
PHP cartridge definition deployed




*Steps*
*Step*
*Expected result*
Log in to Stratos admin console
My Cartridges page will be displayed

Reply via email to