首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >能否解析K8S环境中无头服务中的主机?

能否解析K8S环境中无头服务中的主机?
EN

Stack Overflow用户
提问于 2020-08-31 02:39:23
回答 2查看 288关注 0票数 3

spark.cassandra.connection.host使用"spark.cassandra.connection.host“连接到Cassandra集群。

  1. 我们能否在K8S环境中提供C*集群的无头服务作为此参数(“spark.cassandra.connection.host”)的宿主。
  2. 它会解决联络点问题吗?
  3. 在K8s环境中用连接C*集群的首选方法是什么?
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-08-31 05:47:46

默认情况下,SCC在第一次连接时将所有提供的联系人解析为IP地址,然后只使用这些IP地址进行重新连接。在初始连接发生后,它会发现集群的其余部分。通常情况下,这不是问题,因为SCC应该接收有关节点向上和向下的通知,并跟踪节点的IP地址。但是在实践中,可能会发生节点重新启动太快,并且没有收到通知的情况,因此使用SCC的Spark作业可能会试图连接到不再有效的IP地址--我在DC/OS上多次点击这个地址。

这个问题是通过SCC 2.5.0的释放解决的,它包含了SPARKC-571的一个修复程序。它引入了一个新的配置参数- spark.cassandra.connection.resolveContactPoints,当它被设置为false (默认情况下true)时,将始终使用联系人的主机名进行初始连接和重新连接,从而避免了IP地址更改的问题。

因此,在K8S上,我尝试在正常的Cassandra部署中使用这个配置参数。

票数 2
EN

Stack Overflow用户

发布于 2020-08-31 03:30:26

是的,为什么不呢。库伯奈特的官方文件上有一个好例子。创建一个带有选择器的无头服务

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  labels:
    app: cassandra
  name: cassandra
spec:
  clusterIP: None
  ports:
  - port: 9042
  selector:
    app: cassandra

基本上,当您指定spark.cassandra.connection.host=cassandra (在同一个K8s名称空间中,否则,您必须提供Cassandra..svc.cluster.local` )时,它将解析为Cassandra联系人(运行Cassandra的Pod地址)。

✌️

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63664073

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档