最近安装cassandra到产品服务器,很多东西要求就严格了很多,比如perf中使用的JMX,以前是只要知道ip就能访问,但是产品服务器就不行了,这样存在安全隐患,nodetool -h host 可以添加和删除节点。所以今天要讲的东西就是cassandra jmx的授权和访问控制。
这里讲的是第一种,最常用的使用密码和访问控制文件方式,其他方式后面有时间再跟进。
1 修改$CASSANDRA_HOME/conf/cassandra-env.sh 文件
- 设置你的服务器(需要监控的机器)IP
JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname=172.29.1.18"
- cassandra默认是启用本地无需授权方式访问,这里我们需要远程监控就需要改变下方式:修改LOCAL_JMX为no
LOCAL_JMX=no
2 设置JMX中authentication需要用到的文件
## Basic file based authn & authz
JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.password.file=/etc/cassandra/jmxremote.password"
JV