Hi,

Any co-existing if 8.x and 9.x nodes in the same cluster will require the 
multi-step approach.

You set the solr.pki.sendVersion as system property, e.g. by adding it to 
SOLR_OPTS variable in
solr.in.sh, or through other means your environment has to pass variables to 
solr. I.e.

Should be something like:

1. Start your new 4 EC2's with 
    SOLR_OPTS=-Dsolr.pki.sendVersion=1 -Dsolr.pki.acceptVersions=v1,v2
    Verify in Admin UI Java properties screen that you see these properties 
showing up on the new nodes
2. Use REPLACENODE api to move replicas to new nodes: 
https://solr.apache.org/guide/8_11/cluster-node-management.html#replacenode
3. Retire the old nodes
4. Remove the sendVersion override properties from solr.in.sh and restart each 
node


Jan
> 30. mar. 2023 kl. 21:45 skrev Shamik Bandopadhyay <sham...@gmail.com>:
> 
> Hi,
> 
>  I'm planning to upgrade to the latest Solr version from our current
> version of 8.11.1. As per the upgrade notes, looks like I should be able to
> do a rolling upgrade. The part I'm a bit confused about is the *PKI
> Authentication* section. It says:
> 
> *A rolling upgrade from Solr 8 to Solr 9 requires the following multiple
> restart sequence:*
> 
>   1.
> 
>   *Upgrade to Solr 9 and set system properties: solr.pki.sendVersion=v1
>   and solr.pki.acceptVersions=v1,v2. This will allow Solr 9 nodes to send
>   messages to Solr 8 nodes while the upgrade is in progress.*
>   2.
> 
>   *Restart with solr.pki.sendVersion=v2 (default, can be unset) and
>   solr.pki.acceptVersions=v1,v2. This will force all nodes to send the new
>   header.*
>   3.
> 
>   *(Optional) Restart with system property solr.pki.acceptVersions=v2
>   (default, can be unset) to prevent outdated nodes from connecting to your
>   cluster.*
> 
> 
> Does this apply to every 8 to 9 upgrade irrespective of the version?
> 
> Currently, my development environment has 4 nodes (each running on its
> separate EC2 instance) with 2 shards and 1 replica each. There are three
> zookeeper instances. I'll have four new EC2 with Solr 9.2 installed and
> then start them in sequence, each pointing to the existing zookeeper
> cluster. This should add them as replicas to the existing SolrCloud cloud.
> What I'm not clear about is
> 1. Where do I add solr.pki.sendVersion=v1 and solr.pki.acceptVersions=v1,v2
> ? Do they have to be in *solr.in.sh <http://solr.in.sh> *for each node?
> 2. When do I perform step 2 of restarting the new nodes with
> solr.pki.sendVersion=v2  and solr.pki.acceptVersions=v1,v2 ?
> 
> Any pointers will be highly appreciated.
> 
> Thanks,
> Shamik

Reply via email to