geode-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jinmei Liao (JIRA)" <>
Subject [jira] [Commented] (GEODE-1986) The Cluster Configuration Service must absolutely not be required to run Geode.
Date Thu, 13 Oct 2016 17:03:20 GMT


Jinmei Liao commented on GEODE-1986:

"This suggests the joining member (server) must enable cluster config in order to pick up
the security configuration"
No, they don't have to "enable" cluster config, they just have to "use" cluster config, which
are two different configurations.

If a locator is secured but does not have cluster config service running, a server can connect
to it as long as it has correct credentials. At that point, we do no check if their security
settings are matched up. It will totally up to the person starting them up to make sure they
use the same security settings to protect their data.

> The Cluster Configuration Service must absolutely not be required to run Geode.
> -------------------------------------------------------------------------------
>                 Key: GEODE-1986
>                 URL:
>             Project: Geode
>          Issue Type: Bug
>          Components: configuration
>            Reporter: John Blum
>            Assignee: Jinmei Liao
>            Priority: Critical
>              Labels: ClusterConfig, ClusterConfigurationService
>         Attachments:
> A bug was introduced in Geode when the logic to fetch the Cluster Configuration meta-data
from the Locator in the cluster by a joining member was refactored into it's own [class|]
causing the following issues...
> 1. First, and foremost, the _Cluster Configuration_ service is now, seemingly no longer
*optional* (hence, _required_), which is both short sighted and too restrictive, and will
break existing [embedded Geode application] deployments, particularly in situations where
GemFire config, and especially, _Gfsh_ were not used to configure the cluster, which will
be true when users upgrade existing clusters based on an earlier versions of Apache Geode
(namely GemFire < v7.0, once GemFire 9 is based on Apache Geode) and as well as _Spring_
> This change is apparent from the removal of the [conditional check on the Geode System
property (1)|],
which is no longer present [here (2)|]
or possibly [here (3)|].
> 2. This does not work in the embedded Locator case.  If a user configures a peer Cache
using the following in his/her application...
> {code:java}
> ... = new CacheFactory()
>   .set("name", "Example")
>   .set("start-locator", "localhost[10334]")
>   ...
>   .create();
> {code}
> And another members joins, the logic in (2) above, will fail with...
> {code:java}
> Caused by: org.apache.geode.GemFireConfigException: cluster configuration service not
>  	at org.apache.geode.internal.cache.GemFireCacheImpl.requestSharedConfiguration(
>  	at org.apache.geode.internal.cache.GemFireCacheImpl.initialize(
>  	at org.apache.geode.internal.cache.GemFireCacheImpl.basicCreate(
>  	at org.apache.geode.internal.cache.GemFireCacheImpl.create(
>  	at org.apache.geode.cache.CacheFactory.create(
>  	at org.apache.geode.cache.CacheFactory.create(
>  	... 42 more
>  Caused by: org.apache.geode.internal.process.ClusterConfigurationNotAvailableException:
Unable to retrieve cluster configuration from the locator.
>  	at org.apache.geode.internal.cache.ClusterConfigurationLoader.requestConfigurationFromLocators(
>  	at org.apache.geode.internal.cache.GemFireCacheImpl.requestSharedConfiguration(
>  	... 47 more
> {code}

This message was sent by Atlassian JIRA

View raw message