Python Cassandra驱动程序:尝试重新连接时出错

4

我使用python-cassandra驱动程序,且cassandra集群在AWS上。 当远程连接时出现了许多警告。是否有人遇到同样的问题?

导入cassandra 从cassandra.cluster中导入Cluster ... In [3]:cassandra.version Out[3]:'2.5.1'

警告:cassandra.pool:尝试重新连接172.31.24.108时发生错误,将在128.0秒后重试调度:连接172.31.24.108的超时

1个回答

1
我认为这是因为您无法直接连接到172.31.24.108(私有网络?)。在我的情况下,我只能连接到集群节点的一部分。因此,我按照HostFilterPolicy文档创建了自己的过滤器。
    from cassandra.policies import HostFilterPolicy, RoundRobinPolicy

    CONN_HOSTS = ['172.235.33.32', '172.235.32.155']

    whitelist_filter_policy = HostFilterPolicy(
        child_policy=RoundRobinPolicy(),
        predicate=lambda host: host.address in CONN_HOSTS)
    # ...

    cluster = Cluster(
        contact_points=CONN_HOSTS,
        load_balancing_policy=whitelist_filter_policy,
        cql_version="3.2.1",
        protocol_version=3,
        ssl_options=ssl_options,
        port=9042,
        auth_provider=auth_provider)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接