Modified: sites/solr/guide/solr/latest/deployment-guide/solr-control-script-reference.html URL: http://svn.apache.org/viewvc/sites/solr/guide/solr/latest/deployment-guide/solr-control-script-reference.html?rev=1083697&r1=1083696&r2=1083697&view=diff ============================================================================== --- sites/solr/guide/solr/latest/deployment-guide/solr-control-script-reference.html (original) +++ sites/solr/guide/solr/latest/deployment-guide/solr-control-script-reference.html Fri Jul 21 18:07:42 2023 @@ -39,7 +39,7 @@ <div class="navbar-item has-dropdown is-hoverable"> <a class="navbar-link" href="#">Resources</a> <div class="navbar-dropdown"> - <a class="navbar-item" href="https://solr.apache.org/docs/9_2_1/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a> + <a class="navbar-item" href="https://solr.apache.org/docs/9_3_0/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a> <a class="navbar-item" href="https://solr.apache.org/community.html#version-control" target="_blank" rel="noreferrer nopener">Source Code</a> <a class="navbar-item" href="https://solr.apache.org/community.html" target="_blank" rel="noreferrer nopener">Community Links</a> <a class="navbar-item" href="https://github.com/apache/solr/tree/main/dev-docs/ref-guide" target="_blank" rel="noreferrer nopener">Contribute</a> @@ -56,25 +56,25 @@ </nav> </header> <div class="body"> -<div class="nav-container" data-component="solr" data-version="9_2"> +<div class="nav-container" data-component="solr" data-version="9_3"> <aside class="nav"> <div class="panels"> <!-- Solr Changes - Start --> <div class="nav-panel-explore" data-panel="explore"> <div class="context"> <span class="title">Solr Reference Guide</span> - <span class="version">9.2</span> + <span class="version">9.3</span> </div> <!-- Programmatically creates the component and version list --> <ul class="components"> <li class="component is-current"> <a class="title" href="../index.html">Solr Reference Guide</a> <ul class="versions"> - <li class="version"> - <a href="../../9_3/index.html">9.3-beta</a> - </li> <li class="version is-current is-latest"> - <a href="../index.html">9.2</a> + <a href="../index.html">9.3</a> + </li> + <li class="version"> + <a href="../../9_2/index.html">9.2</a> </li> <li class="version"> <a href="../../9_1/index.html">9.1</a> @@ -211,7 +211,7 @@ <a class="nav-link" href="../getting-started/tutorial-films.html">Exercise 2: Index Films Data</a> </li> <li class="nav-item" data-depth="2"> - <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3 Index Your Own Data</a> + <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3: Index Your Own Data</a> </li> <li class="nav-item" data-depth="2"> <a class="nav-link" href="../getting-started/tutorial-solrcloud.html">Getting Started with SolrCloud</a> @@ -718,6 +718,9 @@ </ul> </li> <li class="nav-item" data-depth="2"> + <a class="nav-link" href="../indexing-guide/indexing-with-cbor.html">Indexing with Update CBOR data format</a> + </li> + <li class="nav-item" data-depth="2"> <a class="nav-link" href="../indexing-guide/indexing-with-tika.html">Indexing with Solr Cell and Apache Tika</a> </li> <li class="nav-item" data-depth="2"> @@ -1069,17 +1072,17 @@ </ul> </nav> <div class="page-versions"> - <button class="version-menu-toggle" title="Show other versions of page">9.2</button> + <button class="version-menu-toggle" title="Show other versions of page">9.3</button> <div class="version-menu"> - <a class="version" href="../../9_3/deployment-guide/solr-control-script-reference.html">9.3-beta</a> - <a class="version is-current" href="solr-control-script-reference.html">9.2</a> + <a class="version is-current" href="solr-control-script-reference.html">9.3</a> + <a class="version" href="../../9_2/deployment-guide/solr-control-script-reference.html">9.2</a> <a class="version" href="../../9_1/deployment-guide/solr-control-script-reference.html">9.1</a> <a class="version" href="../../9_0/deployment-guide/solr-control-script-reference.html">9.0</a> </div> </div> <!-- Solr Additions - Start --> <!-- Solr New File --> -<span class="perma-link-copy" version="9_2"> +<span class="perma-link-copy" version="9_3"> </span><!-- Solr Additions - End --> <div class="edit-this-page"><a href="https://github.com/apache/solr/tree/main/solr/solr-ref-guide/modules/deployment-guide/pages/solr-control-script-reference.adoc">Edit this Page</a></div> </div> @@ -1144,7 +1147,7 @@ However, most of the defaults are adequa </div> <div class="dlist"> <dl> -<dt class="hdlist1"><code>-a "<string>"</code></dt> +<dt class="hdlist1"><code>-a "<jvmParams>"</code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -1160,7 +1163,11 @@ However, most of the defaults are adequa </table> <div class="paragraph"> <p>Start Solr with additional JVM parameters, such as those starting with <code>-X</code>. -If you are passing JVM parameters that begin with <code>-D</code>, you can omit the <code>-a</code> option.</p> +For example setting up Java debugger to attach to the Solr JVM you could pass: <code>-a "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=18983"</code>. +In most cases, you should wrap the additional parameters in double quotes.</p> +</div> +<div class="paragraph"> +<p>If you are passing JVM parameters that begin with <code>-D</code>, you can omit the <code>-a</code> option.</p> </div> <div class="paragraph"> <p><strong>Example</strong>:</p> @@ -1171,7 +1178,7 @@ If you are passing JVM parameters that b </div> </div> </dd> -<dt class="hdlist1"><code>-cloud</code> or <code>-c</code></dt> +<dt class="hdlist1"><code>-j "<jettyParams>"</code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -1186,10 +1193,28 @@ If you are passing JVM parameters that b </tbody> </table> <div class="paragraph"> -<p>Start Solr in SolrCloud mode, which will also launch the embedded ZooKeeper instance included with Solr.</p> +<p>Additional parameters to pass to Jetty when starting Solr. +For example, to add configuration folder that Jetty should read you could pass: <code>-j "--include-jetty-dir=/etc/jetty/custom/server/"</code>. +In most cases, you should wrap the additional parameters in double quotes.</p> </div> +</dd> +<dt class="hdlist1"><code>-cloud</code> or <code>-c</code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +</tr> +</tbody> +</table> <div class="paragraph"> -<p>This option can be shortened to simply <code>-c</code>.</p> +<p>Start Solr in SolrCloud mode, which will also launch the embedded ZooKeeper instance included with Solr. +The embedded ZooKeeper instance is started on Solr port+1000, so 9983 if Solr is bound to 8983.</p> </div> <div class="paragraph"> <p>If you are already running a ZooKeeper ensemble that you want to use instead of the embedded (single-node) ZooKeeper, you should also either specify <code>ZK_HOST</code> in <code>solr.in.sh</code>/<code>solr.in.cmd</code> (see <a href="zookeeper-ensemble.html#updating-solr-include-files" class="xref page">Updating Solr Include Files</a>) or pass the <code>-z</code> parameter.</p> @@ -1248,16 +1273,16 @@ These examples are provided to help you <div class="ulist"> <ul> <li> -<p><code>cloud</code></p> +<p><code>cloud</code>: SolrCloud example</p> </li> <li> -<p><code>techproducts</code></p> +<p><code>techproducts</code>: Comprehensive example illustrating many of Solr’s core capabilities</p> </li> <li> -<p><code>schemaless</code></p> +<p><code>schemaless</code>: Schema-less example (schema is inferred from data during indexing)</p> </li> <li> -<p><code>films</code></p> +<p><code>films</code>: Example of starting with _default configset and adding explicit fields dynamically</p> <div class="paragraph"> <p>See the section <a href="#running-with-example-configurations">Running with Example Configurations</a> below for more details on the example configurations.</p> </div> @@ -1283,14 +1308,14 @@ These examples are provided to help you </tbody> </table> <div class="paragraph"> -<p>Start Solr in the foreground. +<p>Start Solr in the foreground and sends stdout / stderr to <code>solr-PORT-console.log</code>. You cannot use this option when running examples with the <code>-e</code> option.</p> </div> <div class="paragraph"> <p><strong>Example</strong>: <code>bin/solr start -f</code></p> </div> </dd> -<dt class="hdlist1"><code>-h <hostname></code></dt> +<dt class="hdlist1"><code>-host <hostname></code> or <code>-h <hostname></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -1305,7 +1330,7 @@ You cannot use this option when running </tbody> </table> <div class="paragraph"> -<p>Start Solr with the defined hostname. +<p>Specify the hostname for this Solr instance. If this is not specified, <code>localhost</code> is assumed.</p> </div> <div class="paragraph"> @@ -1322,15 +1347,15 @@ If this is not specified, <code>localhos <tbody> <tr> <td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> -<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: 512m</p></td> </tr> </tbody> </table> <div class="paragraph"> -<p>Start Solr with the defined value as the min (<code>-Xms</code>) and max (<code>-Xmx</code>) heap size for the JVM.</p> +<p>Sets the min (<code>-Xms</code>) and max (<code>-Xmx</code>) heap size for the JVM running Solr.</p> </div> <div class="paragraph"> -<p><strong>Example</strong>: <code>bin/solr start -m 1g</code></p> +<p><strong>Example</strong>: <code>bin/solr start -m 4g</code> results in <code>-Xms4g -Xmx4g</code> settings.</p> </div> </dd> <dt class="hdlist1"><code>-noprompt</code></dt> @@ -1348,8 +1373,7 @@ If this is not specified, <code>localhos </tbody> </table> <div class="paragraph"> -<p>Start Solr and suppress any prompts that may be seen with another option. -This would have the side effect of accepting all defaults implicitly.</p> +<p>Don’t prompt for input; accept all defaults when running examples that accept user input.</p> </div> <div class="paragraph"> <p>For example, when using the "cloud" example, an interactive session guides you through several options for your SolrCloud cluster. @@ -1374,7 +1398,10 @@ If you want to accept all of the default </tbody> </table> <div class="paragraph"> -<p>Start Solr on the defined port. +<p>Specify the port to start the Solr HTTP listener on; with the classic default port for Solr being 8983. +The specified port (SOLR_PORT) will also be used to determine the stop port. +The stop port is defined as STOP_PORT=($SOLR_PORT-1000) and JMX RMI listen port is defined as RMI_PORT=($SOLR_PORT+10000). +For instance, if you set -p 8985, then the STOP_PORT=7985 and RMI_PORT=18985. If this is not specified, <code>8983</code> will be used.</p> </div> <div class="paragraph"> @@ -1398,15 +1425,39 @@ If this is not specified, <code>8983</co <div class="paragraph"> <p>Sets the <code>solr.solr.home</code> system property. Solr will create core directories under this directory. -This allows you to run multiple Solr instances on the same host while reusing the same server directory set using the <code>-d</code> parameter.</p> +This allows you to run multiple Solr instances on the same host while reusing the same server directory set using the <code>-d</code> parameter. +If set, the specified directory should contain a solr.xml file, unless solr.xml exists in Zookeeper.</p> </div> <div class="paragraph"> <p>This parameter is ignored when running examples (<code>-e</code>), as the <code>solr.solr.home</code> depends on which example is run.</p> </div> <div class="paragraph"> +<p>The default value is <code>server/solr</code>. +If passed relative dir, validation with current dir will be done, before trying default <code>server/<dir></code>.</p> +</div> +<div class="paragraph"> <p><strong>Example</strong>: <code>bin/solr start -s newHome</code></p> </div> </dd> +<dt class="hdlist1"><code>-t <dir></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>solr.solr.home</code></p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Sets the <code>solr.data.home</code> system property, where Solr will store index data in <instance_dir>/data subdirectories. +If not set, Solr uses solr.solr.home for config and data.</p> +</div> +</dd> <dt class="hdlist1"><code>-v</code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> @@ -1423,7 +1474,7 @@ This allows you to run multiple Solr ins </table> <div class="paragraph"> <p>Be more verbose. -This changes the logging level of Log4j from <code>INFO</code> to <code>DEBUG</code>, having the same effect as if you edited <code>log4j2.xml</code>.</p> +This changes the logging level of Log4j in Solr from <code>INFO</code> to <code>DEBUG</code>, having the same effect as if you edited <code>log4j2.xml</code>.</p> </div> <div class="paragraph"> <p><strong>Example</strong>: <code>bin/solr start -f -v</code></p> @@ -1445,14 +1496,14 @@ This changes the logging level of Log4j </table> <div class="paragraph"> <p>Be more quiet. -This changes the logging level of Log4j from <code>INFO</code> to <code>WARN</code>, having the same effect as if you edited <code>log4j2.xml</code>. +This changes the logging level of Log4j in Solr from <code>INFO</code> to <code>WARN</code>, having the same effect as if you edited <code>log4j2.xml</code>. This can be useful in a production setting where you want to limit logging to warnings and errors.</p> </div> <div class="paragraph"> <p><strong>Example</strong>: <code>bin/solr start -f -q</code></p> </div> </dd> -<dt class="hdlist1"><code>-V</code></dt> +<dt class="hdlist1"><code>-V</code> or <code>-verbose</code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -1467,13 +1518,13 @@ This can be useful in a production setti </tbody> </table> <div class="paragraph"> -<p>Start Solr with verbose messages from the start script.</p> +<p>Verbose messages from this script.</p> </div> <div class="paragraph"> <p><strong>Example</strong>: <code>bin/solr start -V</code></p> </div> </dd> -<dt class="hdlist1"><code>-z <zkHost></code></dt> +<dt class="hdlist1"><code>-z <zkHost></code> or <code>-zkHost <zkHost></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -1488,11 +1539,11 @@ This can be useful in a production setti </tbody> </table> <div class="paragraph"> -<p>Start Solr with the defined ZooKeeper connection string.</p> +<p>Zookeeper connection string, this option is only used with the <code>-c</code> option, to start Solr in SolrCloud mode. +If <code>ZK_HOST</code> is not specified in <code>solr.in.sh</code>/<code>solr.in.cmd</code> and this option is not provided, Solr will start the embedded ZooKeeper instance and use that instance for SolrCloud operations.</p> </div> <div class="paragraph"> -<p>This option is only used with the <code>-c</code> option, to start Solr in SolrCloud mode. -If <code>ZK_HOST</code> is not specified in <code>solr.in.sh</code>/<code>solr.in.cmd</code> and this option is not provided, Solr will start the embedded ZooKeeper instance and use that instance for SolrCloud operations.</p> +<p>Set the <code>ZK_CREATE_CHROOT</code> environment variable to true if your ZK host has a chroot path, and you want to create it automatically.</p> </div> <div class="paragraph"> <p><strong>Example</strong>: <code>bin/solr start -c -z server1:2181,server2:2181</code></p> @@ -1729,7 +1780,7 @@ If you are running more than one instanc </tbody> </table> <div class="paragraph"> -<p>Stop all running Solr instances that have a valid PID.</p> +<p>Find and stop all running Solr servers on this host that have a valid PID.</p> </div> <div class="paragraph"> <p><strong>Example</strong>: <code>bin/solr stop -all</code></p> @@ -1756,6 +1807,27 @@ If you are running more than one instanc <p><strong>Example</strong>: <code>bin/solr stop -k solrrocks</code></p> </div> </dd> +<dt class="hdlist1"><code>-V</code> or <code>-verbose</code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Stop Solr with verbose messages from this script.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr stop -V</code></p> +</div> +</dd> </dl> </div> </div> @@ -1780,7 +1852,7 @@ X.Y.0</code></pre> <div class="sect2"> <h3 id="status"><a class="anchor" href="#status"></a>Status</h3> <div class="paragraph"> -<p>The <code>status</code> command displays basic JSON-formatted information for any Solr nodes found running on the local system.</p> +<p>The <code>status</code> command displays basic JSON-formatted status information for all locally running Solr servers.</p> </div> <div class="paragraph"> <p>The <code>status</code> command uses the <code>SOLR_PID_DIR</code> environment variable to locate Solr process ID files to find running Solr instances, which defaults to the <code>bin</code> directory.</p> @@ -1845,7 +1917,39 @@ The command can either output a specifie </div> </div> <div class="paragraph"> -<p>Use <code>bin/solr assert -help</code> for a full list of options.</p> +<p>The basic usage of <code>bin/solr assert</code> is:</p> +</div> +<div class="listingblock"> +<div class="content"> +<pre class="highlightjs highlight"><code class="language-plain hljs" data-lang="plain">$ bin/solr assert -h +usage: bin/solr assert [-m <message>] [-e] [-rR] [-s <url>] [-S <url>] [-c + <url>] [-C <url>] [-u <dir>] [-x <dir>] [-X <dir>] + -c,--cloud <url> Asserts that Solr is running in cloud mode. + Also fails if Solr not running. URL should + be for root Solr path. + -C,--not-cloud <url> Asserts that Solr is not running in cloud + mode. Also fails if Solr not running. URL + should be for root Solr path. + -e,--exitcode Return an exit code instead of printing + error message on assert fail. + -help Print this message + -m,--message <message> Exception message to be used in place of + the default error message. + -R,--not-root Asserts that we are NOT the root user. + -r,--root Asserts that we are the root user. + -S,--not-started <url> Asserts that Solr is NOT running on a + certain URL. Default timeout is 1000ms. + -s,--started <url> Asserts that Solr is running on a certain + URL. Default timeout is 1000ms. + -t,--timeout <ms> Timeout in ms for commands supporting a + timeout. + -u,--same-user <directory> Asserts that we run as same user that owns + <directory>. + -verbose Enable more verbose command output. + -x,--exists <directory> Asserts that directory <directory> exists. + -X,--not-exists <directory> Asserts that directory <directory> does NOT + exist.</code></pre> +</div> </div> </div> <div class="sect2"> @@ -1878,16 +1982,32 @@ The health report provides information a </tr> </tbody> </table> -<div class="literalblock"> -<div class="content"> -<pre>Name of the collection to run a healthcheck against.</pre> -</div> +<div class="paragraph"> +<p>Name of the collection to run a healthcheck against.</p> </div> <div class="paragraph"> <p><strong>Example</strong>: <code>bin/solr healthcheck -c gettingstarted</code></p> </div> </dd> -<dt class="hdlist1"><code>-z <zkhost></code></dt> +<dt class="hdlist1"><code>-solrUrl <url></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Base Solr URL, which can be used in SolrCloud mode to determine the ZooKeeper connection string if that’s not known.</p> +</div> +</dd> +<dt class="hdlist1"><code>-z <zkhost></code> or <code>-zkHost <zkhost></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -1980,9 +2100,8 @@ This parameter is unnecessary if <code>Z <div class="sect2"> <h3 id="create-a-core-or-collection"><a class="anchor" href="#create-a-core-or-collection"></a>Create a Core or Collection</h3> <div class="paragraph"> -<p>The <code>create</code> command detects the mode that Solr is running in and creates either a core or collection depending on the mode. -When running with SolrCloud, a collection would be created. -When running a user-managed cluster or a single-node installation, a core would be created.</p> +<p>The <code>create</code> command creates a core or collection depending on whether Solr is running in standalone (core) or SolrCloud mode (collection). +In other words, this action detects which mode Solr is running in, and then takes the appropriate action (either <code>create_core</code> or <code>create_collection</code>).</p> </div> <div class="paragraph"> <p><code>bin/solr create [options]</code></p> @@ -2061,7 +2180,7 @@ This defaults to the same name as the co <p><strong>Example</strong>: <code>bin/solr create -n basic</code></p> </div> </dd> -<dt class="hdlist1"><code>-p <port></code></dt> +<dt class="hdlist1"><code>-p <port></code> or <code>-port <port></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2086,7 +2205,7 @@ By default the script tries to detect th <p><strong>Example</strong>: <code>bin/solr create -p 8983</code></p> </div> </dd> -<dt class="hdlist1"><code>-s <shards></code> or <code>-shards</code></dt> +<dt class="hdlist1"><code>-s <shards></code> or <code>-shards <shards></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2108,7 +2227,7 @@ Only applies when Solr is running in Sol <p><strong>Example</strong>: <code>bin/solr create -s 2</code></p> </div> </dd> -<dt class="hdlist1"><code>-rf <replicas></code> or <code>-replicationFactor</code></dt> +<dt class="hdlist1"><code>-rf <replicas></code> or <code>-replicationFactor <replicas></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2155,11 +2274,315 @@ It is possible to override this warning </dl> </div> </div> +</div> +<div class="sect2"> +<h3 id="create-a-collection"><a class="anchor" href="#create-a-collection"></a>Create a Collection</h3> +<div class="paragraph"> +<p>The <code>create_collection</code> command creates a collection, and is only available when running in SolrCloud mode.</p> +</div> +<div class="paragraph"> +<p><code>bin/solr create_collection [options]</code></p> +</div> +<div class="paragraph"> +<p><code>bin/solr create_collection -help</code></p> +</div> +<div class="sect3"> +<h4 id="create-collection-parameters"><a class="anchor" href="#create-collection-parameters"></a>Create Collection Parameters</h4> +<div class="dlist"> +<dl> +<dt class="hdlist1"><code>-c <name></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Required</strong></p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Name of the collection to create.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create_collection -c mycollection</code></p> +</div> +</dd> +<dt class="hdlist1"><code>-d <confdir></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>_default</code></p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Configuration directory to copy when creating the new collection.</p> +</div> +<div class="paragraph"> +<p>See the section <a href="#configuration-directories-and-solrcloud">Configuration Directories and SolrCloud</a> below for more details about this option when running in SolrCloud mode. including some built in example configurations.</p> +</div> +<div class="paragraph"> +<p><code>_default</code> is also known as <a href="../indexing-guide/schemaless-mode.html" class="xref page">Schemaless Mode</a>.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create_collection -d _default</code></p> +</div> +<div class="paragraph"> +<p>Alternatively, you can pass the path to your own configuration directory instead of using one of the built-in configurations.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create_collection -c mycoll -d /tmp/myconfig</code></p> +</div> +<div class="paragraph"> +<p>By default the script will upload the specified confdir directory into Zookeeper using the same name as the collection (-c) option. +Alternatively, if you want to reuse an existing directory or create a confdir in Zookeeper that can be shared by multiple collections, use the -n option</p> +</div> +</dd> +<dt class="hdlist1"><code>-n <configName></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <em>see description</em></p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Name the configuration directory in Zookeeper. +By default, the configuration will be uploaded to Zookeeper using the collection name (-c), but if you want to use an existing directory or override the name of the configuration in Zookeeper, then use the -c option. +UMMMM…​ I COPIED THE ABOVE LINE FROM bin/solr create_collection -h output, but I don’t get it. And bin/solr create_collection -n basic -c mycoll works, it create a copy of _default as "basic" configset…​ UMMM?</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create_collection -n basic -c mycoll</code></p> +</div> +</dd> +<dt class="hdlist1"><code>-p <port></code> or <code>-port <port></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <em>see description</em></p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Port of a local Solr instance where you want to create the new collection. +If not specified, the script will search the local system for a running Solr instance and will use the port of the first server it finds.</p> +</div> +<div class="paragraph"> +<p>This option is useful if you are running multiple Solr instances on the same host, thus requiring you to be specific about which instance to create the core in.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create -p 8983</code></p> +</div> +</dd> +<dt class="hdlist1"><code>-s <shards></code> or <code>-shards <shards></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>1</code></p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Number of shards to split a collection into.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create_collection -s 2</code></p> +</div> +</dd> +<dt class="hdlist1"><code>-rf <replicas></code> or <code>-replicationFactor <replicas></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>1</code></p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Number of copies of each document in the collection. +The default is <code>1</code> (no replication).</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create_collection -rf 2</code></p> +</div> +</dd> +<dt class="hdlist1"><code>-force</code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>If attempting to run create as "root" user, the script will exit with a warning that running Solr or actions against Solr as "root" can cause problems. +It is possible to override this warning with the -force parameter.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create_collection -c foo -force</code></p> +</div> +</dd> +</dl> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="create-a-core"><a class="anchor" href="#create-a-core"></a>Create a Core</h3> +<div class="paragraph"> +<p>The <code>create_core</code> command creates a core and is only available when running in user-managed (single-node) mode.</p> +</div> +<div class="paragraph"> +<p><code>bin/solr create_core [options]</code></p> +</div> +<div class="paragraph"> +<p><code>bin/solr create_core -help</code></p> +</div> +<div class="sect3"> +<h4 id="create-core-parameters"><a class="anchor" href="#create-core-parameters"></a>Create Core Parameters</h4> +<div class="dlist"> +<dl> +<dt class="hdlist1"><code>-c <name></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Required</strong></p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Name of the core to create.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create -c mycore</code></p> +</div> +</dd> +<dt class="hdlist1"><code>-d <confdir></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>_default</code></p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>The configuration directory to use when creating a new core.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create -d _default</code></p> +</div> +<div class="paragraph"> +<p>Alternatively, you can pass the path to your own configuration directory instead of using one of the built-in configurations.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create_collection -c mycore -d /tmp/myconfig</code></p> +</div> +</dd> +<dt class="hdlist1"><code>-p <port></code> or <code>-port <port></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <em>see description</em></p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>The port of a local Solr instance to create the new core. +By default the script tries to detect the port by looking for running Solr instances.</p> +</div> +<div class="paragraph"> +<p>This option is useful if you are running multiple Solr instances on the same host, thus requiring you to be specific about which instance to create the core in.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create -p 8983</code></p> +</div> +</dd> +<dt class="hdlist1"><code>-force</code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>If attempting to run create as "root" user, the script will exit with a warning that running Solr or actions against Solr as "root" can cause problems. +It is possible to override this warning with the -force parameter.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr create -c foo -force</code></p> +</div> +</dd> +</dl> +</div> +</div> <div class="sect3"> <h4 id="configuration-directories-and-solrcloud"><a class="anchor" href="#configuration-directories-and-solrcloud"></a>Configuration Directories and SolrCloud</h4> <div class="paragraph"> <p>Before creating a collection in SolrCloud, the configuration directory used by the collection must be uploaded to ZooKeeper. -The <code>create</code> command supports several use cases for how collections and configuration directories work. +The <code>create</code> and <code>create_collection</code> commands supports several use cases for how collections and configuration directories work. The main decision you need to make is whether a configuration directory in ZooKeeper should be shared across multiple collections.</p> </div> <div class="paragraph"> @@ -2227,12 +2650,11 @@ Consequently, we recommend that you do n <p><code>bin/solr delete -help</code></p> </div> <div class="paragraph"> -<p>If running in SolrCloud mode, the <code>delete</code> command checks if the configuration directory used by the collection you are deleting is being used by other collections. -If not, then the configuration directory is also deleted from ZooKeeper.</p> +<p>If you’re deleting a collection in SolrCloud mode, the default behavior is to also delete the configuration directory from Zookeeper so long as it is not being used by another collection.</p> </div> <div class="paragraph"> <p>For example, if you created a collection with <code>bin/solr create -c contacts</code>, then the delete command <code>bin/solr delete -c contacts</code> will check to see if the <code>/configs/contacts</code> configuration directory is being used by any other collections. -If not, then the <code>/configs/contacts</code> directory is removed from ZooKeeper.</p> +If not, then the <code>/configs/contacts</code> directory is removed from ZooKeeper. You can override this behavior by passing -deleteConfig false when running this command.atom</p> </div> <div class="sect3"> <h4 id="delete-core-or-collection-parameters"><a class="anchor" href="#delete-core-or-collection-parameters"></a>Delete Core or Collection Parameters</h4> @@ -2283,7 +2705,7 @@ If not, then the <code>/configs/contacts <p><strong>Example</strong>: <code>bin/solr delete -deleteConfig false</code></p> </div> </dd> -<dt class="hdlist1"><code>-p <port></code></dt> +<dt class="hdlist1"><code>-p <port></code> or <code>-port <port></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2299,7 +2721,7 @@ If not, then the <code>/configs/contacts </table> <div class="paragraph"> <p>The port of a local Solr instance to send the delete command to. -By default the script tries to detect the port by looking for running Solr instances.</p> +If not specified, the script will search the local system for a running Solr instance and will use the port of the first server it finds.</p> </div> <div class="paragraph"> <p>This option is useful if you are running multiple Solr instances on the same host, thus requiring you to be specific about which instance to delete the core from.</p> @@ -2323,6 +2745,9 @@ By default the script tries to detect th <div class="paragraph"> <p>Currently, this script only enables Basic Authentication, and is only available when using SolrCloud mode.</p> </div> +<div class="paragraph"> +<p>Must be run on the machine hosting Solr.</p> +</div> <div class="sect2"> <h3 id="enabling-basic-authentication"><a class="anchor" href="#enabling-basic-authentication"></a>Enabling Basic Authentication</h3> <div class="paragraph"> @@ -2376,7 +2801,7 @@ The <code>security.json</code> file will <div class="content"> <pre class="highlightjs highlight"><code class="language-none hljs"># The following lines added by ./solr for enabling BasicAuth SOLR_AUTH_TYPE="basic" -SOLR_AUTHENTICATION_OPTS="-Dsolr.httpclient.config=/path/to/solr-9.2.1/server/solr/basicAuth.conf"</code></pre> +SOLR_AUTHENTICATION_OPTS="-Dsolr.httpclient.config=/path/to/solr-9.3.0/server/solr/basicAuth.conf"</code></pre> </div> </div> </li> @@ -2386,11 +2811,22 @@ SOLR_AUTHENTICATION_OPTS="-Dsolr.httpcli </ul> </div> <div class="paragraph"> +<p>Here are some example usages:</p> +</div> +<div class="listingblock"> +<div class="content"> +<pre class="highlightjs highlight"><code class="language-plain hljs" data-lang="plain">Usage: solr auth enable [-type basicAuth] -credentials user:pass [-blockUnknown <true|false>] [-updateIncludeFileOnly <true|false>] [-V] + solr auth enable [-type basicAuth] -prompt <true|false> [-blockUnknown <true|false>] [-updateIncludeFileOnly <true|false>] [-V] + solr auth enable -type kerberos -config "<kerberos configs>" [-updateIncludeFileOnly <true|false>] [-V] + solr auth disable [-updateIncludeFileOnly <true|false>] [-V]</code></pre> +</div> +</div> +<div class="paragraph"> <p>The command takes the following parameters:</p> </div> <div class="dlist"> <dl> -<dt class="hdlist1"><code>-credentials</code></dt> +<dt class="hdlist1"><code>-credentials <user:pass></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2405,14 +2841,15 @@ SOLR_AUTHENTICATION_OPTS="-Dsolr.httpcli </tbody> </table> <div class="paragraph"> -<p>The username and password in the format of <code>username:password</code> of the initial user.</p> +<p>The username and password in the format of <code>username:password</code> of the initial user. +Applicable for basicAuth only.</p> </div> <div class="paragraph"> <p>If you prefer not to pass the username and password as an argument to the script, you can choose the <code>-prompt</code> option. Either <code>-credentials</code> or <code>-prompt</code> <strong>must</strong> be specified.</p> </div> </dd> -<dt class="hdlist1"><code>-prompt</code></dt> +<dt class="hdlist1"><code>-prompt <true|false></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2427,13 +2864,13 @@ Either <code>-credentials</code> or <cod </tbody> </table> <div class="paragraph"> -<p>If prompt is preferred, pass <code>true</code> as a parameter to request the script to prompt the user to enter a username and password.</p> +<p>Prompts the user to provide the credentials. If prompt is preferred, pass <code>true</code> as a parameter to request the script prompt the user to enter a username and password.</p> </div> <div class="paragraph"> <p>Either <code>-credentials</code> or <code>-prompt</code> <strong>must</strong> be specified.</p> </div> </dd> -<dt class="hdlist1"><code>-blockUnknown</code></dt> +<dt class="hdlist1"><code>-blockUnknown <true|false></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2448,11 +2885,37 @@ Either <code>-credentials</code> or <cod </tbody> </table> <div class="paragraph"> -<p>When <code>true</code>, blocks all unauthenticated users from accessing Solr. +<p>When <code>true</code>, this blocks out access to unauthenticated users from accessing Solr. When <code>false</code>, unauthenticated users will still be able to access Solr, but only for operations not explicitly requiring a user role in the Authorization plugin configuration.</p> </div> </dd> -<dt class="hdlist1"><code>-updateIncludeFileOnly</code></dt> +<dt class="hdlist1"><code>-solrIncludeFile <includeFilePath></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Specify the full path to the include file in the environment. +If not specified this script looks for an include file named solr.in.sh to set environment variables. Specifically, the following locations are searched in this order: + <script location>/. + $HOME/.solr.in.sh + /usr/share/solr + /usr/local/share/solr + /etc/default + /var/solr + /opt/solr</p> +</div> +</dd> +<dt class="hdlist1"><code>-updateIncludeFileOnly <true|false></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2467,10 +2930,10 @@ When <code>false</code>, unauthenticated </tbody> </table> <div class="paragraph"> -<p>When <code>true</code>, only the settings in <code>bin/solr.in.sh</code> or <code>bin\solr.in.cmd</code> will be updated, and <code>security.json</code> will not be created.</p> +<p>When <code>true</code>, only update the <code>bin/solr.in.sh</code> or <code>bin\solr.in.cmd</code>, and skip actual enabling/disabling authentication (i.e. don’t update <code>security.json</code>).</p> </div> </dd> -<dt class="hdlist1"><code>-z</code></dt> +<dt class="hdlist1"><code>-z <zkHost></code> or <code>-zkHost <zkHost></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2490,7 +2953,7 @@ This is useful if you want to enable aut Unnecessary if <code>ZK_HOST</code> is defined in <code>solr.in.sh</code> or <code>solr.in.cmd</code>.</p> </div> </dd> -<dt class="hdlist1"><code>-d</code></dt> +<dt class="hdlist1"><code>-d <dir></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2509,7 +2972,7 @@ Unnecessary if <code>ZK_HOST</code> is d It is not common to need to override the default, and is only needed if you have customized the <code>$SOLR_HOME</code> directory path.</p> </div> </dd> -<dt class="hdlist1"><code>-s</code></dt> +<dt class="hdlist1"><code>-s <dir></code> or <code>-solr.home <dir></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2525,7 +2988,8 @@ It is not common to need to override the </table> <div class="paragraph"> <p>Defines the location of <code>solr.solr.home</code>, which by default is <code>server/solr</code>. -If you have multiple instances of Solr on the same host, or if you have customized the <code>$SOLR_HOME</code> directory path, you likely need to define this.</p> +If you have multiple instances of Solr on the same host, or if you have customized the <code>$SOLR_HOME</code> directory path, you likely need to define this. +This is where any credentials or authentication configuration files (e.g. basicAuth.conf) would be placed.</p> </div> </dd> </dl> @@ -2598,7 +3062,7 @@ However, the <code>basicAuth.conf</code> <h3 id="config-parameters"><a class="anchor" href="#config-parameters"></a>Config Parameters</h3> <div class="dlist"> <dl> -<dt class="hdlist1"><code>-c <name></code></dt> +<dt class="hdlist1"><code>-c <name></code> or <code>-collection <name></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2649,7 +3113,7 @@ However, the <code>basicAuth.conf</code> </tbody> </table> <div class="paragraph"> -<p>Name of the property to change.</p> +<p>Name of the Config API property to apply the action to, such as: 'updateHandler.autoSoftCommit.maxTime'.</p> </div> </dd> <dt class="hdlist1"><code>-value <new-value></code></dt> @@ -2667,10 +3131,10 @@ However, the <code>basicAuth.conf</code> </tbody> </table> <div class="paragraph"> -<p>Set the property to this value.</p> +<p>Set the property to this value; accepts JSON objects and strings.</p> </div> </dd> -<dt class="hdlist1"><code>-z <zkHost></code></dt> +<dt class="hdlist1"><code>-z <zkHost></code> or <code>-zkHost <zkHost></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2680,7 +3144,7 @@ However, the <code>basicAuth.conf</code> <tbody> <tr> <td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> -<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>localhost:9983</code></p></td> </tr> </tbody> </table> @@ -2689,7 +3153,7 @@ However, the <code>basicAuth.conf</code> Unnecessary if <code>ZK_HOST</code> is defined in <code>solr.in.sh</code> or <code>solr.in.cmd</code>.</p> </div> </dd> -<dt class="hdlist1"><code>-p <port></code></dt> +<dt class="hdlist1"><code>-p <port></code> or <code>-port <port></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -2717,7 +3181,7 @@ Unnecessary if <code>ZK_HOST</code> is d <tbody> <tr> <td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> -<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code><a href="http://localhost:8983/solr" class="bare">http://localhost:8983/solr</a></code></p></td> </tr> </tbody> </table> @@ -2725,6 +3189,24 @@ Unnecessary if <code>ZK_HOST</code> is d <p>Base Solr URL, which can be used in SolrCloud mode to determine the ZooKeeper connection string if that’s not known.</p> </div> </dd> +<dt class="hdlist1"><code>-s <scheme></code> or <code>-scheme <scheme></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>http</code></p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>The scheme for accessing Solr. Accepted values: http or https. Default is 'http'</p> +</div> +</dd> </dl> </div> </div> @@ -2746,6 +3228,20 @@ These operations are for SolrCloud mode <div class="paragraph"> <p><code>bin/solr zk -help</code></p> </div> +<div class="paragraph"> +<p>The basic usage of bin/solr zk is:</p> +</div> +<div class="listingblock"> +<div class="content"> +<pre class="highlightjs highlight"><code class="language-plain hljs" data-lang="plain">$ bin/solr zk -h +Usage: solr zk upconfig|downconfig -d <confdir> -n <configName> [-z zkHost] + solr zk cp [-r] <src> <dest> [-z zkHost] + solr zk rm [-r] <path> [-z zkHost] + solr zk mv <src> <dest> [-z zkHost] + solr zk ls [-r] <path> [-z zkHost] + solr zk mkroot <path> [-z zkHost]</code></pre> +</div> +</div> <div class="admonitionblock note"> <table> <tr> @@ -2762,7 +3258,7 @@ Once ZooKeeper is initialized, Solr does <div class="sect2"> <h3 id="upload-a-configuration-set"><a class="anchor" href="#upload-a-configuration-set"></a>Upload a Configuration Set</h3> <div class="paragraph"> -<p>Use the <code>zk upconfig</code> command to upload one of the pre-configured configuration set or a customized configuration set to ZooKeeper.</p> +<p>Use the <code>zk upconfig</code> command to upload one of the pre-configured configuration sets or a customized configuration set to ZooKeeper.</p> </div> <div class="sect3"> <h4 id="zk-upload-parameters"><a class="anchor" href="#zk-upload-parameters"></a>ZK Upload Parameters</h4> @@ -2815,7 +3311,7 @@ Choose Cloud → Tree → config </tbody> </table> <div class="paragraph"> -<p>The path of the configuration set to upload. +<p>The local directory of the configuration set to upload. It should have a <code>conf</code> directory immediately below it that in turn contains <code>solrconfig.xml</code> etc.</p> </div> <div class="paragraph"> @@ -3020,8 +3516,8 @@ This command will copy from the local dr </tbody> </table> <div class="paragraph"> -<p>Do a recursive copy. -The command will fail if the <code><src></code> has children unless <code>-r</code> is specified.</p> +<p>Recursively copy <src> to <dst>. +The command will fail if the <code><src></code> has children and <code>-r</code> is not specified.</p> </div> <div class="paragraph"> <p><strong>Example</strong>: <code>-r</code></p> @@ -3044,8 +3540,8 @@ The command will fail if the <code><s <div class="paragraph"> <p>The file or path to copy from. If prefixed with <code>zk:</code> then the source is presumed to be ZooKeeper. -If no prefix or the prefix is <code>file</code>: this is the local drive. -At least one of <code><src></code> or <code><dest></code> must be prefixed by <code>'zk:'</code> or the command will fail.</p> +If no prefix or the prefix is <code>file:</code> then it is presumed to be the local drive. +At least one of <code><src></code> or <code><dest></code> must be prefixed by <code>zk:</code> or the command will fail.</p> </div> <div class="paragraph"> <p><strong>Examples</strong>:</p> @@ -3078,7 +3574,7 @@ At least one of <code><src></code> <div class="paragraph"> <p>The file or path to copy to. If prefixed with <code>zk:</code> then the source is presumed to be ZooKeeper. -If no prefix or the prefix is <code>file:</code> this is the local drive.</p> +If no prefix or the prefix is <code>file:</code> then it is presumed to be the local drive.</p> </div> <div class="paragraph"> <p>At least one of <code><src></code> or <code><dest></code> must be prefixed by <code>zk:</code> or the command will fail. @@ -3123,19 +3619,39 @@ Optional if <code>ZK_HOST</code> is defi </dl> </div> <div class="paragraph"> -<p>An example of this command with the parameters is:</p> +<p>When <code><src></code> is a zk resource, <code><dest></code> may be '.'. +If <code><dest></code> ends with '/', then <code><dest></code> will be a local folder or parent znode and the last element of the <src> path will be appended unless <code><src></code> also ends in a slash. +<code><dest></code> may be <code>zk:</code>, which may be useful when using the <code>cp -r</code> form to backup/restore the entire zk state. +You must enclose local paths that end in a wildcard in quotes or just end the local path in a slash. +That is, <code>bin/solr zk cp -r /some/dir/ zk:/ -z localhost:2181</code> is equivalent to <code>bin/solr zk cp -r "/some/dir/<strong>" zk:/ -z localhost:2181</code> but <code>bin/solr zk cp -r /some/dir/\</strong> zk:/ -z localhost:2181</code> will throw an error.</p> +</div> +<div class="paragraph"> +<p>Here’s an example of backup/restore for a ZK configuration:</p> +</div> +<div class="paragraph"> +<p><strong>To copy to local</strong>: <code>bin/solr zk cp -r zk:/ /some/dir -z localhost:2181</code></p> </div> <div class="paragraph"> -<p>Recursively copy a directory from local to ZooKeeper.</p> +<p><strong>To restore to ZK</strong>: <code>bin/solr zk cp -r /some/dir/ zk:/ -z localhost:2181</code></p> </div> <div class="paragraph"> -<p><code>bin/solr zk cp -r file:/apache/confgs/whatever/conf zk:/configs/myconf -z 111.222.333.444:2181</code></p> +<p>The <code>file:</code> prefix is stripped, thus <code>file:/wherever</code> specifies an absolute local path and <code>file:somewhere</code> specifies a relative local path. +All paths on Zookeeper are absolute.</p> </div> <div class="paragraph"> -<p>Copy a single file from ZooKeeper to local.</p> +<p>Zookeeper nodes CAN have data, so moving a single file to a parent znode will overlay the data on the parent Znode so specifying the trailing slash can be important.</p> </div> <div class="paragraph"> -<p><code>bin/solr zk cp zk:/configs/myconf/managed_schema /configs/myconf/managed_schema -z 111.222.333.444:2181</code></p> +<p>Trailing wildcards are supported when copying from localand must be quoted.</p> +</div> +<div class="paragraph"> +<p>Other examples are:</p> +</div> +<div class="paragraph"> +<p><strong>Recursively copy a directory from local to ZooKeeper</strong>: <code>bin/solr zk cp -r file:/apache/confgs/whatever/conf zk:/configs/myconf -z 111.222.333.444:2181</code></p> +</div> +<div class="paragraph"> +<p><strong>Copy a single file from ZooKeeper to local</strong>: <code>bin/solr zk cp zk:/configs/myconf/managed_schema /configs/myconf/managed_schema -z 111.222.333.444:2181</code></p> </div> </div> </div> @@ -3163,8 +3679,8 @@ Optional if <code>ZK_HOST</code> is defi </tbody> </table> <div class="paragraph"> -<p>Do a recursive removal. -The command will fail if the <code><path></code> has children unless <code>-r</code> is specified.</p> +<p>Recursively delete if <code><path></code> is a directory. +Command will fail if <code><path></code> has children and <code>-r</code> is not specified.</p> </div> <div class="paragraph"> <p><strong>Example</strong>: <code>-r</code></p> @@ -3354,7 +3870,8 @@ Unnecessary if <code>ZK_HOST</code> is d </tbody> </table> <div class="paragraph"> -<p>Recursively list all descendants of a znode.</p> +<p>Recursively list all descendants of a znode. +Only the node names are listed, not the data.</p> </div> <div class="paragraph"> <p><strong>Example</strong>: <code>-r</code></p> @@ -3419,7 +3936,7 @@ Optional if <code>ZK_HOST</code> is defi <div class="sect2"> <h3 id="create-a-znode-supports-chroot"><a class="anchor" href="#create-a-znode-supports-chroot"></a>Create a znode (supports chroot)</h3> <div class="paragraph"> -<p>Use the <code>zk mkroot</code> command to create a znode. +<p>Use the <code>zk mkroot</code> command to create a znode with no data. The primary use-case for this command to support ZooKeeper’s "chroot" concept. However, it can also be used to create arbitrary paths.</p> </div> @@ -3444,7 +3961,7 @@ However, it can also be used to create a <div class="paragraph"> <p>The path on ZooKeeper to create. Intermediate znodes will be created if necessary. -A leading slash is assumed even if not specified.</p> +A leading slash is assumed if not present.</p> </div> <div class="paragraph"> <p><strong>Example</strong>: <code>/solr</code></p> @@ -3488,12 +4005,38 @@ Optional if <code>ZK_HOST</code> is defi </div> </div> <div class="sect1"> -<h2 id="exporting-documents-to-a-file"><a class="anchor" href="#exporting-documents-to-a-file"></a>Exporting Documents to a File</h2> +<h2 id="exporting-and-importing"><a class="anchor" href="#exporting-and-importing"></a>Exporting and Importing</h2> <div class="sectionbody"> +<div class="sect2"> +<h3 id="exporting-documents-to-a-file"><a class="anchor" href="#exporting-documents-to-a-file"></a>Exporting Documents to a File</h3> <div class="paragraph"> -<p>The <code>export</code> command will allow you to export documents from a collection in either JSON or Javabin format. +<p>The <code>export</code> command will allow you to export documents from a collection in JSON, JSON with Lines, or Javabin format. All documents can be exported, or only those that match a query.</p> </div> +<div class="admonitionblock note"> +<table> +<tr> +<td class="icon"> +<i class="fa icon-note" title="Note"></i> +</td> +<td class="content"> +This hasn’t been tested with nested child documents and your results will vary. +</td> +</tr> +</table> +</div> +<div class="admonitionblock note"> +<table> +<tr> +<td class="icon"> +<i class="fa icon-note" title="Note"></i> +</td> +<td class="content"> +The <code>export</code> command only works with in a Solr running in cloud mode. +</td> +</tr> +</table> +</div> <div class="paragraph"> <p><code>bin/solr export [options]</code></p> </div> @@ -3505,7 +4048,7 @@ All documents can be exported, or only t </div> <div class="dlist"> <dl> -<dt class="hdlist1"><code>url</code></dt> +<dt class="hdlist1"><code>-url <url></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -3526,7 +4069,7 @@ All documents can be exported, or only t <p><strong>Example</strong>: <code>-url <a href="http://localhost:8983/solr/techproducts" class="bare">http://localhost:8983/solr/techproducts</a></code></p> </div> </dd> -<dt class="hdlist1"><code>format</code></dt> +<dt class="hdlist1"><code>-format <format></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -3536,17 +4079,17 @@ All documents can be exported, or only t <tbody> <tr> <td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> -<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>jsonl</code></p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>json</code></p></td> </tr> </tbody> </table> <div class="paragraph"> -<p>The file format of the export, <code>jsonl</code> or <code>javabin</code>. -Choosing <code>javabin</code> exports to a file with extension <code>.javabin</code> which is the native Solr format. -This is compact and faster to import.</p> +<p>The file format of the export, <code>json</code>, <code>jsonl</code>, or <code>javabin</code>. +Choosing <code>javabin</code> exports in the native Solr format, and is compact and fast to import. +<code>jsonl</code> is the Json with Lines format, learn more at <a href="https://jsonlines.org/" class="bare">https://jsonlines.org/</a>.</p> </div> </dd> -<dt class="hdlist1"><code>-out</code></dt> +<dt class="hdlist1"><code>-out <path></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -3561,14 +4104,31 @@ This is compact and faster to import.</p </tbody> </table> <div class="paragraph"> -<p>The file name of the export. -If the file name ends with <code>json.gz</code> the output will be compressed into a .gz file.</p> +<p>Either the path to the directory for the exported data to be written to, or a specific file to be written out.</p> </div> <div class="paragraph"> -<p>If not provided, a file will be created with the name of the collection, as in <code><collection>.json</code>.</p> +<p>If only a directory is specified then the file will be created with the name of the collection, as in <code><collection>.json</code>.</p> </div> </dd> -<dt class="hdlist1"><code>query</code></dt> +<dt class="hdlist1"><code>-compress</code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: false</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>If you specify <code>-compress</code> then the resulting outputting file with will be gzipped, for example <code><collection>.json.gz</code>.</p> +</div> +</dd> +<dt class="hdlist1"><code>-query <query string></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -3587,7 +4147,7 @@ If the file name ends with <code>json.gz The default is <code>*:*</code> which will export all documents.</p> </div> </dd> -<dt class="hdlist1"><code>fields</code></dt> +<dt class="hdlist1"><code>-fields <fields></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -3602,11 +4162,11 @@ The default is <code>*:*</code> which wi </tbody> </table> <div class="paragraph"> -<p>A comma separated list of fields to be exported. -If not provided, all fields will be included.</p> +<p>Comma separated list of fields to be exported. +By default all fields are fetched.</p> </div> </dd> -<dt class="hdlist1"><code>limit</code></dt> +<dt class="hdlist1"><code>-limit <number of documents></code></dt> <dd> <table class="tableblock frame-none grid-all fit-content"> <colgroup> @@ -3621,7 +4181,7 @@ If not provided, all fields will be incl </tbody> </table> <div class="paragraph"> -<p>The number of documents to export. +<p>Maximum number of docs to download. The value <code>-1</code> will export all documents.</p> </div> </dd> @@ -3639,29 +4199,127 @@ The value <code>-1</code> will export al </div> </div> <div class="paragraph"> -<p>Export all documents of collection <code>gettingstarted</code> into a file called <code>1MDocs.json.gz</code> as a zipped JSON file:</p> +<p>Export all documents of collection <code>gettingstarted</code> into a file called <code>1MDocs.json.gz</code> as a compressed JSON file:</p> </div> <div class="listingblock"> <div class="content"> -<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">bin/solr export -url http://localhost:8983/solr/gettingstarted -1 -out 1MDocs.json.gz</code></pre> +<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">bin/solr export -url http://localhost:8983/solr/gettingstarted -1 -format json -compress -out 1MDocs</code></pre> +</div> </div> </div> <div class="sect2"> -<h3 id="importing-documents-to-a-collection"><a class="anchor" href="#importing-documents-to-a-collection"></a>Importing Documents to a Collection</h3> +<h3 id="importing-documents-into-a-collection"><a class="anchor" href="#importing-documents-into-a-collection"></a>Importing Documents into a Collection</h3> <div class="paragraph"> <p>Once you have exported documents in a file, you can use the <a href="../indexing-guide/indexing-with-update-handlers.html" class="xref page">/update request handler</a> to import them to a new Solr collection.</p> </div> <div class="paragraph"> -<p><strong>Example: import <code>jsonl</code> files</strong></p> +<p><strong>Example: import <code>json</code> files</strong></p> +</div> +<div class="paragraph"> +<p>First export the documents, making sure to ignore any fields that are populated via a <code>copyField</code> by specifying what fields you want to export:</p> +</div> +<div class="listingblock"> +<div class="content"> +<pre class="highlightjs highlight"><code class="language-console hljs" data-lang="console">$ bin/solr export -url http://localhost:8983/solr/gettingstarted -fields id,name,manu,cat,features</code></pre> +</div> +</div> +<div class="paragraph"> +<p>Create a new collection to import the exported documents into:</p> +</div> +<div class="listingblock"> +<div class="content"> +<pre class="highlightjs highlight"><code class="language-console hljs" data-lang="console">$ bin/solr create_collection -c test_collection -n techproducts</code></pre> +</div> </div> <div class="paragraph"> -<p><code>curl -X POST -d @gettingstarted.json <a href="http://localhost:8983/solr/gettingstarted/update/json/docs?commit=true" class="bare">http://localhost:8983/solr/gettingstarted/update/json/docs?commit=true</a></code></p> +<p>Now import the data with either of these methods:</p> +</div> +<div class="listingblock"> +<div class="content"> +<pre class="highlightjs highlight"><code class="language-console hljs" data-lang="console">$ curl -X POST -d @gettingstarted.json 'http://localhost:8983/solr/test_collection/update/json/docs?commit=true'</code></pre> +</div> +</div> +<div class="paragraph"> +<p>or</p> +</div> +<div class="listingblock"> +<div class="content"> +<pre class="highlightjs highlight"><code class="language-console hljs" data-lang="console">$ curl -H 'Content-Type: application/json' -X POST -d @gettingstarted.json 'http://localhost:8983/solr/test_collection/update?commit=true'</code></pre> +</div> </div> <div class="paragraph"> <p><strong>Example: import <code>javabin</code> files</strong></p> </div> +<div class="listingblock"> +<div class="content"> +<pre class="highlightjs highlight"><code class="language-console hljs" data-lang="console">$ bin/solr export -url http://localhost:8983/solr/gettingstarted -format javabin -fields id,name,manu,cat,features +$ curl -X POST --header "Content-Type: application/javabin" --data-binary @gettingstarted.javabin 'http://localhost:8983/solr/test_collection/update?commit=true'</code></pre> +</div> +</div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="interacting-with-api"><a class="anchor" href="#interacting-with-api"></a>Interacting with API</h2> +<div class="sectionbody"> +<div class="paragraph"> +<p>The <code>api</code> command will allow you to send an arbitrary HTTP request to a Solr API endpoint.</p> +</div> +<div class="paragraph"> +<p><code>bin/solr api -get <a href="http://localhost:8983/solr/COLL_NAME/sql?stmt=select+id+from+COLL_NAME+limit+10" class="bare">http://localhost:8983/solr/COLL_NAME/sql?stmt=select+id+from+COLL_NAME+limit+10</a></code></p> +</div> +<div class="paragraph"> +<p><code>bin/solr api -help</code></p> +</div> +<div class="paragraph"> +<p>The <code>bin/solr api</code> command takes the following parameters:</p> +</div> +<div class="dlist"> +<dl> +<dt class="hdlist1"><code>-get <url></code></dt> +<dd> +<table class="tableblock frame-none grid-all fit-content"> +<colgroup> +<col> +<col> +</colgroup> +<tbody> +<tr> +<td class="tableblock halign-left valign-top"><p class="tableblock">Required</p></td> +<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"> +<p>Send a GET request to a Solr API endpoint.</p> +</div> +<div class="paragraph"> +<p><strong>Example</strong>: <code>bin/solr api -get <a href="http://localhost:8983/solr/COLL_NAME/sql?stmt=select+id+from+COLL_NAME+limit+10" class="bare">http://localhost:8983/solr/COLL_NAME/sql?stmt=select+id+from+COLL_NAME+limit+10</a></code></p> +</div> +</dd> +</dl> +</div> +<div class="sect2"> +<h3 id="api"><a class="anchor" href="#api"></a>API</h3> +<div class="paragraph"> +<p>The <code>api</code> command will allow you to send an arbitrary HTTP request to a Solr API endpoint. +If you have configured basicAuth or TLS with your Solr you may find this easier than using a separate tool like <code>curl</code>.</p> +</div> +<div class="listingblock"> +<div class="content"> +<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">$ bin/solr api api -get http://localhost:8983/solr/techproducts/select?q=*:*</code></pre> +</div> +</div> +<div class="paragraph"> +<p>Here is an example of sending a SQL query to the techproducts /sql end point (assumes you started Solr in Cloud mode with the SQL module enabled):</p> +</div> +<div class="listingblock"> +<div class="content"> +<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">$ bin/solr api api -get http://localhost:8983/solr/techproducts/sql?stmt=select+id+from+techproducts+limit+10</code></pre> +</div> +</div> <div class="paragraph"> -<p><code>curl -X POST --header "Content-Type: application/javabin" --data-binary @gettingstarted.javabin <a href="http://localhost:8983/solr/gettingstarted/update?commit=true" class="bare">http://localhost:8983/solr/gettingstarted/update?commit=true</a></code></p> +<p>Results are streamed to the terminal.</p> </div> </div> </div>
Modified: sites/solr/guide/solr/latest/deployment-guide/solr-in-docker.html URL: http://svn.apache.org/viewvc/sites/solr/guide/solr/latest/deployment-guide/solr-in-docker.html?rev=1083697&r1=1083696&r2=1083697&view=diff ============================================================================== --- sites/solr/guide/solr/latest/deployment-guide/solr-in-docker.html (original) +++ sites/solr/guide/solr/latest/deployment-guide/solr-in-docker.html Fri Jul 21 18:07:42 2023 @@ -39,7 +39,7 @@ <div class="navbar-item has-dropdown is-hoverable"> <a class="navbar-link" href="#">Resources</a> <div class="navbar-dropdown"> - <a class="navbar-item" href="https://solr.apache.org/docs/9_2_1/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a> + <a class="navbar-item" href="https://solr.apache.org/docs/9_3_0/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a> <a class="navbar-item" href="https://solr.apache.org/community.html#version-control" target="_blank" rel="noreferrer nopener">Source Code</a> <a class="navbar-item" href="https://solr.apache.org/community.html" target="_blank" rel="noreferrer nopener">Community Links</a> <a class="navbar-item" href="https://github.com/apache/solr/tree/main/dev-docs/ref-guide" target="_blank" rel="noreferrer nopener">Contribute</a> @@ -56,25 +56,25 @@ </nav> </header> <div class="body"> -<div class="nav-container" data-component="solr" data-version="9_2"> +<div class="nav-container" data-component="solr" data-version="9_3"> <aside class="nav"> <div class="panels"> <!-- Solr Changes - Start --> <div class="nav-panel-explore" data-panel="explore"> <div class="context"> <span class="title">Solr Reference Guide</span> - <span class="version">9.2</span> + <span class="version">9.3</span> </div> <!-- Programmatically creates the component and version list --> <ul class="components"> <li class="component is-current"> <a class="title" href="../index.html">Solr Reference Guide</a> <ul class="versions"> - <li class="version"> - <a href="../../9_3/index.html">9.3-beta</a> - </li> <li class="version is-current is-latest"> - <a href="../index.html">9.2</a> + <a href="../index.html">9.3</a> + </li> + <li class="version"> + <a href="../../9_2/index.html">9.2</a> </li> <li class="version"> <a href="../../9_1/index.html">9.1</a> @@ -211,7 +211,7 @@ <a class="nav-link" href="../getting-started/tutorial-films.html">Exercise 2: Index Films Data</a> </li> <li class="nav-item" data-depth="2"> - <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3 Index Your Own Data</a> + <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3: Index Your Own Data</a> </li> <li class="nav-item" data-depth="2"> <a class="nav-link" href="../getting-started/tutorial-solrcloud.html">Getting Started with SolrCloud</a> @@ -718,6 +718,9 @@ </ul> </li> <li class="nav-item" data-depth="2"> + <a class="nav-link" href="../indexing-guide/indexing-with-cbor.html">Indexing with Update CBOR data format</a> + </li> + <li class="nav-item" data-depth="2"> <a class="nav-link" href="../indexing-guide/indexing-with-tika.html">Indexing with Solr Cell and Apache Tika</a> </li> <li class="nav-item" data-depth="2"> @@ -1070,17 +1073,17 @@ </ul> </nav> <div class="page-versions"> - <button class="version-menu-toggle" title="Show other versions of page">9.2</button> + <button class="version-menu-toggle" title="Show other versions of page">9.3</button> <div class="version-menu"> - <a class="version" href="../../9_3/deployment-guide/solr-in-docker.html">9.3-beta</a> - <a class="version is-current" href="solr-in-docker.html">9.2</a> + <a class="version is-current" href="solr-in-docker.html">9.3</a> + <a class="version" href="../../9_2/deployment-guide/solr-in-docker.html">9.2</a> <a class="version" href="../../9_1/deployment-guide/solr-in-docker.html">9.1</a> <a class="version" href="../../9_0/deployment-guide/solr-in-docker.html">9.0</a> </div> </div> <!-- Solr Additions - Start --> <!-- Solr New File --> -<span class="perma-link-copy" version="9_2"> +<span class="perma-link-copy" version="9_3"> </span><!-- Solr Additions - End --> <div class="edit-this-page"><a href="https://github.com/apache/solr/tree/main/solr/solr-ref-guide/modules/deployment-guide/pages/solr-in-docker.adoc">Edit this Page</a></div> </div> @@ -1101,6 +1104,37 @@ <p>See the <a href="https://hub.docker.com/_/solr?tab=tags">Docker Hub page</a> for a full list of tags and architectures available.</p> </div> <div class="sect2"> +<h3 id="available-images"><a class="anchor" href="#available-images"></a>Available images</h3> +<div class="paragraph"> +<p>Two docker images are provided for each release, full and slim. +These correspond to the two binary distributions that are produced for each Solr release. +The docker images for these distributions can be found at:</p> +</div> +<div class="hdlist"> +<table> +<tr> +<td class="hdlist1"> +Full distribution +</td> +<td class="hdlist2"> +<p><code>solr:<version></code></p> +</td> +</tr> +<tr> +<td class="hdlist1"> +Slim distribution +</td> +<td class="hdlist2"> +<p><code>solr:<version>-slim</code></p> +</td> +</tr> +</table> +</div> +<div class="paragraph"> +<p>Please refer to the <a href="installing-solr.html#available-solr-packages" class="xref page">Available Solr Packages</a> section for more information on each distribution.</p> +</div> +</div> +<div class="sect2"> <h3 id="running-solr-with-host-mounted-directories"><a class="anchor" href="#running-solr-with-host-mounted-directories"></a>Running Solr with host-mounted directories</h3> <div class="paragraph"> <p>Typically users first want to run a single standalone Solr server in a container, with a single core for data, while storing data in a local directory. Modified: sites/solr/guide/solr/latest/deployment-guide/solr-on-hdfs.html URL: http://svn.apache.org/viewvc/sites/solr/guide/solr/latest/deployment-guide/solr-on-hdfs.html?rev=1083697&r1=1083696&r2=1083697&view=diff ============================================================================== --- sites/solr/guide/solr/latest/deployment-guide/solr-on-hdfs.html (original) +++ sites/solr/guide/solr/latest/deployment-guide/solr-on-hdfs.html Fri Jul 21 18:07:42 2023 @@ -39,7 +39,7 @@ <div class="navbar-item has-dropdown is-hoverable"> <a class="navbar-link" href="#">Resources</a> <div class="navbar-dropdown"> - <a class="navbar-item" href="https://solr.apache.org/docs/9_2_1/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a> + <a class="navbar-item" href="https://solr.apache.org/docs/9_3_0/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a> <a class="navbar-item" href="https://solr.apache.org/community.html#version-control" target="_blank" rel="noreferrer nopener">Source Code</a> <a class="navbar-item" href="https://solr.apache.org/community.html" target="_blank" rel="noreferrer nopener">Community Links</a> <a class="navbar-item" href="https://github.com/apache/solr/tree/main/dev-docs/ref-guide" target="_blank" rel="noreferrer nopener">Contribute</a> @@ -56,25 +56,25 @@ </nav> </header> <div class="body"> -<div class="nav-container" data-component="solr" data-version="9_2"> +<div class="nav-container" data-component="solr" data-version="9_3"> <aside class="nav"> <div class="panels"> <!-- Solr Changes - Start --> <div class="nav-panel-explore" data-panel="explore"> <div class="context"> <span class="title">Solr Reference Guide</span> - <span class="version">9.2</span> + <span class="version">9.3</span> </div> <!-- Programmatically creates the component and version list --> <ul class="components"> <li class="component is-current"> <a class="title" href="../index.html">Solr Reference Guide</a> <ul class="versions"> - <li class="version"> - <a href="../../9_3/index.html">9.3-beta</a> - </li> <li class="version is-current is-latest"> - <a href="../index.html">9.2</a> + <a href="../index.html">9.3</a> + </li> + <li class="version"> + <a href="../../9_2/index.html">9.2</a> </li> <li class="version"> <a href="../../9_1/index.html">9.1</a> @@ -211,7 +211,7 @@ <a class="nav-link" href="../getting-started/tutorial-films.html">Exercise 2: Index Films Data</a> </li> <li class="nav-item" data-depth="2"> - <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3 Index Your Own Data</a> + <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3: Index Your Own Data</a> </li> <li class="nav-item" data-depth="2"> <a class="nav-link" href="../getting-started/tutorial-solrcloud.html">Getting Started with SolrCloud</a> @@ -718,6 +718,9 @@ </ul> </li> <li class="nav-item" data-depth="2"> + <a class="nav-link" href="../indexing-guide/indexing-with-cbor.html">Indexing with Update CBOR data format</a> + </li> + <li class="nav-item" data-depth="2"> <a class="nav-link" href="../indexing-guide/indexing-with-tika.html">Indexing with Solr Cell and Apache Tika</a> </li> <li class="nav-item" data-depth="2"> @@ -1070,17 +1073,17 @@ </ul> </nav> <div class="page-versions"> - <button class="version-menu-toggle" title="Show other versions of page">9.2</button> + <button class="version-menu-toggle" title="Show other versions of page">9.3</button> <div class="version-menu"> - <a class="version" href="../../9_3/deployment-guide/solr-on-hdfs.html">9.3-beta</a> - <a class="version is-current" href="solr-on-hdfs.html">9.2</a> + <a class="version is-current" href="solr-on-hdfs.html">9.3</a> + <a class="version" href="../../9_2/deployment-guide/solr-on-hdfs.html">9.2</a> <a class="version" href="../../9_1/deployment-guide/solr-on-hdfs.html">9.1</a> <a class="version" href="../../9_0/deployment-guide/solr-on-hdfs.html">9.0</a> </div> </div> <!-- Solr Additions - Start --> <!-- Solr New File --> -<span class="perma-link-copy" version="9_2"> +<span class="perma-link-copy" version="9_3"> </span><!-- Solr Additions - End --> <div class="edit-this-page"><a href="https://github.com/apache/solr/tree/main/solr/solr-ref-guide/modules/deployment-guide/pages/solr-on-hdfs.adoc">Edit this Page</a></div> </div> Modified: sites/solr/guide/solr/latest/deployment-guide/solrcloud-distributed-requests.html URL: http://svn.apache.org/viewvc/sites/solr/guide/solr/latest/deployment-guide/solrcloud-distributed-requests.html?rev=1083697&r1=1083696&r2=1083697&view=diff ============================================================================== --- sites/solr/guide/solr/latest/deployment-guide/solrcloud-distributed-requests.html (original) +++ sites/solr/guide/solr/latest/deployment-guide/solrcloud-distributed-requests.html Fri Jul 21 18:07:42 2023 @@ -39,7 +39,7 @@ <div class="navbar-item has-dropdown is-hoverable"> <a class="navbar-link" href="#">Resources</a> <div class="navbar-dropdown"> - <a class="navbar-item" href="https://solr.apache.org/docs/9_2_1/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a> + <a class="navbar-item" href="https://solr.apache.org/docs/9_3_0/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a> <a class="navbar-item" href="https://solr.apache.org/community.html#version-control" target="_blank" rel="noreferrer nopener">Source Code</a> <a class="navbar-item" href="https://solr.apache.org/community.html" target="_blank" rel="noreferrer nopener">Community Links</a> <a class="navbar-item" href="https://github.com/apache/solr/tree/main/dev-docs/ref-guide" target="_blank" rel="noreferrer nopener">Contribute</a> @@ -56,25 +56,25 @@ </nav> </header> <div class="body"> -<div class="nav-container" data-component="solr" data-version="9_2"> +<div class="nav-container" data-component="solr" data-version="9_3"> <aside class="nav"> <div class="panels"> <!-- Solr Changes - Start --> <div class="nav-panel-explore" data-panel="explore"> <div class="context"> <span class="title">Solr Reference Guide</span> - <span class="version">9.2</span> + <span class="version">9.3</span> </div> <!-- Programmatically creates the component and version list --> <ul class="components"> <li class="component is-current"> <a class="title" href="../index.html">Solr Reference Guide</a> <ul class="versions"> - <li class="version"> - <a href="../../9_3/index.html">9.3-beta</a> - </li> <li class="version is-current is-latest"> - <a href="../index.html">9.2</a> + <a href="../index.html">9.3</a> + </li> + <li class="version"> + <a href="../../9_2/index.html">9.2</a> </li> <li class="version"> <a href="../../9_1/index.html">9.1</a> @@ -211,7 +211,7 @@ <a class="nav-link" href="../getting-started/tutorial-films.html">Exercise 2: Index Films Data</a> </li> <li class="nav-item" data-depth="2"> - <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3 Index Your Own Data</a> + <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3: Index Your Own Data</a> </li> <li class="nav-item" data-depth="2"> <a class="nav-link" href="../getting-started/tutorial-solrcloud.html">Getting Started with SolrCloud</a> @@ -718,6 +718,9 @@ </ul> </li> <li class="nav-item" data-depth="2"> + <a class="nav-link" href="../indexing-guide/indexing-with-cbor.html">Indexing with Update CBOR data format</a> + </li> + <li class="nav-item" data-depth="2"> <a class="nav-link" href="../indexing-guide/indexing-with-tika.html">Indexing with Solr Cell and Apache Tika</a> </li> <li class="nav-item" data-depth="2"> @@ -1071,17 +1074,17 @@ </ul> </nav> <div class="page-versions"> - <button class="version-menu-toggle" title="Show other versions of page">9.2</button> + <button class="version-menu-toggle" title="Show other versions of page">9.3</button> <div class="version-menu"> - <a class="version" href="../../9_3/deployment-guide/solrcloud-distributed-requests.html">9.3-beta</a> - <a class="version is-current" href="solrcloud-distributed-requests.html">9.2</a> + <a class="version is-current" href="solrcloud-distributed-requests.html">9.3</a> + <a class="version" href="../../9_2/deployment-guide/solrcloud-distributed-requests.html">9.2</a> <a class="version" href="../../9_1/deployment-guide/solrcloud-distributed-requests.html">9.1</a> <a class="version" href="../../9_0/deployment-guide/solrcloud-distributed-requests.html">9.0</a> </div> </div> <!-- Solr Additions - Start --> <!-- Solr New File --> -<span class="perma-link-copy" version="9_2"> +<span class="perma-link-copy" version="9_3"> </span><!-- Solr Additions - End --> <div class="edit-this-page"><a href="https://github.com/apache/solr/tree/main/solr/solr-ref-guide/modules/deployment-guide/pages/solrcloud-distributed-requests.adoc">Edit this Page</a></div> </div> @@ -1109,7 +1112,7 @@ <p>In a SolrCloud cluster each individual node load balances read requests across all the replicas in a collection. You may still need a load balancer on the 'outside' that talks to the cluster. Or you need a client which understands how to read and interact with Solr’s metadata in ZooKeeper and only requests the ZooKeeper ensemble’s address to discover which nodes should receive requests. -Solr provides a smart Java SolrJ client called <a href="https://solr.apache.org/docs/9_2_1/solrj/org/apache/solr/client/solrj/impl/CloudSolrClient.html">CloudSolrClient</a> which is capable of this.</p> +Solr provides a smart Java SolrJ client called <a href="https://solr.apache.org/docs/9_3_0/solrj/org/apache/solr/client/solrj/impl/CloudSolrClient.html">CloudSolrClient</a> which is capable of this.</p> </div> <div class="paragraph"> <p>Even if some nodes in the cluster are offline or unreachable, a Solr node will be able to correctly respond to a search request as long as it can communicate with at least one replica of every shard, or one replica of every <em>relevant</em> shard if the user limited the search via the <code>shards</code> or <code>_route_</code> parameters.
