【问题标题】:Cassandra-stress : how to install and set it up outside cassandra clusterCassandra-stress : 如何在 cassandra 集群外部安装和设置它
【发布时间】:2019-08-10 03:22:29
【问题描述】:

我即将使用简单的 cassnadra 集群(3 个节点,x.x.x.104-106)。我使用的是 CentOS7,所以我使用了 datastax 存储库 Cassandra 3.0。 我在论坛上看到的,cassandra-stress最好安装在集群外,否则会消耗节点的CPU。

你能帮我吗,如何安装它?

我尝试单独复制 cassandra-stress.sh,但它依赖于一些 cassandra 文件(可能在安装期间创建)。

所以我决定将整个 Cassandra 安装在不同的服务器上,在同一个网络空间中。现在,我正在努力正确设置,如何针对 cassandra 集群运行 cassandra-stress 工具。

在 cassandra.yaml 中我设置了 Cassandra 名称,listen_adress 为 public_ip,rpc_address 为环回地址,我将种子设置为 cassandra 集群节点(xxx104-106)......但通常设置它没有意义,因为我不想在 Cassandra 集群中创建另一个节点。

你能帮帮我吗?

编辑:也许使用这样的方法可能是正确的方法?

cassandra-stress 用户配置文件=/usr/cassandra/stress-file.yaml ops(insert=1,books=1) n=10000 -node x.x.x.104,x.x.x.105,x.x.x.106 -port native= ? Telnet [cassandra_node_ip_ddress] 7000 工作正常

【问题讨论】:

    标签: cassandra cassandra-3.0 cassandra-stress


    【解决方案1】:

    如果您的 Cassandra 集群运行时打开了正确的端口(默认情况下,客户端为 9042,JMX 为 7199),并且 Cassandra 目录位于另一台计算机上,那么您应该能够从集群外部运行 cassandra-stress ,只需将-node 选项与集群中某个节点的IP 一起传递(比如xxx104),即可针对您的集群。例如,

    $CASSANDRA_HOME/tools/bin/cassandra-stress write -node x.x.x.104
    

    应该可以。您可以使用

    查看更多选项
    $CASSANDRA_HOME/tools/bin/cassandra-stress help
    

    【讨论】:

    • 其实我试过这个,我为所有集群上的jmx和其他端口设置了防火墙。正如你在帖子中看到的我的编辑,因为这个想法已经在我脑海中浮现,我只是遇到了一些奇怪的错误。我必须更深入地研究它。我应该为 Cassandra 使用默认设置吗?我的意思是,根本没有改变 yaml 等?
    【解决方案2】:

    在每个节点上: 在 cassandra.yaml 中将 rpc_address 设置为 IP 地址 在 cassanda-env.sh 中设置 LOCAL_JMX=no 和 jmx 选项 autenticate=false 打开防火墙端口 7199 重启防火墙和cassandra

    在 cassandra-stress 服务器上:

    cassandra-stress user profile=/usr/cassandra/stress-books.yaml ops\ 
    (insert=1,books=1\) 
    n=10000 -node 172.16.20.104,172.16.20.105,172.16.20.106 -port native=9042 
    thrift=9160 jmx=7199
    

    注意! JMX 通信不安全

    【讨论】:

      猜你喜欢
      • 2019-12-15
      • 2020-04-12
      • 2015-10-09
      • 1970-01-01
      • 1970-01-01
      • 2015-04-18
      • 1970-01-01
      • 2016-08-27
      • 1970-01-01
      相关资源
      最近更新 更多