Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Discussion thread: here (<- link to https://mail-archives.apache.org/mod_mbox/lucene-dev/)

JIRA: here (<- link to https://issues.apache.org/jira/browse/SOLR-XXXX)

Jira
serverASF JIRA
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-16727

Solr Operator Issue #536

Released: <Solr Version>

Please keep the discussion on the mailing list rather than commenting on the wiki (wiki discussions get unwieldy fast). Confluence supports inline comments that can also be used.

...

The first goal is to support scaling up/down Solr Nodes and moving replicas after scale up/down to spread load evenly.

Public Interfaces

Solr Interfaces

Two new public interfaces are needed, one API addition, one API change and one ReplicaPlacementPlugin method.

 API

Utilize new Node:

v1: (If we want a v1 API)

GET /solr/admin/collections?action=UTILIZENODE&node=node-name&sourceNodes=source-node-name-1,source-node-name-2

...

Replace Node: (A change to an existing option)

v1: (If we want a v1 API)

GET /solr/admin/collections?action=REPLACENODE&sourceNode=source-node&targetNode=target-node&targetNodes=target-node1,target-node2

...

Its also good for the Solr Operator to know the HPA, so that it can disable it during rolling restarts and other maintenance operations.

Proposed Changes

This feature will require changes to both Solr and the Solr Operator. Since the Solr Operator supports a range of Solr versions, this will not be available for Solr Operator users until they upgrade to a version of Solr that implements this SIP.

Solr Changes

The two main APIs that the Solr Operator would need to call to Solr to implement this functionality are:

...

In order to implement this logic, we would need new interfaces and methods in the placement package, as described above. Since we have 4 different built-in PlacementPlugins, we would need to implement this feature for those built in plugins.

Solr Operator Changes

The Solr Operator would need four changes:

...

Compatibility, Deprecation, and Migration Plan

  • This feature will require changes to both Solr and the Solr Operator. Since the Solr Operator supports a range of Solr versions, this will not be available for Solr Operator users until they upgrade to a version of Solr that implements this SIP.
  • Existing users of the Solr Operator will see these new features used only when they enable the "autoscaleReplicas" option.
    • This option requires new Solr versions, so it cannot be enabled by default until that Solr version is the minimum supported version supported by the Operator.
  • The Replace Node v2 command will have an API change, but v2 is still experimental, so there should be no concern there.

...