Hi Udara,
Great work on implementing the cartridge agent plugin for cluster
discovery. I have few comments:
I see the following get method invoking two metadata API operations.
Ideally a get method should not do this. Shall we rename this method?
def get_all_members(self, service_name, cluster_id):
...
for member in members:
if(member.member_id == self.my_member_id):
self.log.info("**** My Ips %s , %s" %
(member.member_default_private_ip, member.member_default_public_ip))
self.publish_as_wka_member(member.member_default_private_ip)
else:
self.log.info("Other WKA members memberid=%s privateip=%s,
publicip=%s " % (member.member_id, member.member_default_private_ip,
member.member_default_public_ip))
self.add_to_restart_queue(member.member_id)
Shall we clean up the info logs? I see some asterisks being printed. May be
you added them for testing purposes.
def run_plugin(self, values):
self.log = LogFactory().get_log(__name__)
self.log.info("************************** starting
wka_member_configurator")
Thanks
On Thu, Apr 30, 2015 at 11:16 AM, Udara Liyanage <[email protected]> wrote:
> Hi,
>
> I am working on $subject.
>
> * We use puppet to download and extract carbon server into the instnace
> * WKA configuration is done by cartridge agent by plugins. We can not do
> WKA configuration by puppet since wka members are dynamic
> *
>
> Define an application which has wka-carbon cartridge and non-wka-carbon
> cartridge. non-wka cartridge has a startup dependency so wka cluster
> startups first.
>
>
> In order to identify weather it is a wka or non wka, we can define
> properties in the cartridge definition. So the properties will be visible
> in cartridge agent.
>
> CLUSTERING_TYPE=wka
> SERVER_TYPE=worker|manager
>
> *Logic in cartridge agent plugins*
>
> A wka member when started, it will
> publish its IP to metadata as wka members
> Fetch other members of its cluster and all non wka members by reading
> topology and adds them to a restart queue. This is done since other members
> should be reconfigured when a wka members is added
>
> A non wka member just fetches the wka members from metadata service and
> updates its configuration (axis2.xml)
>
> Every members listen to MemberActivates event, when the event is triggered
> it check weather this members is a wka member. If so then check if I am in
> the restart queue, if so start reconfiguring by fetching updated wka
> members from the metadata service.
>
> I will post the application definition and more diagrams as I progress on.
>
> --
>
> Udara Liyanage
> Software Engineer
> WSO2, Inc.: http://wso2.com
> lean. enterprise. middleware
>
> web: http://udaraliyanage.wordpress.com
> phone: +94 71 443 6897
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>
--
*Imesh Gunaratne*
Senior Technical Lead
WSO2 Inc: http://wso2.com
T: +94 11 214 5345 M: +94 77 374 2057
W: http://imesh.gunaratne.org
Lean . Enterprise . Middleware
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev