版本:
solr 4.9.0
zookeeper 3.4.5
tomcat 7.0.42
ZK、tomcat安装过程省略
OK开始
1.解压 solr-
4.9.0的压缩包,并且把solr-
4.9.0/example/webapps/solr.war解压至/usr/local/solr目录下
2.把 solr-4.8.1\example\lib\ext下的 jar包放到solr\WEB-INF\lib下
3.以 192.168.0.237为例,创建以下目录
1)
mkdir -p /usr/local/solrcloud/config-files
2) mkdir -p /usr/local/solrcloud/solr-lib
4.把 solr/WEB-INF/lib下的所有 jar包拷贝到/usr/local/solrcloud/solr-lib目录
cp -av /usr/local/solr/WEB-INF/lib/*.jar /usr/local/solrcloud/solr-lib
5.solr/example/solr/collection1/conf下的所有文件拷贝到 /usr/local/solrcloud/config-files目录
cp -av /usr/local/solr/example/solr/collection1/conf/*/usr/local/solrcloud/config-files/
6.将 /usr/local/solr目录拷贝到 /usr/local/apache-tomcat-7.0.42/webapps目录下面
cp -av /usr/local/solr /usr/local/apache-tomcat-7.0.42/webapps
7.
创建 solr的数据目录 /usr/local/solr-cores 并在该目录下生成 solr.xml,这是 solr 的核心配置文件原始的配置文件如下
-
<?xml version=\"1.0\"encoding=\"UTF-8\" ?>
-
<solr persistent=\"true\">
-
<logging enabled=\"true\">
-
<watcher size=\"100\"threshold=\"INFO\" />
-
</logging>
-
<cores defaultCoreName=\"collection1\"adminPath=\"/admin/cores\"host=\"${host:}\"hostPort=\"8080\"hostContext=\"${hostContext:solr}\"zkClientTimeout=\"${zkClientTimeout:15000}\">
-
</cores>
-
</solr>
8.
创建/usr/local/apache-tomcat-7.0.42/conf/Catalina目录和/usr/local/apache-tomcat-7.0.42/conf/Catalina/localhost目录
1)
mkdir -p /usr/local/apache-tomcat-7.0.42/conf/Catalina
2) mkdir -p /usr/local/apache-tomcat-7.0.42/conf/Catalina/localhost
9.在 /usr/local/apache-tomcat-7.0.54/conf/Catalina/localhost下创建 solr.xml文件,此文件为
Solr/home的配置文件
-
<?xml version=\"1.0\"encoding=\"UTF-8\"?>
-
<Context docBase=\"/usr/local/tomcat7/webapps/solr\"debug=\"0\"crossContext=\"true\">
-
<Environment name=\"solr/home\"type=\"java.lang.String\"value=\"/usr/local/solr-cores\"override=\"true\"/>
-
</Context>
10.修改 tomcat/bin/cataina.sh ,加入以下内容
-
JAVA_OPTS=\'-Djetty.port=8080 -Dsolr.solr.home=/usr/local/solr-cores -DzkHost=NN:2181,DN1:2181,dn2:2181\'
11.
将solr/example/resources/log4j.properties 复制到 /tomcat/webapps/solr/WEB-INF/classes/
cp solr/example/resources/log4j.properties /tomcat/webapps/solr/WEB-INF/classes/
12.将以上配置同步到其他两台服务器
-
scp -r /usr/local/apache-tomcat-7.0.54 solr@DN1:/usr/local
-
scp -r /usr/local/solrcloud solr@DN1:/usr/local
-
scp -r /usr/local/solr-cores solr@DN1:/usr/local
-
-
scp -r /usr/local/apache-tomcat-7.0.54 solr@DN2:/usr/local
-
scp -r /usr/local/solrcloud solr@DN2:/usr/local
-
scp -r /usr/local/solr-cores solr@DN2:/usr/local
13.SolrCloud是通过 ZooKeeper集群来保证配置文件的变更及时同步到各个节点上,所以,需要将配置文件上传到ZooKeeper集群中:执行如下操作(以下ip均可使用域名进行操作)
-
java -classpath .:/usr/local/solrcloud/solr-lib/* org.apache.solr.cloud.ZkCLI -cmd upconfig -zkhost NN:2181,DN1:2181,DN2:2181 -confdir /usr/local/solrcloud/config-files/ -confname myconf
14.校验 zookeeper的配置文件
-
cd /usr/local/zookeeper-3.4.5/bin
-
/zkCli.sh -server 192.168.0.112:2181
-
[zk: 192.168.01.2:2181(CONNECTED)0] ls /
-
[configs, collections, zookeeper]
-
[zk: 192.168.01.2:2181(CONNECTED)1] ls /configs
-
[myconf]
-
[zk: 192.168.01.2:2181(CONNECTED)2] ls /configs/myconf
-
[admin-extra.menu-top.html, currency.xml, protwords.txt,mapping-FoldToASCII.txt, solrconfig.xml, lang, stopwords.txt, spellings.txt, mapping-ISOLatin1Accent.txt, admin-extra.html, xslt, scripts.conf, synonyms.txt, update-script.js, velocity, elevate.xml, admin-extra.menu-bottom.html, schema.xml]
-
[zk: 192.168.01.2:2181(CONNECTED)3]
15.依次启动tomcat,出现solr UI
OK成功
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29754888/viewspace-1306255/
,如需转载,请注明出处,否则将追究法律责任。