A rough guess on the best way to do this with cql, without looking too deeply into it:
You would likely have to implement a custom load balancing policy within the driver that only uses coordinator nodes and/or modify refreshNodeListAndTokenMap() behaviour in ControlConnection.java (there should also be an equivalent class in the python driver). On Thu, 11 May 2017 at 08:19 Dikang Gu <dikan...@gmail.com> wrote: > 1. The coordinator still store system data and hints, but they should not > store any user data since they are not part of ring. > 2. We are using coordinator for thrift client. For cql based drivers, they > needs to talk to nodes in the ring, so I think coordinator mode won't work > for them. > > -Dikang > > On Tue, May 9, 2017 at 2:01 PM, Anubhav Kale < > anubhav.k...@microsoft.com.invalid> wrote: > >> Hello, >> >> >> >> With some inspiration from the Cassandra Summit talk from last year, we >> are trying to setup a cluster with coordinator-only nodes. We setup >> join_ring=false in env.sh, disabled auth in YAML and the nodes are able to >> start just fine. However, we’re running into a few problems >> >> >> >> 1] The nodes marked with join_ring=false continue to store data. Why ? >> >> 2] We tried Python driver’s whitelistedpolicy. But we notice message like >> below, so we are not able to send queries to all nodes marked as >> coordinators. We also changed the Scala driver to support whitelisting, but >> see the same thing. What are we missing ? >> >> 3] Is there any way to concretely tell that only coordinator nodes are >> getting requests from clients ? We don’t have OpsCenter. >> >> >> >> Thanks ! >> >> >> >> 2017-05-09 20:45:25,060 [DEBUG] cassandra.cluster: [control connection] >> Removing host not found in peers metadata: <Host: 10.80.10.128> >> >> 2017-05-09 20:45:25,060 [INFO] cassandra.cluster: Cassandra host >> 10.80.10.128 removed >> >> 2017-05-09 20:45:25,060 [DEBUG] cassandra.cluster: Removing host >> 10.80.10.128 >> >> 2017-05-09 20:45:25,060 [DEBUG] cassandra.cluster: [control connection] >> Removing host not found in peers metadata: <Host: 10.80.10.127> >> >> 2017-05-09 20:45:25,060 [INFO] cassandra.cluster: Cassandra host >> 10.80.10.127 removed >> >> 2017-05-09 20:45:25,060 [DEBUG] cassandra.cluster: Removing host >> 10.80.10.127 >> >> 2017-05-09 20:45:25,060 [DEBUG] cassandra.cluster: [control connection] >> Removing host not found in peers metadata: <Host: 10.80.10.129> >> >> 2017-05-09 20:45:25,060 [INFO] cassandra.cluster: Cassandra host >> 10.80.10.129 removed >> >> 2017-05-09 20:45:25,060 [DEBUG] cassandra.cluster: Removing host >> 10.80.10.129 >> >> 2017-05-09 20:45:25,060 [DEBUG] cassandra.cluster: [control connection] >> Finished fetching ring info >> >> 2017-05-09 20:45:25,060 [DEBUG] cassandra.cluster: [control connection] >> Rebuilding token map due to topology changes >> >> 2017-05-09 20:45:25,081 [DEBUG] cassandra.metadata: user functions table >> not found >> >> 2017-05-09 20:45:25,081 [DEBUG] cassandra.metadata: user aggregates table >> not found >> >> 2017-05-09 20:45:25,098 [DEBUG] cassandra.cluster: Control connection >> created >> >> 2017-05-09 20:45:25,099 [DEBUG] cassandra.pool: Initializing connection >> for host 10.80.10.125 >> >> 2017-05-09 20:45:25,099 [DEBUG] cassandra.pool: Initializing connection >> for host 10.80.10.126 >> >> >> > > > > -- > Dikang > > -- Ben Bromhead CTO | Instaclustr <https://www.instaclustr.com/> +1 650 284 9692 Managed Cassandra / Spark on AWS, Azure and Softlayer