虽然不是很有技术含量的事情,主要依靠的是阅读能力,然而知识的东西还是记录一下,以备后继待查。
环境相关
1. Server:h1,h2,h3
2. OS RHEL 6.2
3. Zookeeper 3.4.6
4. Solr 5.2.1
下载相关
1. Solr 5.2.1
1 wget http://archive.apache.org/dist/lucene/solr/5.2.1/solr-5.2.1.zip
2. Zookeeper 3.4.6
1 wget http://mirror.nexcess.net/apache/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
Zookeeper安装
Quick Start https://zookeeper.apache.org/doc/trunk/zookeeperStarted.html
MultiServer https://zookeeper.apache.org/doc/trunk/zookeeperAdmin.html#sc_zkMulitServerSetup
最后在h1、h2、h3上安装并启动了Zookeeper。
SolrCloud安装
1. 在h1上解压下载的zip文件,命名为solr-5.2.1
2. 拷贝样例,作为新节点的solr-home
1 cp -r solr-5.2.1/server/solr solr-node-1
3. 在h2、h3上进行类似的操作
最后在h1、h2、h3上分别有solr-node-1、solr-node-2、solr-node-3,以及solr-5.2.1
SolrCloud启动
使用solr的zkcli.sh创建一个solr的Zookeeper路径
1 solr-5.2.1/server/scripts/cloud-scripts/zkcli.sh -zkhost h1:2181 -cmd makepath /solr
启动solr-node-1节点:-z 指定zk地址;-s 指定solr-home位置;-p 指定启动端口
1 solr-5.2.1/bin/solr -z h1:2181,h2:2181,h3:2181/solr -s solr-node-1/solr -p 8983
相应的启动其他节点;查看集群状态
1 curl "http://localhost:8983/solr/admin/collections?action=clusterstatus&wt=json"
Collection创建
1. 拷贝样例,作为配置基础
1 cp -r solr-5.2.1/server/solr/configsets/sample_techproducts_configs my_configs
2. 根据需要增加schema.xml中的field配置
3. 上传配置到Zookeeper
1 ./solr-5.2.1/server/scripts/cloud-scripts/zkcli.sh -cmd upconfig -zkhost h1:2181/solr -confname my_configs -confdir ~/zrss/my_configs/conf/
4. 将配置与Collection链接
./solr-5.2.1/server/scripts/cloud-scripts/zkcli.sh -cmd linkconfig -collection my_configs -confname my_configs -z h1:2181/solr
相关文档
https://cwiki.apache.org/confluence/display/solr/Using+ZooKeeper+to+Manage+Configuration+Files
https://cwiki.apache.org/confluence/display/solr/Command+Line+Utilities
5. 创建Collection
curl "http://localhost:8983/solr/admin/collections?action=CREATE&name=demo_collection&numShards=2&replicationFactor=2&configName=my_configs"
过程中学习到的几个常用linux命令
查看端口被进程占用情况
lsof -i:PORT
查看进程启动位置
lsof -p PID | grep cwd
查看进程占用的端口号
netstat –nltp | grep PID