Springboot应用程序无法启动,因为它无法连接到Cassandra联系点。虽然相同的配置可用于本地主机Cassandra设置,但不能用于实际的Cassandra群集。配置类如下所示。
@Configuration
@EnableCassandraRepositories(basePackages = { "xyz.abc" })
public class CassandraConfiguration extends AbstractCassandraConfiguration {
@Value("${cassandra.contactpoints}")
private String contactPoints;
@Value("${cassandra.port}")
private int port;
@Value("${cassandra.keyspace}")
private String keySpace;
@Value("${cassandra.schema-action}")
private String schemaAction;
@Override
protected String getKeyspaceName() {
return keySpace;
}
@Override
protected String getContactPoints() {
return contactPoints;
}
@Override
protected int getPort() {
return port;
}
@Override
public SchemaAction getSchemaAction() {
return SchemaAction.valueOf(schemaAction);
}
1条答案
按热度按时间hgb9j2n61#
您发布的异常消息指示应用程序无法访问集群中的任何节点。
您尚未提供有关您的环境或如何配置群集的详细信息,但此异常主要与网络相关。您需要确保您的应用示例与您要连接的Cassandra群集的所有[本地]节点之间存在网络连接。请检查是否有防火墙阻止访问节点上的CQL客户端端口(默认值为
9042
)。还要检查Cassandra节点是否配置为侦听公共可访问接口上的客户端连接--
cassandra.yaml
中的rpc_address
不应设置为专用地址。使用
nc
、telnet
、netstat
和lsof
等Linux实用程序来帮助您进行故障排除。