安装好cassandra之后,用jps发现没有cassandra服务进程。而netstat和ps显示进程和端口都已经启动。
google找到几篇相关的文章:
[1] CASSANDRA-9483 [2] jps-or-jstat-unable-to-monitor-DSE-processes/cassandra [3] jvmoption-2.html ,发现唯品会同事江南白衣的jvm参数优化介绍,很全。:D原因是:cassandra-2.0开始,增加-XX:+PerfDisableSharedMem,GC日志指向/dev/shm,避免IO造成的JVM停顿。
而jvm agent存在兼容性问题,导致jps和jstat等工具不能使用。
解决方法:
修改conf/jvm.options 中 -XX:+PerfDisableSharedMem 默认参数为 -XX:-PerfDisableSharedMem ,重启cassandra后jps恢复正常使用。