cassandra - Cassandra:更改 snitch 属性然后启动 Cassandra 节点会出错
问题描述
我试图学习 Cassandra。尝试按照以下步骤操作时,出现以下错误(如第 4 点所述)。
1) 我从 Datastax 下载了 Cassandra,并制作了另一个相同的副本,并将两个文件夹命名为 node1 和 node2。
2) 将两个节点的 Cassandra.yaml 中的 endpoint_snitch 更改为 GossipingPropertyFileSnitch
3)在/home/ubuntu/node1/resources/cassandra/conf/cassandra-rackdc.properties
将 Node1 更改为:dc=west-side rack=hakuna-matata
将 Node2 更改为:dc=east-side rack=hakuna-matata
4)启动节点2。得到如下错误:
“如果 snitch 的数据中心(东侧)与之前的数据中心(Cassandra)不同,则无法启动节点。请修复 snitch 配置,停用并重新启动该节点或使用标志 -Dcassandra.ignore_dc=true”
尝试解决的步骤:
1)停止节点并删除 /var/lib/cassandra/data 文件夹 - 它没有工作
2) 恢复所有属性更改 --> 它正在工作。
3) 尝试无法启动 Cassandra - Snitch's Datacenter Differs from Previous中提到的步骤。--> 没用
请告诉我,为什么更改 snitch 属性会给出错误(如上所述)
解决方案
根据您的描述,您似乎已经按原样启动了节点,因为Cassandra
数据中心名称是在您使用DseSimpleSnitch
.
要解决此问题,您需要:
- 确保两个实例都指向不同的数据目录,具有不同的提交日志目录、提示等。最好指向 2 个单独的清除目录。
- 如果您使用 DSE 6 进行实验,在同一节点上拥有 2 个实例将需要额外的调整,最好在一开始就避免。
如果您想拥有多个 Cassandra/DSE 实例进行实验,使用 Docker 可能会更容易,如下所示:https ://github.com/datastax/docker-images (参见示例文件夹)。另一种可能性是使用DataStax Desktop,它可以更轻松地提供基于 Docker 的实例——您可以使用不同的版本等。
推荐阅读
- kendo-ui - 事件:onChange 下拉列表
- html - 如何知道使用 div 构建导航菜单
- matplotlib - 将蒙版恢复为图像
- bash - 如何使用 bash 将输入发送到在远程主机上运行的控制台/CLI 程序?
- javascript - 有没有办法获取数组中的所有值或匹配 PostresSQL 查询中的所有数组内容?
- python - 逻辑回归的小批量梯度下降预测错误?
- java - 为 ec2 部署创建 appspec.yml 文件
- authentication - 关于使用AuthenticationPlugin的Cookie Authenticator实现Remember Me
- html - 在浏览器中播放不受支持的 HTML5 视频格式
- git - Git 跨子模块移动文件