Solr命令行實用程序

2018-01-04 14:05 更新

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

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

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

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

zkCli.sh腳本提供的許多功能也由Solr控制腳本提供,可能更為熟悉,因為啟動腳本ZooKeeper維護命令與Unix命令非常相似。

Solr的zkcli.sh 與 ZooKeeper的zkCli.sh 對比

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

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

使用Solr的ZooKeeper CLI

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

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

  • -cmd <arg>

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

    • bootstrap

    • upconfig

    • downconfig

    • linkconfig

    • makepath

    • get 和 getfile

    • put 和 putfile

    • clear

    • list

    • ls

    • clusterprop

  • -z 或者 -zkhost <locations>

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

  • -c 或者 -collection <name>

    對于linkconfig:集合的名稱。

  • -d 或者 -confdir <path>

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

  • -h 或者 -help

    顯示幫助文字。

  • -n 或者 -confname <arg>

    對于upconfig,linkconfigdownconfig:配置集的名稱。

  • -r 或者 -runzk <port>

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

  • -s 或者 -solrhome <path>

    bootstrap或使用時-runzk強制 solrhome位置。

  • -name <name>

    對于clusterprop強制性的集群屬性名稱。

  • -val <value>

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

提示:短格式參數(shù)選項可指定為單個破折號 (如:-c mycollection)??梢允褂脝蝹€破折號 (如:-collection mycollection) 或雙破折號 (如: --collection mycollection) 來指定長形式參數(shù)選項。

ZooKeeper CLI示例

下面是一些使用zkcli.shCLI的例子,假設(shè)你已經(jī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,會在上傳配置之前自動創(chuàng)建chroot路徑。

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

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

把一個本地文件放到一個新的ZooKeeper文件中

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

將一個集合鏈接到配置集

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

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

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

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

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

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

與集合 API 上的 CLUSTERPROP 命令不同,這個命令也不會要求運行Solr的集群。

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

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號