在3台Linux服务器上部署solrcloud
服务器 |
zookeeper |
solr |
机器名 |
192.168.30.121 |
端口:2181 |
端口:8985 |
yw-solr1 |
192.168.30.122 |
端口:2181 |
端口:8985 |
yw-solr2 |
192.168.30.123 |
端口:2181 |
端口:8985 |
yw-solr3 |
1、在先在121机器上解压安装好zookeeper。
目录结构:
1、进入conf目录,修改配置文件zoo.cfg
1、在zookeeper安装目录下创建dataDir配置的数据存储文件目录datadir,并且在datadir目录中创建myid文件,且输入值为1;
1、至此121上的zookeeper已配置完成,然后将121上部署好的zookeeper复制到122、123上,然后分别进入122、123上的zookeeper安装目录,修改datadir中的myid的内容分别为2、3;
1、进入zookeeper的安装目录bin执行zkServer.sh start;启动zookeeper
2、查看日志,tail -f zookeeper.out
3、安装solr。在121解压solr源包
1、编写启动shell脚本start.sh
ZK_OPT="${ZK_OPT} -Dcollection.configName=SH_MH_PASSENGER_IN"
ZK_OPT="${ZK_OPT} -DzkHost=yw-solr1:2181,yw-solr2:2181,yw-solr3:2181"
JETTY_OPT="${JETTY_OPT} -Djetty.port=8985"
JAVA_OPT="${JAVA_OPT} -Xverify:none -Xms1024m -Xmx3072m -Xmn768m -XX:PermSize=128m -XX:MaxPermSize=256m"
JAVA_OPT="${JAVA_OPT} -XX:+DisableExplicitGC -Xnoclassgc -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=85"
EXEC="java ${ZK_OPT} ${JETTY_OPT} ${JAVA_OPT} -jar start.jar"
OUTFILE="`pwd`/nohup.out"
#echo ${OUTFILE}
if [ -e $OUTFILE ]; then
rm -f ${OUTFILE}
fi
touch nohup.out
chmod 755 nohup.out
nohup ${EXEC} &
1、进入solr存储core目录,修改solr.xml配置文件(好像不用修改也没关系)
1、至此solrcloud服务节点配置好,复制其到122、123机器,启动执行start.sh即可(别忘了linux下赋权限)
2、管理solrcloud配置信息
一、创建配置文件存储目录config
此目录用于存放solr的相关core的配置信息
一、创建solr配置文件上传zookeeper依赖包目录solr-lib
此目录用于存放上传zookeeper依赖jar包,直接复制${SOLR_HOME}solr-webappwebappWEB-INFlib下所有jar。
一、创建上传文件脚本命令
新建文本文档,输入一下命令:
java -classpath .;D:/solrcloud/solr-lib/* org.apache.solr.cloud.ZkCLI -cmd upconfig -zkhost 192.168.30.121:2181 -confdir D:solrcloudconfigSH_MH_PASSENGER_INconf -confname SH_MH_PASSENGER_IN
更改文本文档的扩展名为.bat
1、查看上传至zookeeper的配置信息文件
执行完上传文件脚本命令后,在zookeeper的bin目录下,执行./zkCli.cm -server 192.168.30.121:2181进zookeeper的窗口界面。通过ls /configs查看已上传的配置信息。
2、创建对应core。
在浏览器中输入:
name:数据集名,即core名
numShards:创建几个分片
replicationFactor:创建多少副本
maxShardsPerNode:每个节点最多几个分片
createNodeSet:指定在当前机器上创建数据集分片
3、查看结构
在浏览其中输入任意一台solrcloud服务器地址http://192.168.30.121:8985/solr
1,查看所有core的状态
http://172.168.63.233:8983/solr/admin/cores?action=STATUS
2,查看一个core的状态
http://172.168.63.233:8983/solr/admin/cores?action=STATUS&core=collection3
3,重启core
http://172.168.63.233:8983/solr/admin/cores?action=RELOAD&core=collection2
4,重命名core
http://172.168.63.233:8983/solr/admin/cores?action=RENAME&core=core4&other=core44
5、删除solrcloud数据集
http://127.0.0.1:8985/solr/admin/collections?action=DELETE&name=SH_MH_PASSENGER_IN
6、创建副本
7、删除副本
8、拆分分片
9、删除分片