Looks good Reka,

We might need to get the minimum count of instances of a particular cluster.

We can get it per cluster which will be effective for all the network
partitions or per network partition.

If it is per cluster,

+ id
+ applicationPolicy[1..1]
        + appId
        + networkPartition[1..n]
                  + id
                  + activeByDefault
                  + partition[1..n]
                          + id
                          + provider
                          + properties[1..n]
+ childPolicies[1..n]
        + childId (Group alias or cartridge alias)
        *+ min*
        + networkPartition[1..n]
                  + id
                  + partition[1..n]
                          + id
                          + max

If it is per network partition,

+ id
+ applicationPolicy[1..1]
        + appId
        + networkPartition[1..n]
                  + id
                  + activeByDefault
                  + partition[1..n]
                          + id
                          + provider
                          + properties[1..n]
+ childPolicies[1..n]
        + childId (Group alias or cartridge alias)
        + networkPartition[1..n]
                  + id
                  *+ min*
                  + partition[1..n]
                          + id
                          + max
@devs,

Which way do you guys think better?

Thanks.

On Sun, Nov 30, 2014 at 10:23 AM, Reka Thirunavukkarasu <r...@wso2.com>
wrote:

> Hi all,
>
> In grouping, as we are supporting deployment Policy in the *group level
> or in the cluster level*, it would be easy if we have a single place to
> define all the deployment policy of children. The advantages of defining
> global deployment policy as below:
>
> - Same application can be deployed in HA or in burst manner using
> different deployment Policy.
>        * will be starting actual VMs after deploying the deployment Policy
> rather than starting it, once the application got deployed.
>       * deployment Policy will be coupled with an application always.
>
> - No need to define multiple deployment policy per cluster level or group
> level
>
> - Validation can also happen in the single place
>       * Each children's policy can be validated against the
> applicationPolicy whether relevant partition/Network partition is already
> defined or not
>      * Each leave cluster should have a deployment policy either inherit
> from one of the parent group or define it by its own.
>
> - Partition can also be defined in the Deployment Policy itself
>
> Please find the proposed format for the deployment Policy for application
> as following:
>
> + id
> + applicationPolicy[1..1]
>         + appId
>         + networkPartition[1..n]
>                   + id
>                   + activeByDefault
>                   + partition[1..n]
>                           + id
>                           + provider
>                           + properties[1..n]
> + childPolicies[1..n]
>         + childId (Group alias or cartridge alias)
>         + networkPartition[1..n]
>                   + id
>                   + partition[1..n]
>                           + id
>                           + max
>
> Please find the definition of new elements in the Deployment Policy as
> below:
>
> *applicationPolicy* : will have definition of all the network partition
> and partition which will be used throughout the application.
>
> *activeByDefault* : If true means, that network partition will be used by
> default. If false, means it can be used when all the resources are
> exhausted(in bursting)
>
> *childPolicies* : Each child policy will refer the network partition and
> relevant partition from applicationPolicy to define their own deployment
> pattern. Please note that, if you define a childPolicy by referring to
> group, then underlying clusters/group will inherit the same policy.
>
> *max: *Maximum no of instances that can be handled by a partition.
>          For group: max group instances can be in a partition
>          For Cluster: max members that can be kept for a cluster instance
> in a partition.
>
> FYI: A sample Policy is attached here with.
>
> Please share your suggestions on this...
>
>
> Thanks,
> Reka
>
>
>
>
> --
> Reka Thirunavukkarasu
> Senior Software Engineer,
> WSO2, Inc.:http://wso2.com,
> Mobile: +94776442007
>
>
>


-- 
--
Lahiru Sandaruwan
Committer and PMC member, Apache Stratos,
Senior Software Engineer,
WSO2 Inc., http://wso2.com
lean.enterprise.middleware

email: lahi...@wso2.com blog: http://lahiruwrites.blogspot.com/
linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146

Reply via email to