[ https://issues.apache.org/jira/browse/IGNITE-13796?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17269519#comment-17269519 ]
Maxim Muzafarov commented on IGNITE-13796: ------------------------------------------ Merged to the master branch and cherry-picked to 2.10. > Update docs for the kubernetes module > ------------------------------------- > > Key: IGNITE-13796 > URL: https://issues.apache.org/jira/browse/IGNITE-13796 > Project: Ignite > Issue Type: New Feature > Components: documentation > Affects Versions: 2.10 > Reporter: Maksim Timonin > Assignee: Nikita Safonov > Priority: Blocker > Labels: important > Fix For: 2.10 > > Time Spent: 5h 10m > Remaining Estimate: 0h > > Docs related to the ticket IGNITE-13204. Before this change it was impossible > to rely on partition awareness feature [1] on thin clients within Kubernetes > environment. The reason was a Kubernetes cluster can scale dynamically but > thin client was able to configure only static list of addresses in moment of > start. The ticket fix it, provide opportunity to dynamically change list of > addresses known to thin clients. That ticket relates only to thin clients > started *within* Kubernetes cluster. Thin clients that are running outside of > Kubernetes cluster must be configured the same way as before (with static > list of addresses, usually it is an address of Ingress or other load > balancer), it's impossible to provide partition awareness feature for them as > there are no directly access to pods. > The ticket: > 1. Introduced class KubernetesConnectionConfiguration that represents common > settings to connect within Kubernetes cluster. > 2. There are 2 classes that use the configuration class to configure the > connection: > * TcpDiscoveryKubernetesIpFinder is responsible to configure Ignite nodes. > * ThinClientKubernetesAddressFinder is responsible to configure Thin clients > in case when partition awareness feature is enabled. > 3. Introduced ClientAddressFinder interface that provides dynamic list of > address to thin client. Generally, every user can implement this interface > and provide dynamic list of addresses in any environment. Ignite provides the > only implementation of this interface - ThinClientKubernetesAddressFinder > class, that works for Kubernetes environment. This interface should be useful > for any scaling environment. > > There was a refactoring of TcpDiscoveryKubernetesIpFinder to enable to use it > this configuration class, so some methods of the Finder are marked as > deprecated. > [1] > [https://ignite.apache.org/docs/latest/thin-clients/java-thin-client#partition-awareness] -- This message was sent by Atlassian Jira (v8.3.4#803005)