1

I'm trying to learn Elassandra and am having an issue configuring it to my current Cassandra instance (I'm learning Cassandra as well).

I downloaded version 3.11.3 of Cassandra to my local computer. I didn't change anything except the cluster_name inside of cassandra.conf. It runs fine and I used bin/cqlsh to create a keyspace and a "user" table with a couple of rows for testing.

I followed the steps on the Elassandra integration page. I downloaded version 6.2.3.10 of Elassandra. I replaced the cassandra.yaml, cassandra-rackdc.properties and cassandra-topology.properties in the Elassandra conf with the ones from the Cassandra conf (I am assuming those last 2 are the "snitch configuration file" mentioned in the instructions but I'm not sure). I stopped my Cassandra instance and then ran the bin/cassandra -e f from my Elassandra directory.

When I run curl -X GET localhost:9200, the output seems to have my correct cluster name, etc.

However, if I run bin/cqlsh from my Elassandra directory and run describe keyspaces, the keyspace I created under Cassandra isn't there. I tried copying the data directory from Cassandra to Elassandra and that seemed to work, but I feel this can't possibly be the actual solution.

Can someone point me to what I am missing in regards to this configuration? With the steps being listed on the website, I'm sure there must be some dumb thing I'm missing.

Thanks in advance.

Snowy Coder Girl
  • 5,408
  • 10
  • 41
  • 72
  • From what I see, you have installed elassandra as a separate instance, right? I mean, different binaries from cassandra...If this is the case, then the solution of copying the data folder seems right. If you wanted to avoid copying the files maybe you should have [upgraded cassandra to elessandra](http://doc.elassandra.io/en/latest/integration.html#rolling-upgrade-to-elassandra) or [create a new elessandra dc in your existing cassandra cluster](http://doc.elassandra.io/en/latest/integration.html#create-a-new-elassandra-datacenter) – Horia Feb 07 '19 at 04:13
  • 1
    Hello, you did good. The doc isn't really clear about this, but yes you should either copy or symlink the data folder. In packaged installation, the data location is always /var/lib/cassandra so there wouldn't be this extra step. – barth Feb 07 '19 at 11:52
  • @barth - I tried changing the `data_file_directories` value in my Elassandra's `cassandra.yaml` to point to my existing Cassandra data folder (`/home/myname/apache-cassandra-3.11.3/data`), but the keyspace still isn't there. – Snowy Coder Girl Feb 07 '19 at 16:22
  • @RachelG. You said that after copying the data folder from cassandra to elassandra, the keyspace appears, right ? That's the normal behavior, and an other way to the same is to symlink (or update data_file_directories) to the cassandra data folder. If then the keyspace does not appear anymore, you probably have a configuration issue. – barth Feb 08 '19 at 14:17
  • @barth - I cannot go with the copying over of the `data` folder. Our company has too much data for this to be effective, so I'm looking at how I can point Elassandra at Cassandra. So I created a standalone Cassandra with a keyspace, table, and sample rows. Then I stopped that and copied over `cassandra.yaml`, `cassandra-rackdc.properties` and `cassandra-topology.properties` into Elassandra as I believe the guide instructs. But the data isn't there, so I tried to update `data_file_directories` in Elassandra, but still no luck. – Snowy Coder Girl Feb 11 '19 at 19:50
  • I get the feeling I should set an environment variable for `CASSANDRA_HOME` to point to my old Cassandra, but that yields `Could not find or load main class org.apache.cassandra.service.ElassandraDaemon`. – Snowy Coder Girl Feb 11 '19 at 20:19

0 Answers0