You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Maxim Muzafarov (Jira)" <ji...@apache.org> on 2021/01/21 18:41:00 UTC

[jira] [Commented] (IGNITE-13796) Update docs for the kubernetes module

    [ 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)