[ 
https://issues.apache.org/jira/browse/IGNITE-14871?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Aleksandr Polovtcev updated IGNITE-14871:
-----------------------------------------
    Description: 
When a node enters the cluster, its configuration needs to be validated in 
order to maintain cluster-wide invariants and to prohibit a non-compatible or 
malicious node from entering the topology.
h2. Possible approaches
h3. Remote validation

The entering node sends some metadata (e.g. its version) to a random remote 
node, which validates the metadata and issues the permit for the node to join.

*Pros:*
 * Easier to maintain backwards-compatibility (useful for the rolling upgrade 
feature).

*Cons:*
 * What if a remote node is also older than other nodes? It might be possible 
that a chain of increasingly older nodes might break the cluster invariants.

h3. Local validation

The entering node collects some metadata from a random remote node and decides 
whether it is able to join the cluster or not.

*Pros:*
 * ???

*Cons:*
 * Difficult to maintain backwards-compatibility: an old node should be able to 
predict what information might be sent by the newer remote nodes.
 * Possible security issues: a malicious node can enter the cluster more easily 
than when using the remote validation. However, this may be mitigated by 
signing the handshake messages.

 

  was:
When a node enters the cluster, its configuration needs to be validated in 
order to maintain cluster-wide invariants and to prohibit a non-compatible or 
malicious node from entering the topology.
h3. Possible approaches

 


> Implement a validation protocol for the nodes entering the topology
> -------------------------------------------------------------------
>
>                 Key: IGNITE-14871
>                 URL: https://issues.apache.org/jira/browse/IGNITE-14871
>             Project: Ignite
>          Issue Type: Task
>          Components: networking
>            Reporter: Vyacheslav Koptilin
>            Priority: Major
>              Labels: ignite-3
>
> When a node enters the cluster, its configuration needs to be validated in 
> order to maintain cluster-wide invariants and to prohibit a non-compatible or 
> malicious node from entering the topology.
> h2. Possible approaches
> h3. Remote validation
> The entering node sends some metadata (e.g. its version) to a random remote 
> node, which validates the metadata and issues the permit for the node to join.
> *Pros:*
>  * Easier to maintain backwards-compatibility (useful for the rolling upgrade 
> feature).
> *Cons:*
>  * What if a remote node is also older than other nodes? It might be possible 
> that a chain of increasingly older nodes might break the cluster invariants.
> h3. Local validation
> The entering node collects some metadata from a random remote node and 
> decides whether it is able to join the cluster or not.
> *Pros:*
>  * ???
> *Cons:*
>  * Difficult to maintain backwards-compatibility: an old node should be able 
> to predict what information might be sent by the newer remote nodes.
>  * Possible security issues: a malicious node can enter the cluster more 
> easily than when using the remote validation. However, this may be mitigated 
> by signing the handshake messages.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to