solr版本:4.5.1
1、搭建solrCloud
搭建参照这个网址: http://blog.iyunv.com/a221133/article/details/11819483
官网:h http://wiki.apache.org/solr/SolrTomcat
http://wiki.apache.org/solr/SolrCloud
最后修改solr.xml
<solr>
<solrcloud>
<str name="host">${host:}</str>
<int name="hostPort">7080</int>
<str name="hostContext">${hostContext:solr}</str>
<int name="zkClientTimeout">${zkClientTimeout:15000}</int>
<bool name="genericCoreNodeNames">${genericCoreNodeNames:true}</bool>
<str name="zkHost">192.168.1.2:2181</str>
</solrcloud>
<shardHandlerFactory name="shardHandlerFactory"
class="HttpShardHandlerFactory">
<int name="socketTimeout">${socketTimeout:0}</int> http://
<int name="connTimeout">${connTimeout:0}</int>
</shardHandlerFactory>
</solr>
更多可参考资料:https://cwiki.apache.org/confluence/display/solr/SolrCloud
collection管理:https://cwiki.apache.org/confluence/display/solr/Collections+API
core管理:https://cwiki.apache.org/confluence/display/solr/CoreAdminHandler+Parameters+and+Usage
2、创建多core
可以通过Web见面,也可以通过命令创建
常用命令:
创建core:curl 'http://192.168.1.2:9080/solr/admin/cores?action=CREATE&name=c6&instanceDir=/home/hadoop/solr_lu/solr/c6/&dataDir=/home/hadoop/solr_lu/solr/c6/data/&collection=collection1&shard=shard2'
加载core: curl 'http://192.168.1.2:9080/solr/admin/cores?action=LOAD&core=c6'
卸载core: curl 'http://192.168.1.2:9080/solr/admin/cores?action=UNLOAD&core=c6&deleteIndex=true'
查看集群的Cloud data:curl 'http://172.16.4.213:9080/solr/zookeeper?wt=json&detail=true&path=%2Fclusterstate.json'
更多详细可参考官网:http://wiki.apache.org/solr/CoreAdmin
3、日志
默认情况下,solr的日志是瞬时的,tomcat重启后,就消失了。可以通过图形化界面http://ip:port/solr/#/~logging查看,在linux命令行下可以通过命令curl 'http://ip:port/solr/admin/info/logging?wt=json&since=0'获取。
生成持久日志的方法:
1)、将solr-4.5.1\example\lib\ext 下面的jar包放到 solr-4.5.1.war里边的WEB-INF\lib下面,因为从 solr4开始,日志的jar被分离出来放到solr-4.5.1\example\lib\ext里边了
2)、在solr-4.5.1.war的WEB-INF下 建 classes 目录,在该目录创建文件 log4j.properties,log4j.properties的样例如下(日志级别、日志路径可自定义): # Logging level
log4j.rootLogger=WARN, file
#- size rotation with log cleanup.
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.MaxFileSize=4MB
log4j.appender.file.MaxBackupIndex=9
#- File to log to and log format
log4j.appender.file.File=logs/solr.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%-5p - %d{yyyy-MM-dd HH:mm:ss.SSS}; %C; %m\n官网参考链接:http://wiki.apache.org/solr/SolrLogging
4、常见问题
1)集群分派不正常时,需删除Zookeeper中配置文件,删除方法: [iyunv@hadoop solr2]# zkCli.sh -server 192.168.1.2:2181
[zk: 192.168.1.2:2181(CONNECTED) 0] ls /
[configs, hbase, zookeeper, clusterstate.json, aliases.json, live_nodes, overseer, overseer_elect, collections]
[zk: 192.168.1.2:2181(CONNECTED) 1] rmr /configs
[zk: 192.168.1.2:2181(CONNECTED) 2] rmr /clusterstate.json
[zk: 192.168.1.2:2181(CONNECTED) 3] rmr /aliases.json
[zk: 192.168.1.2:2181(CONNECTED) 4] rmr /live_nodes
[zk: 192.168.1.2:2181(CONNECTED) 5] rmr /overseer
[zk: 192.168.1.2:2181(CONNECTED) 6] rmr /overseer_elect
[zk: 192.168.1.2:2181(CONNECTED) 7] rmr /collections2)Solr4.0的AdminGUI里面可以增加和删除Core,如果Shard里最后一个Core被删除了,Shard不会自动删除掉,会导致集群出错
3)Shard里面所有的Core宕机了,会导致不能继续插入新的记录,查询不受影响,个人认为应该可以插入到其它存活的Shard里面。。。
4)Core在Shard中扮演Leader还是replication由Solr内部自动协调,目前没有找到人工干预的方法
参考:http://www.solr.cc/blog/?p=99 (包含Cluster、Node、Shard、Collection、core的理解)
版权声明:本文为博主原创文章,未经博主允许不得转载。
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com