3

我在 centos7 和 vmware 上安装了 cassandra 3.11.3-1

我在安装 cassandra 时没有出错。我启动了 cassandra 并面对这些日志。

[root@localhost ~]# service cassandra start
Starting cassandra (via systemctl):                        [  OK  ]

[root@localhost ~]# systemctl status cassandra
cassandra.service - LSB: distributed storage system for structured data
Loaded: loaded (/etc/rc.d/init.d/cassandra; bad; vendor preset: disabled)
Active: deactivating (stop) (Result: exit-code) since 2018-08-02 15:15:45 
KST; 6s ago
Docs: man:systemd-sysv-generator(8)
Process: 10366 ExecStart=/etc/rc.d/init.d/cassandra start (code=exited, 
status=0/SUCCESS)
Main PID: 10450 (code=exited, status=3);         : 10478 (cassandra)
Tasks: 2
CGroup: /system.slice/cassandra.service
         └─control
            ├─10478 /bin/bash /etc/rc.d/init.d/cassandra stop
            └─10549 sleep 0.5

 02 15:15:39 localhost.localdomain systemd[1]: Starting LSB: distributed 
 stora....
 02 15:15:39 localhost.localdomain su[10376]: (to cassandra) root on none
 02 15:15:41 localhost.localdomain cassandra[10366]: Starting Cassandra: OK
 02 15:15:41 localhost.localdomain systemd[1]: Started LSB: distributed 
 storag....
  02 15:15:45 localhost.localdomain systemd[1]: cassandra.service: main 
 process...D
 02 15:15:45 localhost.localdomain su[10489]: (to cassandra) root on none
 02 15:15:45 localhost.localdomain cassandra[10478]: Shutdown Cassandra: 
 bash: …
 Hint: Some lines were ellipsized, use -l to show in full.

这意味着“cassandra 启动没问题”对吗?但是当我像这样“nodetool status”检查节点状态时

然后我遇到了这个日志。

    "] nodetool status" 
nodetool: Failed to connect to '127.0.0.1:7199' - ConnectException: 
Connection refused)

所以我在谷歌上搜索了很多。我找到了一些信息。所以我尝试了这个。

  1. 编辑 cassandra-env.sh "JVM_OPTS -Djava.rmi.server.hostname=127.0.0.1"
  2. 扩展内存大小:1GB -> 2GB

但我仍然面临同样的错误。

请有人帮助我。

------------- 系统日志 ----------------------------------

INFO [main] 2018-08-02 15:15:44,866 YamlConfigurationLoader.java:89 - 配置位置:文件:/etc/cassandra/default.conf/cassandra.yaml

错误 [main] 2018-08-02 15:15:45,043 CassandraDaemon.java:708 - 启动期间遇到异常:无效 yaml:文件:/etc/cassandra/default.conf/cassandra.yaml 错误:扫描简单密钥时;找不到预期的“:”;在“阅读器”第 601 行第 1 列中:

设置listen_address 或listen_i ...

4

4 回答 4

6

首先,您需要确保 OpenJDK 的激活版本应该是openjdk-8-jdk. 如果您的机器上有多个版本的 OpenJDK,那么您可以按照本教程设置默认版本(在这种情况下openjdk-8-jdk)。

然后,您需要再次检查 cassandra 服务的状态。激活cassandra服务的结果应该如下

在此处输入图像描述

之后,您可以按照此说明进行修改JVM_OPTS/etc/cassandra/cassandra-env.sh就我而言,我不需要遵循第二步。最后,在检查节点的状态时,您应该看到如下结果

在此处输入图像描述

于 2018-09-22T13:03:20.447 回答
1

cassandra 服务需要一些时间才能启动。安装后,通过使用检查服务是否已经启动

service  --status-all 

你会看到这样的东西

 [ + ]  cassandra
 [ - ]  dbus
 [ ? ]  hwclock.sh
 [ ? ]  kmod
 [ - ]  ntp
 [ - ]  procps
 [ - ]  rsync
 [ - ]  udev
 [ - ]  x11-common

如果您在 cassandra 旁边看到 - 符号而不是 + 符号,则表示该服务尚未启动。你可以通过发出这个命令来启动它

service cassandra restart

继续检查状态,直到你得到一个+。现在你应该可以执行 nodetool 命令了

nodetool status

现在你应该得到想要的结果,像这样

Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address    Load       Tokens  Owns (effective)  Host ID                               Rack 
UN  127.0.0.1  84.76 KiB  16      100.0%            7615cf7e-14cc-4475-bf46-ceeb122b6a12  rack1

这对我有用

于 2021-08-19T12:16:21.193 回答
0

当我检查这个“ systemctl status cassandra ”时,我可以看到Active: failed如下所示

● cassandra.service - LSB:结构化数据的分布式存储系统 已加载:已加载(/etc/rc.d/init.d/cassandra;坏;供应商预设:已禁用) 活动:自 2022 年 1 月 1 日起失败(结果:信号) -07 02:28:07 UTC;10 分钟前 Docs: man:systemd-sysv-generator(8) Main PID: 8239 (code=killed, signal=KILL)

所以我在cassandra-env.sh中更改了以下参数

JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname= localhost "

更改参数后,我可以看到

[root@ip-172-31-28-163 default.conf]# systemctl status cassandra ● cassandra.service - LSB:结构化数据的分布式存储系统 Loaded:已加载(/etc/rc.d/init.d/cassandra;坏;供应商预设:禁用) 活动:活动(运行)自周五 2022-01-07 02:47:27 UTC 起;12 分钟前 文档:man:systemd-sysv-generator(8)

请务必以 root 用户身份执行此操作。也要小心

于 2022-01-07T03:02:16.160 回答
0

如果根据您的机器功能配置了参数 system_memory_in_mb 和 system_cpu_cores 值,请检查文件 cassandra-env.sh (/etc/cassandra/cassandra-env.sh)

于 2021-07-05T01:00:11.697 回答