Solr命令行實(shí)用程序

2018-01-04 14:05 更新

ZooKeeper的命令行界面(CLI)腳本可用于直接與存儲(chǔ)在ZooKeeper中的Solr配置文件進(jìn)行交互。

雖然Solr的管理用戶界面包括專用于SolrCloud群集狀態(tài)的頁(yè)面,但它不允許您下載或修改相關(guān)的配置文件。

有關(guān)使用管理UI界面的更多信息, 請(qǐng)參閱Cloud Screens部分。

在server/scripts/cloud-scripts中找到的ZooKeeper CLI腳本允許您將配置信息上傳到ZooKeeper,方法與參數(shù)引用中的示例中所示相同。它還提供了一些其他命令,使您可以將集合集鏈接到集合、創(chuàng)建ZooKeeper路徑或清除它們,并將配置從ZooKeeper下載到本地文件系統(tǒng)。

zkCli.sh腳本提供的許多功能也由Solr控制腳本提供,可能更為熟悉,因?yàn)閱?dòng)腳本ZooKeeper維護(hù)命令與Unix命令非常相似。

Solr的zkcli.sh 與 ZooKeeper的zkCli.sh 對(duì)比

由 Solr 提供的zkcli.sh與包含在ZooKeeper中的zkcli.sh是不一樣的。

ZooKeeper的zkcli.sh提供了一個(gè)完全通用的、應(yīng)用程序不可知的 shell,用于操作ZooKeeper的數(shù)據(jù)。本節(jié)中討論的Solr的zkcli.sh是特定于 solr 的,并且具有特定于處理ZooKeeper中的Solr數(shù)據(jù)的命令行參數(shù)。

使用Solr的ZooKeeper CLI

使用該help選項(xiàng)從腳本本身獲取可用命令的列表,如./server/scripts/cloud-scrips/zkcli.sh help。

這兩個(gè)zkcli.sh(Unix環(huán)境下)和zkcli.bat(用于Windows環(huán)境)支持以下命令行選項(xiàng):

  • -cmd <arg>

    要執(zhí)行的CLI命令。該參數(shù)是強(qiáng)制性的。支持以下命令:

    • bootstrap

    • upconfig

    • downconfig

    • linkconfig

    • makepath

    • get 和 getfile

    • put 和 putfile

    • clear

    • list

    • ls

    • clusterprop

  • -z 或者 -zkhost <locations>

    ZooKeeper主機(jī)地址。所有CLI命令都必須使用此參數(shù)。

  • -c 或者 -collection <name>

    對(duì)于linkconfig:集合的名稱。

  • -d 或者 -confdir <path>

    對(duì)于upconfig:配置文件的目錄。對(duì)于downconfig:從ZooKeeper提取的文件的目的地

  • -h 或者 -help

    顯示幫助文字。

  • -n 或者 -confname <arg>

    對(duì)于upconfig,linkconfig,downconfig:配置集的名稱。

  • -r 或者 -runzk <port>

    通過(guò)傳遞Solr運(yùn)行端口在內(nèi)部運(yùn)行ZooKeeper;僅適用于一臺(tái)機(jī)器上的群集。

  • -s 或者 -solrhome <path>

    bootstrap或使用時(shí)-runzk強(qiáng)制 solrhome位置。

  • -name <name>

    對(duì)于clusterprop強(qiáng)制性的集群屬性名稱。

  • -val <value>

    對(duì)于clusterprop:集群屬性值。如果未指定,則將使用null作為值。

提示:短格式參數(shù)選項(xiàng)可指定為單個(gè)破折號(hào) (如:-c mycollection)??梢允褂脝蝹€(gè)破折號(hào) (如:-collection mycollection) 或雙破折號(hào) (如: --collection mycollection) 來(lái)指定長(zhǎng)形式參數(shù)選項(xiàng)。

ZooKeeper CLI示例

下面是一些使用zkcli.shCLI的例子,假設(shè)你已經(jīng)啟動(dòng)了SolrCloud的例子(bin/solr -e cloud -noprompt)

如果你是Windows系統(tǒng),只需在這些示例中將zkcli.sh更換為zkcli.bat。

上傳配置目錄

./server/scripts/cloud-scripts/zkcli.sh -zkhost 127.0.0.1:9983 -cmd upconfig -confname my_new_config -confdir server/solr/configsets/_default/conf

從現(xiàn)有的solr.home引導(dǎo)ZooKeeper

./server/scripts/cloud-scripts/zkcli.sh -zkhost 127.0.0.1:2181 -cmd bootstrap -solrhome /var/solr/data

帶 chroot 的引導(dǎo)

在- zkhost參數(shù)中使用 boostrap 命令與zookeeper chroot,如-zkhost 127.0. 0.1: 2181/solr,會(huì)在上傳配置之前自動(dòng)創(chuàng)建chroot路徑。

將任意數(shù)據(jù)放入一個(gè)新的ZooKeeper文件

./server/scripts/cloud-scripts/zkcli.sh -zkhost 127.0.0.1:9983 -cmd put /my_zk_file.txt 'some data'

把一個(gè)本地文件放到一個(gè)新的ZooKeeper文件中

./server/scripts/cloud-scripts/zkcli.sh -zkhost 127.0.0.1:9983 -cmd putfile /my_zk_file.txt /tmp/my_local_file.txt

將一個(gè)集合鏈接到配置集

./server/scripts/cloud-scripts/zkcli.sh -zkhost 127.0.0.1:9983 -cmd linkconfig -collection gettingstarted -confname my_new_config

創(chuàng)建一個(gè)新的ZooKeeper路徑

在首次啟動(dòng)集群之前,在ZooKeeper中創(chuàng)建一個(gè)chroot路徑會(huì)很有用。

./server/scripts/cloud-scripts/zkcli.sh -zkhost 127.0.0.1:2181 -cmd makepath /solr

設(shè)置一個(gè)集群屬性

該命令將在clusterprops.json中添加或修改單個(gè)集群屬性。使用這個(gè)命令,而不是通常的getfile - > edit - > putfile循環(huán)。

與集合 API 上的 CLUSTERPROP 命令不同,這個(gè)命令也不會(huì)要求運(yùn)行Solr的集群。

./server/scripts/cloud-scripts/zkcli.sh -zkhost 127.0.0.1:2181 -cmd clusterprop -name urlScheme -val https
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)