Cassandra 停止在 AWS 上工作(ubuntu 服务器)
Posted
技术标签:
【中文标题】Cassandra 停止在 AWS 上工作(ubuntu 服务器)【英文标题】:Cassandra stop working on AWS (ubuntu server) 【发布时间】:2016-09-16 08:34:10 【问题描述】:我已经在本地配置了 cassandra-cluster,它工作正常,遵循我在 ubuntu-server 实例上的 AWS 上配置 cassandra-cluster 的相同步骤。
它工作正常,但如果我从一个节点停止 cassandra 服务:
sudo service cassandra stop
然后我启动它,这个节点再也不会连接到集群了。 它无法抛出下一个错误:
* could not access pidfile for Cassandra
我的 cassandra 版本是 3.7,所以如果我访问 /etc/init.d/cassandra,那么 cmd_patt 就是下一个: CMD_PATT="Dcassandra-pidfile=.*cassandra.pid"
Cassandra 版本:3.7
主机:ubuntu 服务器 14.04 (AWS)。
【问题讨论】:
【参考方案1】:您必须删除 /var/run/cassandra
文件夹,因此它具有错误的权限:
sudo rm -rf /var/run/cassandra
或者您可以手动修复权限:
sudo chmod 750 /var/run/cassandra
然后启动 Cassandra 作为服务:
sudo service cassandra start
一些解释
文件权限说明你可以找到here。
删除该文件夹是安全的,因为它会以正确的权限和内容重新创建。但是,一旦它工作正常,请不要删除它。这可能会导致数据丢失或错误行为。
chmod 750
解密为 rwxr-x--- 权限。它允许对用户进行读写执行,对组进行读执行,对其他人则不执行任何操作。对于 Cassandra 来说,这样设置权限就足够了。
【讨论】:
我尝试过,但它抛出了同样的错误..,奇怪的是它在本地工作正常,但是当我尝试在 AWS 上执行时它不起作用。 转到 sudo vim /etc/init.d/cassandra;并且对于 CMD_PATT 用这个 CMD_PATT="cassandra" 替换它 我已经编辑了这个问题,你看看你对这个问题有什么想法吗?【参考方案2】:停止 cassandra 服务:
sudo service cassandra stop
删除默认数据集:
sudo rm -rf /var/lib/cassandra/data/system/*
启动cassandra服务:
sudo service cassandra start
【讨论】:
以上是关于Cassandra 停止在 AWS 上工作(ubuntu 服务器)的主要内容,如果未能解决你的问题,请参考以下文章
NVidia 驱动程序停止在带有 Ubuntu 16.04 和 Tesla K80 GPU 的 AWS EC2 实例上工作