本文介绍了如何在Apache Ignite .Net中使用TcpDiscoveryKubernetesIpFinder的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在Kubernetes中部署一个Apache Ignite集群.该文档建议使用TcpDiscoveryKubernetesIpFinder来促进在Kubernetes环境中发现Ignite节点.但是,我在.Net的Apache Ignite中找不到此类.它是否完全迁移到.Net?如果没有,如何在我的Net应用程序中使用?我对Java不太熟悉.

I am trying to deploy an Apache Ignite cluster in Kubernetes. The documentation suggests using TcpDiscoveryKubernetesIpFinder to facilitate the Ignite node discovery in a Kubernetes environment. However, I could not find this class in Apache Ignite for .Net. Is it migrated to .Net at all? If not, how can I use in my Net application? I am not very much familiar with Java.

如果不可能的话,有没有一种替代方法可以在Kubernetes环境中实现节点发现而不使用TcpDiscoveryKubernetesIpFinder?多播在Azure虚拟网络中不可用.

If it is not possible, is there an alternative approach to implement node discovery in the Kubernetes environment without using TcpDiscoveryKubernetesIpFinder? Multicast is not available in Azure Virtual Network.

我的Kubernetes子网中的可用IP范围是1000多个地址,因此使用TcpDiscoveryStaticIpFinder效率不是很高.我试图将本地PC上的FailureDetectionTimeout降低到1秒以提高效率,但是据称每次发现端点不可用时,Ignite都会生成一堆关键线程被阻止"异常.所以我必须摆脱FailureDetectionTimeout.

The range of available IPs in my Kubernetes subnet is 1000+ addresses so using TcpDiscoveryStaticIpFinder would not be very efficient. I tried to reduce FailureDetectionTimeout to 1 sec on my local PC to make it more efficient but Ignite generates a bunch of the "critical thread blocked" exception, allegedly each time when an endpoint is found unavailable. So I had to get rid of FailureDetectionTimeout.

我正在使用Azure Kubernetes Service和Apache Ignite 2.7 for Net.先感谢您.

I am using Azure Kubernetes Service and Apache Ignite 2.7 for Net. Thank you in advance.

推荐答案

您可以将基于Java的(Spring XML)配置与.NET配置结合使用.

You can combine Java-based (Spring XML) configuration with .NET configuration.

  1. 在Spring XML文件中配置TcpDiscoveryKubernetesIpFinder(请参见 https://apacheignite.readme.io/docs/kubernetes-ip-finder )

在.NET中,设置IgniteConfiguration.SpringConfigUrl指向该文件

In .NET, set IgniteConfiguration.SpringConfigUrl to point to that file

工作方式是Ignite首先加载Spring XML,然后应用在.NET端指定的所有自定义配置属性.

The way it works is Ignite loads Spring XML first, then applies any custom config properties that are specified on .NET side.

这篇关于如何在Apache Ignite .Net中使用TcpDiscoveryKubernetesIpFinder的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-22 15:52