SolrCloud和MultiCore的區別

1、SolrCloud 與 MultiCore 的本質區別 *SolrCloud 用多臺機搭建一個SolrCore(即整個系統只有一套schema,solrconfig) *MultiCore 是多個獨立的服務,不一樣的core能夠用幾套schema,solrconfig。html

2、下面開始安裝 SolrCloud (SolrCloud 是一個集羣,真實環境下是須要多臺機配合工做的,下面我以兩臺機子爲例,一步一步來安裝 SolrCloud) 如今我有兩臺機(沒有配置 host,只能直接使用 IP地址):java

<!-- lang: java -->
ip1:202.38.221.64
ip2:202.38.221.50

SolrCloud 服務器是利用 zookeeper 服務器來實現分佈式工做的,因此先要安裝 zookeeper 下面查看 zookeeper 的官方文檔,來介紹如何安裝 zookeeperlinux

2.1 安裝 zookeeperweb

<!-- lang: java -->
下面分 local 模式和 集羣模式
下面根據官方文檔(http://zookeeper.apache.org/doc/trunk/zookeeperStarted.html#sc_RunningReplicatedZooKeeper) Getting Started 來部署 zookeeper,官方文檔說,這裏的目標主要是針對開發者
但願去嘗試一下而寫的,只介紹了單 Zookeeper 服務和一些簡單的命令去確認它是否正常工做,最後爲了方便開發者,還附帶幾部分複雜配置的內容用來講明集羣複製部署,若是想要商業應用還須要看 ZooKeeper Administrator's Guide. 
    第一步:下載 Zookeeper (http://zookeeper.apache.org/releases.html) 我選擇的是 3.3.5 版本
    第二步:
    一、若是是單機模式,很是簡單,將下載好的文件解壓,而後將主目錄下面的 conf 目錄下自帶的 zoo_sample.cfg 更名爲 zoo.cfg 而後點開將裏面的 dataDir 設置成你想要的路徑,注意在 linux 下可使用絕對路徑,可是在 windows 下最好使用相對路徑,相對於 zoo.cfg文件,我沒有使用相對路徑報錯了,說找不到 data 目錄下的 myid 文件,也有可能windows 下面路徑分隔符應該用/分割

    二、若是是集羣模式也很簡單,只要在zoo.cfg 加上以下配置信息:(記住有幾臺機就要加幾行,單機模擬多臺機要注意端口號和後面的選舉端口號要區別開)
server.X=IP:2888:3888
而後把 X 加到dataDir目錄下面的 myid 文件中,沒有自行建立
記住那個ip,那個端口就對應那個X 這樣把天天機子的服務打開 就完事了
還有如下命令,和操做文件目錄差很少,能夠覺得 zookeeper 自己維護了一個文件系統,因此沒難度,之後再研究怎麼用 java 去操做它

下面重點研究怎麼安裝 solrcloud 服務apache

Solr及Tomcat安裝配置windows

<!-- lang: java -->
(1)下載solr4.2,把solr-4.2.1\example\solr\collection1\conf 目錄下的配置文件上傳的    zookeeper
(2)上傳solr配置文件到zookeeper
[plain] view plaincopy
java -classpath .:/home/weibo/tomcat_solr_qq/webapps/solr/WEB-INF/lib/* org.apache.solr.cloud.ZkCLI -cmd upconfig -zkhost 127.0.0.1:2181,127.0.0.1:2281,127.0.0.1:2381 -confdir /home/weibo/solr-config -confname weiboconfig  
(3)把配置文件和目標collection聯繫起來
[plain] view plaincopy
java -classpath .:/home/weibo/tomcat_solr_qq/webapps/solr/WEB-INF/lib/* org.apache.solr.cloud.ZkCLI -cmd linkconfig -collection weibocollection -confname weiboconfig -zkhost 127.0.0.1:2181,127.0.0.1:2281,127.0.0.1:2381  
(4)複製3個tomcat,在conf/Catalina/localhost建立solr.xml(若是目錄不存在,請自行建立),內容以下
[plain] view plaincopy
<?xml version="1.0" encoding="utf-8"?>  
<Context docBase="/home/weibo/solr-qq/solr.war" debug="0" corssContext="false" >  
        <Environment name="solr/home" type="java.lang.String" value="/home/weibo/solr-qq/" override="true"/>  
</Context>  
crossContext不能設置爲true,這裏注意
(5)在你的solr home目錄建立solr.xml
[plain] view plaincopy
<?xml version="1.0" encoding="UTF-8" ?>  
<solr persistent="true">  
  <cores adminPath="/admin/cores" zkClientTimeout="20000" hostPort="8080">  
  </cores>  
</solr>  
其餘tomcat對應設置對應的端口號
(6)編輯tomcat bin/catalina.sh(windows下catalina.bat),加入
[plain] view plaincopy
JAVA_OPTS='-DzkHost=127.0.0.1:2181,127.0.0.1:2281,127.0.0.1:2381'  
這裏就是solr和zookeeper交互的地方了
(7)依次啓動tomcat,建立core及shard,訪問solr
相關文章
相關標籤/搜索