Reputation: 899
I have Cassandra cluster on AWS. I have it only for testing purposes. Because of that I need to stop my instances and start them some other time. I deployed cluster with Datastax AMI and everything seems alright. I stoped instances in EC2 Management console and waited for 'stoped' state. After that I started them. I connected to them and Cassandra did not work. Command nodetool
could not reach localhost:7199. Security groups on AWS allow all inbound and outbound traffic. I tried to sudo service cassandra start
, but I got the same error.
I need start all nodes of cluster without manual action on them.
Upvotes: 2
Views: 1564
Reputation: 1931
Ah. You stopped instances from the EC2 management console. This erased everything from the ephemeral storage. You should only restart instances if necessary, but never stop them. Or use sudo service dse restart
to restart the dse service only without restarting the entire instance. Now I'd suggest that your best bet is to redeploy the cluster (or at least this node) from scratch....
Here is some explanation of what the instance store (ephemeral store) is: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html
The data in an instance store persists only during the lifetime of its associated instance. If an instance reboots (intentionally or unintentionally), data in the instance store persists. However, data on instance store volumes is lost under the following circumstances:
Failure of an underlying drive
Stopping an Amazon EBS-backed instance
Terminating an instance
Datastax uses the ephemeral storage to store data and commit logs, because this storage is much faster than the ebs storage. More details here: http://datastax.com/documentation/datastax_enterprise/4.6/datastax_enterprise/install/installAMI.html
Upvotes: 2