Anton Vinogradov created IGNITE-29210:
-----------------------------------------

             Summary: Reload TLS certificates on running nodes
                 Key: IGNITE-29210
                 URL: https://issues.apache.org/jira/browse/IGNITE-29210
             Project: Ignite
          Issue Type: Sub-task
            Reporter: Anton Vinogradov
            Assignee: Anton Vinogradov


Allow administrators to replace node certificates and trust stores without 
restarting nodes. Add control.sh --ssl reload and --ssl status for server and 
client nodes currently in the topology. Report each factory separately on each 
node, listing the transports that use it. Return an error if any target fails.

Introduce a node registry keyed by factory object identity. Discovery, 
communication, the client connector, and binary REST must use its current 
context. Transports sharing a factory reload together; distinct factory 
instances remain independent even if they compare equal. New connections use 
the replacement context and existing connections stay open.

Build and validate a candidate before installing it. Reject a replacement when 
its metadata explicitly reports missing private keys, its known certificate 
dates are invalid, its TLS settings are unsupported, or the factory returns the 
context already in use. Unknown metadata alone must not prevent manual reload. 
Failures retain the previous context. Validation must not perform TLS 
connection probes or claim to verify peer trust. Status reports loaded metadata 
and reload outcomes, including unavailable metadata and invalid loaded 
certificates.

Require ADMIN_OPS for both commands and audit reload results with the 
initiator. Document the custom-factory contract, including fresh creation, 
optional metadata, and serialized calls for each factory.

Include operator instructions for replacement, verification, and recovery. 
Tests must cover every core transport, mutual TLS and trust-store changes, new 
and existing connections, shared and separate factories, custom factories, 
partial failures, authorization, audit output, and command parsing.

Include the shared test certificate generator and Bouncy Castle with test scope 
in the first PR that needs them.

Depends on IGNITE-29209. This task delivers complete manual reload and status; 
scheduling and HTTP REST follow separately.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to