W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
bin/solr 腳本允許某些操作影響 ZooKeeper。這些操作僅適用于 SolrCloud 模式。這些操作可以作為子命令使用,每個(gè)子命令都有自己的一組選項(xiàng)。
bin/solr zk [sub-command] [options]
bin/solr zk -help
Tip:Solr 應(yīng)該已經(jīng)啟動(dòng)至少一次,然后發(fā)出這些命令來(lái)初始化 ZooKeeper 和 Solr 所期望的 znodes。一旦 ZooKeeper 被初始化,Solr 就不需要在任何節(jié)點(diǎn)上運(yùn)行來(lái)使用這些命令。
使用 zk upconfig 命令可以將預(yù)先配置的組態(tài)集或自定義配置集上傳到 ZooKeeper。
以下所有的參數(shù)都是必需的。
-n <name>:
ZooKeeper 中配置集的名稱。這個(gè)命令會(huì)把配置集上傳給“配置” ZooKeeper 節(jié)點(diǎn),給它指定名字。
您可以通過(guò) Cloud 屏幕在管理界面中看到所有上傳的配置集。選擇 Cloud -> Tree -> configs 來(lái)查看它們。
如果指定了預(yù)先存在的配置集,它將在 ZooKeeper 中被覆蓋。
例如:
-n myconfig
-d <configset dir>:
要上傳的配置集的路徑。它應(yīng)該在它下面有一個(gè)“conf” 目錄,該目錄又包含 solrconfig.xml 等。
如果只提供一個(gè)名字,則將檢查$SOLR_HOME/server/solr/configsets
的名稱??赡軙?huì)提供一個(gè)絕對(duì)路徑。
例如:
-d directory_under_configsets
-d /path/to/configset/source
-z <zkHost>:
ZooKeeper 連接字符串。如果在 ZK_HOST 定義了solr.in.sh
或者solr.in.cmd
,則它是不必要的。
例如:
-z 123.321.23.43:2181
帶有所有參數(shù)的命令示例如下:
bin/solr zk upconfig -z 111.222.333.444:2181 -n mynewconfig -d /path/to/configset
注意:更改配置時(shí)重新加載集合,此命令不會(huì)自動(dòng)使更改生效!它只是將配置集上傳到 ZooKeeper。您可以使用集合 API 的 RELOAD 命令重新加載使用此配置集的所有集合。
使用 zk downconfig 命令從 ZooKeeper 下載配置集到本地文件系統(tǒng)。
下面列出的所有參數(shù)是必需的。
-n <name>:
在 ZooKeeper 中設(shè)置的配置名稱。管理界面 Cloud -> Tree -> configs 節(jié)點(diǎn)列出所有可用的配置集。
例如:-n myconfig
-d <configset dir>:
將下載的配置集寫入到的路徑。如果只提供一個(gè)名稱,$SOLR_HOME/server/solr/configsets
將是父級(jí)。絕對(duì)路徑也可以被提供。
無(wú)論哪種情況,目標(biāo)上預(yù)先存在的配置將被覆蓋!
例如:
-d directory_under_configsets
-d /path/to/configset/destination
-z <zkHost>:
ZooKeeper 連接字符串。如果在 ZK_HOST 中定義了solr.in.sh
或者olr.in.cmd
,則它是不必要的。
例如:-z 123.321.23.43:2181
帶有所有參數(shù)的這個(gè)命令的一個(gè)例子是:
bin/solr zk downconfig -z 111.222.333.444:2181 -n mynewconfig -d /path/to/configset
"最佳做法" 是將您的配置集以某種形式的版本控制作為 system-of-record。在這種情況下,很少使用 downconfig。
使用該 zk cp 命令在 ZooKeeper znodes 和本地驅(qū)動(dòng)器之間傳輸文件和目錄。該命令將從本地驅(qū)動(dòng)器復(fù)制到 ZooKeeper,從 ZooKeeper 復(fù)制到本地驅(qū)動(dòng)器或從ZooKeeper 復(fù)制到 ZooKeeper。
-r:
可選的。執(zhí)行一個(gè)遞歸的副本。如果 <src> 沒(méi)有指定 “-r”,那么該命令將失敗。
例如:-r
<src>:
要從中復(fù)制的文件或路徑。如果前綴為zk:
則源被假定為 ZooKeeper。如果沒(méi)有前綴或前綴是 "file:",則為本地驅(qū)動(dòng)器。至少有一個(gè) <src> 或者 <dest> 必須使用前綴'zk:'
否則該命令將失敗。
例如:
zk:/configs/myconfigs/solrconfig.xml
file:/Users/apache/configs/src
<dest>:
要復(fù)制到的文件或路徑。如果前綴為 zk: 則源被假定為 ZooKeeper。如果沒(méi)有前綴或前綴是 file: 這是本地驅(qū)動(dòng)器。
至少有一個(gè)<src>
或者<dest>
必須使用前綴zk:
否則該命令將失敗。如果<dest>
以斜杠字符結(jié)尾,則會(huì)命名一個(gè)目錄。
例如:
zk:/configs/myconfigs/solrconfig.xml
file:/Users/apache/configs/src
-z <zkHost>:
ZooKeeper 連接字符串。如果在 ZK_HOST 中定義了solr.in.sh
或者olr.in.cmd
,則它是不必要的。
例如:-z 123.321.23.43:2181
帶參數(shù)的這個(gè)命令的例子是:
從本地遞歸復(fù)制一個(gè)目錄到 ZooKeeper:
bin/solr zk cp -r file:/apache/confgs/whatever/conf zk:/configs/myconf -z 111.222.333.444:2181
將一個(gè)文件從 ZooKeeper 復(fù)制到本地:
bin/solr zk cp zk:/configs/myconf/managed_schema /configs/myconf/managed_schema -z 111.222.333.444:2181
使用 zk rm 命令從 ZooKeeper 中刪除一個(gè) znode(和可選的所有子節(jié)點(diǎn))
-r:
可選的。做一個(gè)遞歸刪除。如果指定了 <-r>,那么如果 <path> 有子級(jí),命令將失敗。
例如:-r
<path>:
要從 ZooKeeper 中刪除的路徑,無(wú)論是父節(jié)點(diǎn)還是子節(jié)點(diǎn)。
安全檢查有限,不能刪除 “/” 或 “/ zookeeper” 節(jié)點(diǎn)。
路徑被假定為一個(gè) ZooKeeper 節(jié)點(diǎn),不需要zk:
前綴。
例如:
/configs
/configs/myconfigset
/configs/myconfigset/solrconfig.xml
-z <zkHost>:
ZooKeeper 連接字符串。如果在 ZK_HOST 中定義了solr.in.sh
或者olr.in.cmd
,則它是不必要的。
例如:-z 123.321.23.43:2181
帶參數(shù)的這個(gè)命令的例子是:
bin/solr zk rm -r /configs
bin/solr zk rm /configs/myconfigset/schema.xml
使用該zk mv命令來(lái)移動(dòng)(重命名)ZooKeeper znode
<src>:
要重命名的 znode。假設(shè)zk:
前綴。
例如:/configs/oldconfigset
<dest>:
znode 的新名稱。假設(shè)zk:
前綴。
例如:/configs/newconfigset
-z <zkHost>:
ZooKeeper 連接字符串。如果在 ZK_HOST 中定義了solr.in.sh
或者olr.in.cmd
,則它是不必要的。
例如:-z 123.321.23.43:2181
這個(gè)命令的例子是:
bin/solr zk mv /configs/oldconfigset /configs/newconfigset
使用 zk ls 命令查看 znode 的子項(xiàng)。
-r (可選)。遞歸地列出一個(gè) znode 的所有子代。
+ 示例:-r
<path>:
ZooKeeper 列出的路徑。
例如:/collections/mycollection
-z <zkHost>:
ZooKeeper 連接字符串。如果在 ZK_HOST 中定義了solr.in.sh
或者olr.in.cmd
,則它是不必要的。
例如:-z 123.321.23.43:2181
帶參數(shù)的這個(gè)命令的例子是:
bin/solr zk ls -r /collections/mycollection
bin/solr zk ls /collections
使用 zk mkroot 命令來(lái)創(chuàng)建一個(gè) znode。此命令的主要用途是支持 ZooKeeper 的 “chroot” 概念。但是,它也可以用來(lái)創(chuàng)建任意路徑。
<path>:
ZooKeeper 創(chuàng)建的路徑。如有必要,將創(chuàng)建中間節(jié)點(diǎn)。即使未指定,也會(huì)采用前導(dǎo)斜杠。
例如:/solr
-z <zkHost>:
ZooKeeper 連接字符串。如果在 ZK_HOST 中定義了solr.in.sh
或者olr.in.cmd
,則它是不必要的。
例如:-z 123.321.23.43:2181
這個(gè)命令的例子:
bin/solr zk mkroot /solr -z 123.321.23.43:2181
bin/solr zk mkroot /solr/production
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: