Thanks Manula.
Will look for the possibility and move the central puppet config.pp file
contents out of the module.

Thanks,
Suhan

On Mon, Jan 5, 2015 at 3:09 PM, Manula Waidyanatha <man...@wso2.com> wrote:

> Hi Suhan,
> You have to use regex if you want to have different configurations for
> each server (hostname). If you can move all the node specific data out of
> the module (to node.pp or site.pp)
>
> On Mon, Jan 5, 2015 at 10:45 AM, Suhan Dharmasuriya <suh...@wso2.com>
> wrote:
>
>> Hi,
>>
>> Test Automation team is currently in to R&D of deployment automation.
>> Currently we are focusing on deployment of WSO2 Application Server
>> clusters of worker manager pattern.
>>
>> As of now, we have configured deployment automation in a way that the
>> cluster node names in a deployment configuration file [1]  and the product
>> configuration information (appserver's axis2.xml, carbon.xml, etc...) in
>> a config.pp [2] file which will be placed as
>> /etc/puppet/modules/appserver/params.pp after running the main python
>> script.
>>
>> Therefore when new instances are spawned in OpenStack according to the
>> node names in config file [1] puppet agents pre-installed in them will
>> retrieve their respective xml configurations from
>> /etc/puppet/modules/appserver/params.pp file and perform puppet catalog
>> runs.
>>
>> Refer Github repo [3] python_scripts for more clarifications.
>>
>> Currently node names are matched directly against the product
>> configuration puppet file $servers names [2].
>>
>> Our next step is to give the number of worker/manager subdomain node
>> combination and spawn
>> the cluster in to existence on OpenStack environment.
>> We are planning of fronting an elb for each worker/manager subdomain.
>>
>> Then, our deployment.cfg file will be modified as follows by indicating
>> the number of sub domain nodes.
>> [nodes]
>> appserver-mgr = 10
>> appserver-wkr = 20
>>
>> config.pp file will be as follows.
>> $servers = { appserver-mgr => { axis2 => {subDomain => 'mgt', members =>
>> ['elb1-ip', 'elb2-ip']}, carbon => {subDomain => 'mgt',}, serverOptions
>> => '-Dsetup', server_home => $carbon_home, }, appserver-wkr => { axis2
>> => {subDomain => 'worker', members => ['elb1-ip', 'elb2-ip']}, carbon =>
>> {subDomain => 'worker',}, serverOptions => '-DworkerNode=true',
>> server_home => $carbon_home, }, }
>>
>>
>> Instances will be spawned in OpenStack as follows.
>> appserver-mgr-1
>> appserver-mgr-2
>> ...
>> appserver-mgr-10
>> appserver-wkr-1
>> appserver-wkr-2
>> ...
>> appserver-wkr-20
>>
>> How can I match the new server names against the new product
>> configuration file?
>> Can I use regular expressions? Is it a recommended approach?
>>
>> Is there any better alternative for pushing product configurations in
>> terms of standards, practices and performance for clusters with large
>> number of nodes?
>>
>> [1]
>> https://github.com/suhand/Deployment-Automation/blob/master/deployment-automation-total-puppet/python_scripts/deployment.cfg
>> [2]
>> https://github.com/suhand/Deployment-Automation/blob/master/deployment-automation-total-puppet/python_scripts/config.pp
>> [3]
>> https://github.com/suhand/Deployment-Automation/tree/master/deployment-automation-total-puppet
>>
>> Thanks,
>> Suhan
>> --
>> Suhan Dharmasuriya
>> Software Engineer - Test Automation
>>
>> *WSO2, Inc. *
>>
>> lean . enterprise . middleware
>> Tel: +94 112 145345
>> Mob: +94 779 869138
>> Blog: http://suhan-opensource.blogspot.com/
>>
>
>
>
> --
> Regards,
> Manula Waidyanatha
> Systems Engineer, WSO2, Inc.
> Phone: +94 774 195853
> Blog: blog.manula.org
>



-- 
Suhan Dharmasuriya
Software Engineer - Test Automation

*WSO2, Inc. *

lean . enterprise . middleware
Tel: +94 112 145345
Mob: +94 779 869138
Blog: http://suhan-opensource.blogspot.com/
_______________________________________________
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to