Solr 8.2.0 全文检索服务器 单机版与集群版 搭建

环境:

  • CentOS 7.x
  • JDK 1.8

一、单机版

1:下载

wget http://mirror.bit.edu.cn/apache/lucene/solr/8.2.0/solr-8.2.0.tgz

2:安装

# 安装到/usr/local/solr
tar zxf solr-8.2.0.tgz -C /usr/local/

3:准备工作

# 1. 导入日志
cd /usr/local/solr-8.2.0/server

# 把ext目录下的所有jar包,复制到/WEB-INF/lib下
cp -r lib/ext/*.jar solr-webapp/webapp/WEB-INF/lib

# 把resource目录下的lo4j*配置文件,复制到WEB-INF/classes/下,没有classes目录手动创建
cp resource/lo4j* solr-webapp/webapp/WEB-INF/classes/

# 2. 创建索引库
# 方法一:使用命令:solr create -c articles(官方推荐)
./solr create -c [索引库名称]

# 方法二:在/solr-8.2.0/server/solr/路径下创建文件夹articles(或任意名字)
# 再把/solr-8.2.0/server/solr/configsets/_default/conf文件夹复制到新建的articles文件夹下
# 最后在浏览器的管理页面中创建core,注意名字和上一步创建的名字一直(articles)。
# 最后在下拉列表中选中创建的分词库即可开始使用Solr分词操作。
# 由此可见分词的结果并不准确,原因是因为我们没有合适的中文分词库。

4:安装中文分词库
中文词库有两个常用的。ik-analyzer和mmeseg4j。这里使用ik-analyzer。另外此词库可以自己定义词库,例如可以用搜狗的词库。

  1. 下载Ikanalyzer7.x分词器的jar文件。下载地址
  2. 将分词库Jar包拷贝到Solr路径下:/solr-8.2.0/server/solr-webapp/webapp/WEB-INF/lib
  3. 打开 /solr-8.2.0/server/solr/articles/conf/managed-schema 文件,在文件最后添加以下代码:
    
        
            
            
        
        
          
          
        
    
    
  4. 重启Solr服务
    ./solr restart -p 8983
    
  5. 再次在浏览器中进行分词操作,可以看到结果:
  6. 至此Solr中文分词库配置完毕。

5:命令

# 进入bin目录
cd /usr/local/solr/bin/

# 启动
./solr start -force

# 如果是普通用户 不需要加 force参数
# -p 可选参数,指定port,默认8983

# 停止
./solr stop -all

# 重启
./solr restart -p 8983
# 重启需要指定端口号

二、伪集群

1:将单机版solr复制四份:8981、8982、8983、8984

# 1. 创建 solr-cloud 文件夹
cd /usr/local/
mkdir solr-cloud

# 2. 在 solr-cloud 文件夹中 创建 solr 文件夹
cd solr-cloud 
mkdir solr

# 3.把单机版的solr 复制到 solr-cloud/solr 文件夹中
cp -r /usr/local/solr/ /usr/local/solr-cloud/solr/8981/
cp -r /usr/local/solr/ /usr/local/solr-cloud/solr/8982/
cp -r /usr/local/solr/ /usr/local/solr-cloud/solr/8983/
cp -r /usr/local/solr/ /usr/local/solr-cloud/solr/8984/

2:编写solr-cloud脚本

2.1:启动;start-solr-all.sh

SOLR_CLOUD_HOME=/usr/local/solr-cloud/solr

$SOLR_CLOUD_HOME/8981/bin/solr start -force
$SOLR_CLOUD_HOME/8982/bin/solr start -force
$SOLR_CLOUD_HOME/8983/bin/solr start -force
$SOLR_CLOUD_HOME/8984/bin/solr start -force

2.2:停止;stop-solr-all.sh

SOLR_CLOUD_HOME=/usr/local/solr-cloud/solr

$SOLR_CLOUD_HOME/8981/bin/solr stop
$SOLR_CLOUD_HOME/8982/bin/solr stop
$SOLR_CLOUD_HOME/8983/bin/solr stop
$SOLR_CLOUD_HOME/8984/bin/solr stop

3:Zookeeper伪集群搭建
这里请看 博主的另一篇博客文章:Zookeeper集群搭建

4:安装中文分词库
这里的安装是跟上面的单机版安装是一样的,只需要把 jar 放到 lib 下。
修改配置文件即可。这里不在过多描述。

5:上传solr配置文件到zookeeper,统一管理

# 1. 1.使用 zkcli.sh 命令上传 , solr/server/scripts/cloud-scripts目录下
#zkhost:指定zookeeper集群
#condir: 指定要上传的文件  
#confname: 命名上传zk之后的文件
 
./zkcli.sh -zkhost 192.168.1.211:2181,192.168.1.211:2182,192.168.1.211:2183 -cmd upconfig -confdir /usr/local/soft/solr1/server/solr/configsets/_default/conf/ -confname solrconfig

# 2.登录zk客户端,查看配置文件
cd /usr/local/soft/zk1/bin   #进入zk的bin目录
./zkCli.sh                   #连接客户端

到此结束,不足之处,请指出!

你可能感兴趣的:(Solr 8.2.0 全文检索服务器 单机版与集群版 搭建)