The Hazelcast community is also working on implementing a Kubernetes based discovery implementation.
On Thu, Jul 23, 2015 at 8:00 AM, Sameera Jayasoma <[email protected]> wrote: > > > On Thu, Jul 23, 2015 at 2:10 AM, Imesh Gunaratne <[email protected]> wrote: > >> Hi All, >> >> We implemented a new Carbon membership scheme for Carbon servers for >> automatically discovering the Hazelcast cluster via the Stratos topology. >> This is for automatically discovering Carbon instances in a Carbon cluster >> when running on Private PaaS. In the previous version of the Private PaaS >> we used WKA membership scheme for this and implemented additional logic to >> manage the number of WKA members and their recovery process. In the >> previous model we needed to restart the entire Carbon cluster if all the >> existing WKA members get terminated due to some reason. >> >> The initial implementation of $subject which was done for Carbon 4.4.0 >> can be found here [1]. >> >> *How it works* >> >> This new model allows all the members in the cluster to get connected to >> all the other members. More importantly the member list of the Hazelcast >> cluster configuration get updated dynamically when new members join the >> cluster and when existing members leave. >> > > Yes. Treating all the members in the cluster as WKA members is a tried and > tested method. This is the way to solve this problem. > > >> >> >> As shown in the above diagram the Stratos membership scheme fetch the >> topology from the message broker and find the list of member IP addresses. >> Then those IP addresses are configured in Hazelcast Network Configuration >> and let the Clustering Agent to create the Hazelcast instance. This happens >> at the server startup. >> >> Once a new member is created by the PaaS, it executes the same logic and >> get connected to all the existing members available in the given >> cluster(s). Once this happens the existing members get connected back to >> the new member via Hazelcast. >> >> In the axis2.xml we can specify a list of cluster ids from which the >> members should be listed from: >> >> <clustering >> class="org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent" >> enable="true"> >> ... >> <parameter name="membershipScheme">stratos</parameter> >> <parameter >> name="clusterIds">cluster-1,cluster-2</parameter> >> ... >> </clustering> >> >> Here we have allowed to specify multiple cluster ids to be able to use >> cartridge grouping functionality in Private PaaS which would allow us to >> model worker/manager separation. >> >> *Work in progress* >> >> Currently in the Carbon Kernel we do not have an extension point for >> plugging in new membership schemes. As a result we had to patch the Carbon >> Kernel Core module to do this initial implementation. >> > > From Hazelcast 3.6 release, they are introducing a new Hazelcast discovery > API. This will allow us to plug different membership schemes easily. Imesh, > Can you create a Jira in the Carbon product 4.5 version? > >> >> Now we are in the process of introducing an extension point for plugging >> in custom membership schemes to the Carbon runtime. Once that is >> implemented we could move the above feature to a separate bundle and drop >> it to the dropins folder and use it. >> >> [1] https://github.com/imesh/stratos-membership-scheme >> >> Thanks >> >> -- >> *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 >> >> > > > -- > Sameera Jayasoma, > Software Architect, > > WSO2, Inc. (http://wso2.com) > email: [email protected] > blog: http://blog.sameera.org > twitter: https://twitter.com/sameerajayasoma > flickr: http://www.flickr.com/photos/sameera-jayasoma/collections > Mobile: 0094776364456 > > Lean . Enterprise . Middleware > > -- *Afkham Azeez* Director of Architecture; WSO2, Inc.; http://wso2.com Member; Apache Software Foundation; http://www.apache.org/ * <http://www.apache.org/>* *email: **[email protected]* <[email protected]> * cell: +94 77 3320919blog: **http://blog.afkham.org* <http://blog.afkham.org> *twitter: **http://twitter.com/afkham_azeez* <http://twitter.com/afkham_azeez> *linked-in: **http://lk.linkedin.com/in/afkhamazeez <http://lk.linkedin.com/in/afkhamazeez>* *Lean . Enterprise . Middleware*
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
