1.下载Solr(可官网下载最新版)

wget https://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/7.1.0/solr-7.1.0.zip

2.解压

unzip solr-7.1.0.zip

3.安装


mkdir -p /opt/solr-7.1.0/installation/
mkdir -p /opt/solr-7.1.0/installation/
cd solr-7.1.0/bin
./install_solr_service.sh /opt/solr-7.1.0.zip -d /opt/solr-7.1.0/data/ -i /opt/solr-7.1.0/installation/ -p 8080 -s solr -u solr

-d solr数据数据目录,比如存放logs,pid文件,core目录等等。默认在/var/solr
-i solr程序安装目录,默认在/opt。安装目录必须先创建好。
-p 执行solr绑定的端口,默认是8983端口。
-s solr服务的名称,默认是solr。可以指定别的,比如上面的 lcsolr
-u solr服务运行或者solr文件拥有者的用户,默认是solr。也只可以指定别的,如果指定的不存在怎会先创建相关用户
-n solr安装完毕之后不启动solr服务

安装完成后可以用service solr status查看运行情况,浏览器打开http://ip:8080查看运行结果

4.给服务添加登录权限:默认solr是通过http://ip:8080直接打开,这样不是很安全,我们需要加个用户名和密码做权限验证。

  • cd solr-7.1.0/installation/solr/server/etc && vi role.properties,内容如下:#
    # 这个文件定义用户名,密码和角色
    #
    # 格式如下
    # : [, …]
    #
    #userName: password,role
    test: 123,admin
  • cd solr-7.1.0/installation/solr/server/contexts && vi solr-jetty-context.xml,文件中插入安全处理程序设置标签
    <!-- 安全处理程序设置 -->
      <Get name="securityHandler">
        <Set name="loginService">
          <New class="org.eclipse.jetty.security.HashLoginService">
            <Set name="name">Role</Set>
            <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/role.properties</Set>
          </New>
        </Set>
      </Get>
    
  • cd solr-7.1.0/installation/solr/server/solr-webapp/webapp/WEB-INF && vi web.xml,文件中插入标签
    <!-- Rule -->
      <security-constraint>
        <web-resource-collection>
          <web-resource-name>Solr</web-resource-name>
          <url-pattern>/</url-pattern>
        </web-resource-collection>
        <auth-constraint>
          <role-name>admin</role-name><!-- 验证的角色,别写成用户名,如有多个角色可以写多个role-name 标签-->
        </auth-constraint>
      </security-constraint>
      <login-config>
        <auth-method>BASIC</auth-method>
        <realm-name>Role</realm-name>
      </login-config>
    

5.新建一个core

cd /opt/solr-7.1.0/data/data
mkdir -p station_snapshot/data
mkdir -p station_snapshot/conf
cd station_snapshot/conf
cp /opt/solr-7.1.0/installation/solr-7.1.0/server/solr/configsets/_default/conf/solrconfig.xml .
cp /opt/solr-7.1.0/installation/solr-7.1.0/server/solr/configsets/_default/conf/stopwords.txt .
cp /opt/solr-7.1.0/installation/solr-7.1.0/server/solr/configsets/_default/conf/synonyms.txt .
cp /opt/solr-7.1.0/installation/solr-7.1.0/server/solr/configsets/_default/conf/managed-schema schema.xml

schema.xml里定义了字段类型和字段,可以根据需要自行修改
6.打开http://ip:8080,Core Admin中Add Core