国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

實戰: SOLR的分布式部署(復制模式 CollectionDistribute)部署流程詳解 (二)

2019-11-17 03:54:57
字體:
來源:轉載
供稿:網友
需求:

實現SOLR主,輔服務器更新同步,每次客戶端COMMIT請求都會及時應用在輔服務器上。
實現MULTICORE,實際生產環境中往往會有多個搜索應用實例。


步驟:

一、    準備條件

服務器準備
       準備兩臺服務器:



一臺用作主服務器(192.168.0.36),負責分發索引



另一臺負責輔服務器(192.168.0.46),負責承載搜索服務。



2.    軟件環境

linux版本不限,32,64位不限

應用容器:TOMCAT 6.0

java版本:JDK1.6以上版本

Solr應用環境目錄: /solr/video/ (可使用ln –s 創建軟連接) 和 /solr/album/

(本例設定為兩個應用:實際情況可自由增減   )

Solr索引目錄:/solr/data/album 和 /solr/data/video

3.  劃分應用  

      本例中劃分兩個應用 專輯 album 和 視頻 video

4.    基礎目錄創建(主,輔均需配置)

a)    在 /solr/ 應用環境目錄下創建兩個目錄:album 和 video

b)   分別將SOLR安裝目錄下Solr/example/solr/conf文件夾至這兩個目錄

c)    分別復制安裝目錄solr/src/scripts文件夾至 album 和 video目錄,并將script改名為bin(后續要用到)

d)   按照特定需求分別修改索引字段結構文件: schema.xml(有關此文件的配置不再撰述)

e)    復制 Solr/example/multicore 下的solr.xml文件至 應用環境根目錄:/solr/

f)     創建索引目錄 /solr/data/album 和 /solr/data/video



二、    配置MULTICORE(主,輔均需配置)

       劃分業務類型,如做一個視頻搜索引擎需要專輯和視頻兩大應用,則:



1)   配置SOLR業務類型:在 /solr/下 編輯solr.xml文件

                <core name="core0" instanceDir="core0" />
                 <core name="core1" instanceDir="core1" />

  
  
修改為   
<core name="album" instanceDir="album" />
               <core name="video" instanceDir="video" />





2)   指定索引目錄,進入/solr/album/conf目錄,打開編輯器修改solrconfig.xml,找到<dataDir>  節點,將真正的目錄“/solr/data/album”替換掉原有數據。(視頻應用步驟與此相同。)

             

三、    配置分布式應用(以下均在主服務器上配置)

1)   分別修改分布式分發腳本: scripts.conf

(/solr/album/bin 和 /solr/video/bin)

#觸發外部命令所使用的用戶

user=haiting

#本地機器名

solr_hostname=localhost

#本地SOLR開放的端口(及TOMCAT服務端口)

solr_port=9001

#分發腳本使用的RSYNC服務端口,業務端口要區分開,在本例中,album為19001,video為19002,客戶端與服務端端口設置需一致,否則會導致SNAPPULLER過程失敗。

rsyncd_port=19001

#索引文件路徑

data_dir=/solr/data/album

#TOMCAT容器中SOLR服務名(默認不變)

webapp_name=solr

#主服務器IP(主與輔同配置)

master_host=192.168.0.46

#主服務器索引文件路徑

master_data_dir=/solr/data/album

#主服務器狀態過程日志存放目錄

master_status_dir=/solr/status/album

2)      修改腳本所在默認路徑

(通過修改scripts-util公用腳本實現)

l  找到該文件所在路徑:/solr/album/bin和/solr/video/bin

l  第27行

confFile=${solr_root}/conf/scripts.conf

修改為:

confFile=/solr/bin/album/conf/scripts.conf



confFile=/solr/bin/video/conf/scripts.conf



注明:不進行此步驟會造成SOLR外部調用監聽器執行會失敗(/solr/)    

3)     修改主配置文件solrconfig.xml

l  找到以下目錄:/solr/album/conf和 /solr/video/conf

l   分別修改兩個應用的  COMMIT監聽器,使得SOLR接收到COMMIT請求時,自動調用外部命令snappuller

找到 postCommit 節點,配置后的節點如下所示:

    <listener event="postCommit" class="solr.RunExecutableListener">

      <str name="exe">/solr/video/bin/snapshooter</str>

      <str name="dir">.</str>

      <bool name="wait">true</bool>

      <arr name="args"> <str>-d</str> <str>/solr/data/video</str> </arr>

      <arr name="env"> <str>MYVAR=val1</str> </arr>

</listener>



注明:每一個應用對應的配置文件都需要配置,包括外部命令的目錄.









四、     配置、執行分發腳本

1.       主服務器

1)   啟動SOLR

2)   啟用RSYNC

手工執行腳本:

/solr/video/bin/rsyncd-enable –v

說明:-v終端打印執行詳細日志

3)   開啟RSYNC

/solr/video/bin/rsyncd-start –v





2.       客戶端

推薦使用SolrJ(目錄位于/solr/src/solrj)

a)         將SOLR接收URL改為:http://192.168.0.36:9001/solr/video

(或http://192.168.0.36:9001/solr/album )

b)         執行發送命令,將數據推送至主服務器



3.       輔服務器

a)   配置清理腳本

l  su haiting

l  crontab –e

l  0 0 * * * /solr/album/bin/snapcleaner -D 7

l  0 0 * * * /solr/video/bin/snapcleaner -D 7

l  Wq!

說明:系統每7天調用一次清理腳本,清理不用的快照

b)   啟用快照

手動執行

/solr/video/bin/snappuller-enable -v

c)   獲取并安裝快照

l  配置cron

l  su haiting

l  crontab –e

l  */5 * * * * /solr/video/bin/snappuller;/solr/video/bin/snapinstaller

l  */5 * * * * /solr/album/bin/snappuller;/solr/album/bin/snapinstaller

l  wq!



說明:系統每五分鐘調用一次smappuller和snapinstaller,及每五分鐘生效一次。



本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/thundersssss/archive/2009/12/29/5099232.aspx
上一篇:刪除svn文件

下一篇:java的一些網址

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 台东市| 汉寿县| 乐清市| 抚州市| 抚松县| 石阡县| 德格县| 英德市| 车致| 沈阳市| 汪清县| 牡丹江市| 苏尼特右旗| 渝北区| 银川市| 澜沧| 万州区| 洛川县| 扶沟县| 宁陕县| 高青县| 天柱县| 黔南| 保德县| 乌拉特前旗| 漯河市| 黑河市| 乌拉特中旗| 赣州市| 合水县| 雷州市| 老河口市| 石棉县| 丰县| 冕宁县| 渝中区| 九寨沟县| 北碚区| 汶上县| 兴和县| 长阳|