1

我最近在同一个内部网络中建立了一个Cassandra ( 3.11.10) 集群,其中AWS EC23实例上的节点具有相同的硬件配置。他们每个人都看到了对方。通过登录它们中的每一个,您可以访问 Cassandra 数据库中的表。它与 cqlsh 配合得很好,一切看起来都很完美。3

实例类型t3.medium

亚马逊机器映像 (AMI) : CentOS 8 (x86_64) - with Updates HVM.

顺便说一句,我在每个 EC2 实例中使用了本文中的说明来设置 Cassandra。

我的配置文件 ( /etc/cassandra/default.conf/cassandra.yaml) 如下所示:

seeds: "node1_public_ip_address, node2_public_ip_address, node3_public_ip_address"
listen_address: "node_private_ip_address"
broadcast_address: "node_public_ip_address"
start_rpc: true
rpc_address: 0.0.0.0  # default value: localhost.
broadcast_rpc_address: "node_private_ip_address"  # default value: 1.2.3.4
endpoint_snitch: SimpleSnitch  # I also tried Ec2Snitch, but it raise problems.

经过这些设置后,我注意到与数据库的连接过程需要很长时间(需要超过 5 秒)。我尝试通过名为DBeaverwhich use的 SQL 客户端连接到 Cassandra 数据库Cassandra Java Driver 3.5.5。我还尝试从用 Python 编写的 AWS Lambda 函数连接到 Cassandra 数据库。所以在最后一种情况下,我使用了官方的 Datastax Python Driver

问题:这种奇怪行为的原因是什么?如何改进?

4

0 回答 0