Я пытаюсь настроить распределенный кеш с помощью Ignite и моего java-приложения через тонкий клиент в среде Kubernetes.
В моем кластере Kubernetes у меня есть 2 модуля с приложением java и 2 модуля.зажечь.Чтобы Java-модули могли взаимодействовать с модулями зажигания, я настроил тонкий клиент для соединения со службой ignite kubernetes.С этой конфигурацией я ожидал, что балансировка нагрузки была на стороне kubernetes.Вот что я сделал в java-коде:
ClientConfiguration cfg = new ClientConfiguration()
.setAddresses("ignite-service.default.svc.cluster.local:10800")
.setUserName("user")
.setUserPassword("password");
IgniteClient igniteClient = Ignition.startClient(cfg);
Во время хранения и получения объектов от воспламенения я удалил один из модулей воспламенения и через некоторое время получал сообщения о том, что «кластер Ignite недоступен":
org.apache.ignite.client.ClientConnectionException: кластер Ignite недоступен
При таком поведении я предполагаю, что метод setAddresses в классе ClientConfiguration хранит одно извсе IP-адреса модулей и каналов связи с этим модулем.
Это то, что происходит в этом методе?
Ignite версия 2.7
Kubernetes версия 1.12.3