【问题标题】:How to restart Cassandra EC2 instance?如何重启 Cassandra EC2 实例?
【发布时间】:2015-05-11 04:36:15
【问题描述】:

我在 AWS 上有 Cassandra 集群。我有它只是为了测试目的。因此,我需要停止我的实例并在其他时间启动它们。我使用 Datastax AMI 部署了集群,一切似乎都很好。我在 EC2 管理控制台中停止了实例并等待“停止”状态。在那之后,我开始了他们。我连接到他们并且 Cassandra 没有工作。命令 nodetool 无法到达 localhost:7199。 AWS 上的安全组允许所有入站和出站流量。我试图sudo service cassandra start,但我得到了同样的错误。

我需要启动集群的所有节点而不对其进行手动操作。

【问题讨论】:

  • 请从您的 output.log 中显示确切的错误
  • 当我使用命令nodetool stats 我得到错误nodetool: Failed to connect to '127.0.0.1:7199' - ConnectException: 'Connection refused'. 这是因为禁用服务cassandra。当我尝试启动服务时,什么也没发生。没有错误。问题是如何在停止和启动实例后正确启动 cassandra。
  • @phact 询问您通常在“/var/log/cassandra/”中找到的“output.log”。这可能会显示导致服务无法正确启动的错误。
  • 你应该通过 API 或 ec2 python 或其他脚本来避免手动任务。
  • 哦,对不起,我找到了这个日志文件,但它是指向 /raid0/ 的符号链接,正如@RomanTumaykin 在下面的答案中提到的 /raid0/ 在停止实例时被删除了。因此我没有 output.log

标签: amazon-web-services amazon-ec2 cassandra datastax nodetool


【解决方案1】:

啊。您从 EC2 管理控制台停止了实例。这从临时存储中删除了所有内容。您应该只在必要时重新启动实例,但永远不要停止它们。或者使用sudo service dse restart只重启dse服务而不重启整个实例。现在我建议你最好的办法是从头开始重新部署集群(或至少这个节点)......

下面是对什么是实例存储(临时存储)的一些解释:http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html

实例存储中的数据仅在其生命周期内持续存在 关联的实例。如果实例重启(有意或 无意中),实例存储中的数据仍然存在。然而,数据 实例存储卷在以下情况下会丢失:

底层驱动器故障

停止 Amazon EBS 支持的实例

终止实例

Datastax 使用临时存储来存储数据和提交日志,因为这种存储比 ebs 存储快得多。更多细节在这里:http://datastax.com/documentation/datastax_enterprise/4.6/datastax_enterprise/install/installAMI.html

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-16
  • 1970-01-01
相关资源
最近更新 更多