部署安装:
1. 说明
Solr5内置了Jetty服务,所以不用安装部署到Tomcat了。以下每步操作除了特殊说明外默认在集群中每个节点都需要操作, 操作的用户为root。
2. 修改系统配置
修改hosts文件,加入各主机IP和主机名的映射;
# vim /etc/hosts
开放相应端口或者直接关闭防火墙。
# service iptables stop
# chkconfig iptables off
3. 部署Zookeeper集群服务, 配置本地yum源,安装并配置zookeeper
# yum install zookeeper-server
# vim /etc/zookeeper/conf/zoo.cfg
# /etc/init.d/zookeeper-server init
# vim /var/lib/zookeeper/myid
启动zookeeper服务
# /etc/init.d/zookeeper-server start
检查zookeeper是否启动成功
# netstat -nat | grep 2181
4. 安装JDK
Solr5.5运行在Open JDK1.7存在BUG, 所以最好安装Oracle JDK1.7或Oracle JDK1.8
5. 安装solr5.5
到Apache官网下载solr-5.5.0.tgz安装包直接解压安装包
# tar –zxvf solr-5.5.0.tgz
自定义配置
# vim ./solr-5.5.0/bin/solr.in.sh
根据机器实际配置进行修改:
SOLR_HEAP="10G"
SOLR_JAVA_MEM="-Xms10G -Xmx10G"
ZK_HOST="uradar-solr-1:2181,uradar-solr-2:2181,uradar-solr-3:2181"
添加中文分词IKAnalyzer
将IK分词包IKAnalyzer2012FF_u2.jar拷贝到solr-5.5.0/server/solr-webapp/webapp/WEB-INF/lib目录下,在solr-5.5.0/server/solr-webapp/webapp/WEB-INF
目录下新建子目录classes, 将IKAnalyzer.cfg.xml、delimiters.dic、stopword.dic配置文件拷贝到classes目录里
修改完配置后将solr-5.5.0分发到集群中各个节点
# scp –r ./ solr-5.5.0 [email protected]:/root
将solr命令加到path路径中
# vim ~/.bash_profile
PATH=$HOME/solr-5.5.0/bin:$PATH:$HOME/bin
# source ~/.bash_profile
Solr集群中各节点执行以下命令启动Solr服务
# solr start
6. 登录Solr UI
http://172.20.13.207:8983/solr
Solr创建索引:
1.复制$SOLR_HOME/server/solr/configsets目录下的basic_configs 并且重命名为uradar_article,定义schema
#vim /home/es/solr-5.5.0/server/solr/configsets/uradar_article/conf/managed-schema
2. 创建一个collection并上传关联配置文件至Zookeeper
./bin/solr create_collection -c uradar_article -d uradar_article -shards2 -replicationFactor 3
3.如果以后要更新配置文件到Zookeeper,可以使用以下命令更新全部配置
./server/scripts/cloud-scripts/zkcli.sh -zkhost node2:2181,node1:2181,node3:2181 -cmd upconfig -confname uradar_article -confdir server/solr/configsets/uradar_article/conf
如果只更新单个文件使用putfile命令:
./server/scripts/cloud-scripts/zkcli.sh -zkhost node2:2181,node1:2181,node3:2181 -cmd putfile /solr/configs/uradar_article/schema.xml /usr/tempfiles/schema.xml
路径的前者为配置文件在Zookeeper中的存储路径,后者是配置文件的本地路径
需要注意的是如果Zookeeper中的这个文件存在需要先删除之,然后在上传更新
可以登录Zookeeper中操作:
ZK_HOME/./bin/zkCli.sh -timeout 5000 -server node3:2181
登录到Zookeeper之后可以使用命令来对配置文件删除以及其他的操作,如果不清楚配置文件在Zookeeper中的位置也可以查看
4.检测collection是否成功创建,在Solr UI中刷新页面,点击Cloud如果成功创建了Collection会显示出Solr的集群拓扑。
5. 删除索引
./bin/solr delete -c uradar_article