cassandra - IP v6 地址套接字创建失败并出现“无法创建 SSL 套接字”错误
问题描述
IP v6 地址套接字创建失败并出现“无法创建 SSL 套接字”错误:
Unable to create ssl socket
Fatal configuration error; unable to start server. See log for stacktrace.
10:31:36.165 [main] ERROR o.a.c.service.CassandraDaemon - Fatal configuration error
org.apache.cassandra.exceptions.ConfigurationException: Unable to create ssl socket
at org.apache.cassandra.net.MessagingService.getServerSockets(MessagingService.java:521) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.net.MessagingService.listen(MessagingService.java:501) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.net.MessagingService.listen(MessagingService.java:485) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.StorageService.prepareToJoin(StorageService.java:745) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.StorageService.initServer(StorageService.java:648) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.StorageService.initServer(StorageService.java:548) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:385) [apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:601) [apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:730) [apache-cassandra-3.9.jar:3.9]
Caused by: java.net.SocketException: Protocol family unavailable
at java.net.PlainSocketImpl.socketBind(Native Method) ~[na:1.8.0_102]
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387) ~[na:1.8.0_102]
at java.net.ServerSocket.bind(ServerSocket.java:375) ~[na:1.8.0_102]
at org.apache.cassandra.security.SSLFactory.getServerSocket(SSLFactory.java:65) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.net.MessagingService.getServerSockets(MessagingService.java:517) ~[apache-cassandra-3.9.jar:3.9]
... 8 common frames omitted
解决方案
您需要在文件/etc/cassandra/jvm.options中注释掉以下行
-Djava.net.preferIPv4Stack=true
正如西蒙在下面的答案中提到的那样,您可能还需要取消注释或编辑 cassandra.yaml 中的属性。
rpc_interface_prefer_ipv6=true
listen_interface_prefer_ipv6=true
那应该可以解决问题。有关更多详细信息,请查看此链接。
推荐阅读
- python - 在非常大的文件中计算行大小固定的行
- html - 文本不能左对齐
- sql-server - 根据 SQL Server 版本,我们可以在 SQL Server 表上创建多少个索引?
- php - 有没有办法简化这个 foreach 循环?
- sql - 执行查询时如何获取主键值?
- python - 又一次 web.py 名称冲突
- android - 无法从 API 渲染图像
- swift - 如何将firebase数据放入两个tableViews?
- apache-spark - 在火花执行器上找不到 Apache Phoenix JDBC 驱动程序
- excel - 代码在我手动运行时有效,但在 Workbook_Open 事件运行时无效