安装@SOLR7实践(一)
刚做完一个搜索引擎项目,记录一下备忘。
安装
系统部署在某运营商内网,操作系统是Linux Red Hat 6。
一、准备工作
确认所需CPU、内存、存储、操作系统、数据库和网络等各种资源(只列出相关命令不再截图了)。
- CPU
参考命令 cat /proc/version - 内存
参考命令 top - 存储
参考命令 dh -lh - 操作系统
1)版本
参考命令 cat /proc/version
2)用户
参考命令 id -u solr - 数据库
- 网络
参考命令 ssh -v -p 端口 IP地址
以上资源确认与申请的一致,下面可以开始安装了。
二、安装
按照客户对服务器的管理要求,不能使用root用户进行软件的安装配置,申请了solr用户和sudo权限。
1.JDK
1) 获取安装包
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u162-b12/0da788060d494f5095bf8624735fa2f1/jdk-8u162-linux-x64.rpm
无网络的话需将安装包拷贝到服务器。
2) 安装JDK
sudo rpm -ivh jdk-8u162-linux-x64.rpm
3) 确认JDK
java -version
2.SOLR
1) 获取安装包
wget http://mirrors.hust.edu.cn/apache/lucene/solr/7.1.0/solr-7.1.0.tgz
无网络的话需将安装包拷贝到服务器。
2) 解压安装脚本
tar zxf solr-7.1.0.tgz solr-7.1.0/bin/install_solr_service.sh --strip-components=2
3) 安装SOLR
sudo ./install_solr_service.sh solr-7.1.0.tgz
安装脚本参数所名
参数名 | 作用 | 默认值 |
---|---|---|
-d | 指定solr文件的目录 | /var/solr |
-i | 指定solr安装的目录 | /opt/ |
-p | 指定服务启动的端口 | 8983 |
-s | 指定服务的名字 | solr |
-u | 指定solr运行的用户名 | solr |
-f | 升级solr | |
-n | 安装后不启动 |
安装过程遇到过的几个坑
在测试机上用root用户安装solr7.2.1,安装成功但服务启动失败,无法通过8983端口访问管理页面
解决方法是用solr用户安装,用sudo命令获取root权限。但这个问题很可能是客户的虚拟机有限制,在另一台测试机上用root安装没问题。
在测试机上成功安装并启动solr7.2.1,但客户端无法访问
问题原因是Linux防火墙。
4) 确认SOLR
在安装solr时,没有修改默认参数,浏览器中访问 http://服务器IP:8983 出现如下页面则安装成功
5)目录所有者修改
为了后面操作方便将安装目录和文件目录的所有者改为solr
将solr的安装目录的所有者改为solr
sudo chown -R solr:solr /opt/solr
将solr的文件目录的所有者改为solr
sudo chown -R solr:solr /var/solr
6)启动项配置
sudo vi /etc/default/solr.in.sh
主要修改了以下几项
SOLR_HEAP="8g"
SOLR_JAVE_MEM="-Xms4g -Xmx4g"
#将时区修改为东8时区
SOLR_ZONE="UTF+8"
修改完后,需重启服务使其生效
sudo service solr restart
7)创建core
/opt/solr/bin/solr create -c test
创建core时遇到的几个坑
solr7.1版本在页面创建core时遇到过
Error CREATEing SolrCore 'new_core': Unable to create core [new_core] Caused by: Can't find resource 'solrconfig.xml' in classpath or '/var/solr/data/new_core'
解决方法是将/opt/solr/server/solr/configsets/_default下的conf文件夹拷贝到/var/solr/data/new_core目录,在页面再次点击"Add Core"按钮。
在页面创建core时还遇到过
Error CREATEing SolrCore 'new_core': Couldn't persist core properties to /var/solr/data/new_core/core.properties : /var/solr/data/new_core/core.properties
问题原因应该是目前所属有误,修改所属可以解决。