Hi Imesh, Is there a repo for Carbon kernel extension point implementation? I would like to contribute :)
I think we can push this feature to a P2 repo and install it when we are building the product (for eg: Stratos) distribution. That would be cleaner than copying the jar to dropins. Thanks. On Thu, Jul 23, 2015 at 8:55 AM, Afkham Azeez <[email protected]> wrote: > 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 3320919 <%2B94%2077%203320919>blog: * > *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 > > -- Akila Ravihansa Perera WSO2 Inc.; http://wso2.com/ Blog: http://ravihansa3000.blogspot.com
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
