Hi Shaheed,

All 3 mention thread has discussed lot of ideas.  As far as my understand
all [1][2][3] will address eventually. As a first step we need to written
in python is very important, what i can see, when we moving to docker,
containers can boot up within 1,2 second and light weight agent is must.
Also python more devops friendly interpreter language, its easy to extent
when and there. IMO, we have to start in somewhere and keep improving it,
to our needs

thanks

On Thu, Sep 25, 2014 at 12:50 PM, Shaheed Haque <shahh...@cisco.com> wrote:

>
>
> 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 events
> 2) Managing artifacts
> 3) Managing tenants based on tenant related events
> 4) Managing log publishing
>
> We chose the following three cartridge types to cover the above basic
> scenarios.
>
> 1) PHP - Single tenant framework cartridge
> 2) MySQL - Single tenant data cartridge
> 3) 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
>
> Subscribe to PHP cartridge
>
> PHP subscription page will be loaded
>
> Enter a name and the repository for the cartridge and click Subscribe
>
> Subscription page will be displayed with PHP 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 for CompleteTopologyEvent and CompleteTenantEvent being listened to
> by the agent
>
> /var/log/apache-stratos/cartridge-agent-extensions.log file will out put
> information received with the mentioned events
>
> Update the remote repository with new files and check if the
> ArtifactUpdatedEvent was received by the cartridge agent
>
> /var/log/apache-stratos/cartridge-agent-extensions.log file will out put
> information received with the mentioned events
>
> Refresh the served pages and check if the updated pages are served
>
> Web application is updated with the new artifacts
>
>
>
> Regards,
>
> Chamila de Alwis
>
> Software Engineer | WSO2 | +94772207163
>
> Blog:
>
> code.chamiladealwis.com
>
>
>
>
>
>


-- 
Lakmal Warusawithana
Vice President, Apache Stratos
Director - Cloud Architecture; WSO2 Inc.
Mobile : +94714289692
Blog : http://lakmalsview.blogspot.com/

Reply via email to