Cool, I'll implement Bela's suggestion for the next release:
https://issues.jboss.org/browse/ISPN-2332
On 21 Sep 2012, at 17:06, Erik Salter wrote:
> I like Bela’s configuration. Maybe take it a step further and allow a
> default backup configuration for all sites?
the backup configuration is now inherited from the default site even now, or
are you referring to something else?
>
> FWIW, here’s my config. I get warnings about looping back to the site, but
> it seems to work.
>
> <global>
>
> <sites local="${net.beaumaris.site.local:site1}">
> <site name="${net.beaumaris.site.site01:site1}"/>
> <site name="${net.beaumaris.site.site02:site2}"/>
> <site name="${net.beaumaris.site.site03:site3}"/>
> </sites>
> …
> <default>
>
> <sites>
> <backups>
> <backup site="${net.beaumaris.site.site01:site1}" strategy="ASYNC"/>
> <backup site="${net.beaumaris.site.site02:site2}" strategy="ASYNC"/>
> <backup site="${net.beaumaris.site.site03:site3}" strategy="ASYNC"/>
> </backups>
> </sites>
>
> Erik
>
> From:
> [email protected][mailto:[email protected]]
> On Behalf OfMircea Markus
> Sent: Friday, September 21, 2012 8:36 AM
> To: infinispan -Dev List
> Subject: Re: [infinispan-dev] Cross-site clustering
>
>
> On 21 Sep 2012, at 15:13, Bela Ban wrote:
>
>
> Hi Mircea,
>
> I'm in the process of setting up the Infinispan GUI demo across 3 data
> centers, and I ran into an issue with the Infinispan config file. Not
> really a bug, but something that could be improved.
>
> Currently, the Infinispan config (let's call it infinispan.xml) defines
> the sites and their backup sites and refers to the local JGroups cluster
> config file (jgroups.xml). The latter has a RELAY2 protocol at the top
> of its stack which points to the relay configuration (relay2.xml), which
> defines the sites and how they connect to each other. Finally, there's a
> jgroups-relay2.xml file (referred to from relay2.xml) which defines the
> global bridge, connecting all 3 sites.
>
> OK, so that 4 config files and I don't see how to reduce them.
> However... currently infinispan.xml is *site-specific*, ie. we need 1
> infinispan.xml for LON, 1 for SFO and 1 for NYC.
>
> The 3 JGroups config files (jgroups.xml, relay2.xml and
> relay2-bridge.xml) are *not* site-specific, ie. they can be used in any
> site, provided that we set a few system properties, such as
> cluster-specific mcast address and port, and site name (relay2.xml).
>
> I believe cross-site clustering would benefit from making infinispan.xml
> symmetric as well, that is, we could use it in any site.
>
> To do this, I suggest the following:
>
> #1 Sites config:
> <sites local="LON">
> <site name="SFO"/>
> <site name="NYC"/>
> <site name="LON"/>
> </sites>
>
>
> Nothing needs to be changed here, except to parameterize local: <sites
> local="${SITE:LON}"...>. A node in a given site can then be started
> using -DSITE=LON. This could also be used for relay2.xml.
>
> - Question-1: why do we need to list the sites above ? We're not
> defining any config for those sites, so I don't see why this is needed…
> yes, defining these sites is not required. The only thing that's needed is
> <sites local="LON">
>
>
> #2 Backups config:
> <namedCache name="users">
> <sites>
> <backups>
> <backup site="NYC" backupFailurePolicy="WARN"
> strategy="SYNC" timeout="12000"/>
> <backup site="SFO" backupFailurePolicy="IGNORE"
> strategy="ASYNC"/>
> </backups>
> </sites>
> </namedCache>
>
>
> This is *asymmetric*. IMO, a better config would be:
>
> <global>
> <sites>
> <localSite="${site:LON}" backupSites="${backup-sites:SFO,NYC}" />
> This would require configuring "localSite" for all caches in the system.
> Unless added to the default cache and forbid an override. I'd prefer to keep
> it in the global, but don't really have a strong feeling about it.
> <backups>
> <backup site="NYC" backupFailurePolicy="WARN"
> strategy="SYNC" timeout="12000"/>
> <backup site="SFO" backupFailurePolicy="IGNORE"
> strategy="ASYNC"/>
> <backup site="LON" backupFailurePolicy="IGNORE"
> strategy="ASYNC"/>
> </backups>
> </sites>
> </global>
>
> For me the above seems harder to read than the one currently in use, but otoh
> simplifying the config would be something nice.
> What do other think? Erik?
>
>
>
> Here, we define global backup strategies and the local site. Both of
> them can be parameterized, e.g. we start up nodes in
> - LON: -Dsite=LON -DbackupSites="SFO,NYC"
> - SFO: -Dsite=SFO -DbackupSites=NYC
> - NYC: -Dsite=NYC -DbackupSites= // no backups
>
>
> This would allow us to have only 1 infinispan.xml, regardless of the
> site in which it is used.
>
> Of course, since backup strageties are globally defined, if people
> wanted different backup strategies per site (or per named cache), they
> could still copy infinispan.xml and modify it...
>
> WDYT ?
>
>
>
>
> --
> Bela Ban, JGroups lead (http://www.jgroups.org)
> _______________________________________________
> infinispan-dev mailing list
> [email protected]
> https://lists.jboss.org/mailman/listinfo/infinispan-dev
>
> Cheers,
> --
> Mircea Markus
> Infinispan lead (www.infinispan.org)
>
>
>
>
> _______________________________________________
> infinispan-dev mailing list
> [email protected]
> https://lists.jboss.org/mailman/listinfo/infinispan-dev
Cheers,
--
Mircea Markus
Infinispan lead (www.infinispan.org)
_______________________________________________
infinispan-dev mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/infinispan-dev