各版本的下载地址:http://archive.apache.org/dist/lucene/solr/
本文档以7.5为例
将下载的solr-7.5.0.zip
解压
solr-7.5.0/bin
目录solr start
http://localhost:8983/solr
,如果可以顺利打开,说明solr启动成功。solr-7.5.0/bin
目录solr stop -p 8983
进入/usr/local/solr/solr-7.5.0/server/solr
,修改solr.xml
进入目录/usr/local/solr/solr-7.5.0/server/scripts/cloud-script
,执行
./zkcli.sh -zkhost 10.10.2.137:2181,10.10.2.138:2181,10.10.2.139:2181 -cmd upconfig -confdir /usr/local/solr/solr-7.5.0/server/solr/configsets/sample_techproducts_configs/conf -confname solrconf
表示把/usr/local/solr/solr-7.5.0/server/solr/configsets/sample_techproducts_configs/conf
目录下的文件上传到zookeeper的/configs/solrconf
节点下
在执行脚本上传配置文件前,必须先去启动zookeeper集群
进入/usr/local/solr/solr-7.5.0/bin
,修改vi solr.in.sh
添加
ZK_HOST="10.10.2.137:2181,10.10.2.138:2181,10.10.2.139:2181"
./solr stop -p 8180 #端口跟solr.xml设置的一样
把solr-7.5.0复制到其它机器(注意不再需要把配置文件上传到zookeeper)
./solr create-collection -c [新建集合的名字] -n [zookeeper上配置文件的名称,上一步设置的那个n] -shards 2 [分两块] -replicationFactor 2 [replic数量]
./solr create_collection -c search -n solrconf -shards 3 -replicationFactor 3
一个集合必须有一个 configSet,它至少包含 Solr 的两个主要配置文件:模式文件(命名为 managed-schemaor 或 schema.xml)和 solrconfig.xml。
上传示例configSet
./zkcli.sh -zkhost 10.10.2.137:2181,10.10.2.138:2181,10.10.2.139:2181 -cmd upconfig -confdir /usr/local/solr/solr-7.5.0/server/solr/configsets/sample_techproducts_configs/conf -confname techproducts
浏览器访问
http://10.10.2.137:8180/solr/admin/collections?action=CREATE&name=techproducts&numShards=2&replicationFactor=2&maxShardsPerNode=2&collection.configName=techproducts
上传索引 Techproducts 数据
#进入/usr/local/solr/solr-7.5.0/bin执行
./post -c techproducts ../example/exampledocs/ -p 8180
执行完上述过程,您的 Solr 中现在有数据了!
将解压后的solr-7.5.0\contrib\analysis-extras\lucene-libs 放到下 solr-7.5.0/server/solr-webapp/webapp/WEB-INF/lib.
managed-schema 添加已下代码
下载地址:https://files-cdn.cnblogs.com/files/wander1129/ikanalyzer-solr6.5.zip
将IK分词器 JAR 包拷贝到solr-7.5.0/server/solr-webapp/webapp/WEB-INF/lib下
将词典配置文件(stopword.dic,IKAnalyzer.cfg.xml,ext.dic)拷贝到 solr-7.5.0/server/solr-webapp/webapp/WEB-INF/classes下(classes如果不存在,新建
)
managed-schema 添加已下代码