Совместимость Hazelcast Kubernetes с Hazelcast > 5.3.1

У нас проводится масштабное обновление библиотеки, и единственной ожидаемой уязвимостью является уязвимость клиента hazelcast в версии 5.3.1: CVE-2023-45859 и, возможно, CVE-2023-45860. Мы не можем продолжить обновление клиента, так как в hazelcast-kubernetes 2.2.3 существует проблема, которая не найдена. Существует ли альтернатива библиотеке hazelcast-kubernetes, которую можно использовать на платформе Container, или кто-то работает над обновлением hazelcast-kubernetes вместе?

Ниже приведена трассировка стека, если только клиент hazelcast обновляется до версии выше 5.3.1.

java.lang.NoSuchMethodError: 'void com.hazelcast.internal.nio.IOUtil.closeResource(java.io.Closeable)'
at com.hazelcast.kubernetes.KubernetesConfig.readFileContents(KubernetesConfig.java:164)
at com.hazelcast.kubernetes.KubernetesConfig.readAccountToken(KubernetesConfig.java:140)
at com.hazelcast.kubernetes.KubernetesConfig.getApiToken(KubernetesConfig.java:125)
at com.hazelcast.kubernetes.KubernetesConfig.(KubernetesConfig.java:94)
at com.hazelcast.kubernetes.HazelcastKubernetesDiscoveryStrategy.(HazelcastKubernetesDiscoveryStrategy.java:42)
at com.hazelcast.kubernetes.HazelcastKubernetesDiscoveryStrategyFactory.newDiscoveryStrategy(HazelcastKubernetesDiscoveryStrategyFactory.java:68)
at com.hazelcast.spi.discovery.impl.DefaultDiscoveryService.loadDiscoveryStrategies(DefaultDiscoveryService.java:151)
at com.hazelcast.spi.discovery.impl.DefaultDiscoveryService.(DefaultDiscoveryService.java:58)
at com.hazelcast.spi.discovery.impl.DefaultDiscoveryServiceProvider.newDiscoveryService(DefaultDiscoveryServiceProvider.java:29)
at com.hazelcast.instance.impl.Node.createDiscoveryService(Node.java:363)
at com.hazelcast.instance.impl.Node.(Node.java:284)

Если вы говорите об этой библиотеке github.com/hazelcast/hazelcast-kubernetes, то смотрите README. Это устарело. Начиная с версии 5.0 hazelcast включает hazelcast-kubernetes и не требует дополнительных зависимостей. Так что вам не нужна эта зависимость.

Orçun Çolak 12.03.2024 12:53
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
1
149
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

У нас была настроенная библиотека поверх hazelcast, в которой использовались приведенные ниже зависимости, которые имели собственную совместимость с библиотекой hazelcast. Благодаря orçun-Çolak в hazelcast 5 и выше теперь объединены Kubernetes и клиент. КлиентКубернетес

Удаление обоих и использование только hazelcast решает проблему.

    <dependency>
        <groupId>com.hazelcast</groupId>
        <artifactId>hazelcast-client</artifactId>
        <version>${hazelcast-client.version}</version>
    </dependency>

    <dependency>
        <groupId>com.hazelcast</groupId>
        <artifactId>hazelcast-kubernetes</artifactId>
        <version>${hazelcast-kubernetes.version}</version>
    </dependency>

Другие вопросы по теме