一、基础环境配置 1. 网络配置 (所有节点)公司之前做电商项目的时候,需要根据关键字来搜索商品,需要部署搜索引擎来实现。代码交付的时候发现sorl是单机版的,为了满足生产高可用的要求,于是部署sorl集群来实现。
#修改主机名, 切记主机名不能出现下划线 #修改主机名(/etc/hostname): hostnamectl set-hostname node1 hostnamectl set-hostname node2 hostnamectl set-hostname node3 #修改 /etc/hosts 加入 vim /etc/hosts 172.16.12.17 node1 172.16.12.18 node2 172.16.12.19 node32. SSH免密设置 (所有节点)
ssh-keygen ssh-copy-id -i id_rsa.pub root@node.*3、配置jdk
tar zxf /root/jdk1.8.0_101.tar.gz -C /data/ echo 'export PATH=$PATH:/data/jdk1.8.0_101/bin' >>/etc/profile source /etc/profile二、配置zookeeper(node1、node2、node3) 1、解压源码包
cd /root/zookeeper-3.4.10/conf mv zoo_sample.cfg zoo.cfg cp -r zookeeper-3.4.10 /data/zookeeper2、修改配置文件
#创建 data 文件夹 和 myid 文件 mkdir /data/zookeeper/data mkdir /data/zookeeper/log echo "1" >/data/zookeeper/data/myid tickTime=2000 initLimit=15 syncLimit=5 maxClientCnxns=150 autopurge.snapRetainCount=50 autopurge.purgeInterval=24 dataDir=/data/zookeeper/data dataLogDir=/data/zookeeper/log clientPort=2181 server.1=node1:5000:5100 server.2=node2:5000:5100 server.3=node3:5000:51003、把zookeeper目录复制到其他两个节点
scp -r zookeeper/ root@node2:/data/ scp -r zookeeper/ root@node3:/data/4、修改myid
#node2 echo "2" >/data/zookeeper/data/myid #node3 echo "3" >/data/zookeeper/data/myid5. 分别在每个节点上启动 zookeeper
cd /data/zookeeper/bin ./zkServer.sh start三、安装solr 1、解压安装包
mkdir /data/tomcat-solr tar zxf apache-tomcat-8.5.4.tar.gz -C /data/tomcat-solr mv apache-tomcat-8.5.4/ tomcat tar zxf solr-7.4.0.tgz -C /data/tomcat-solr/2、部署到Tomcat
#进入solr的server目录下 cd /data/tomcat-solr/solr-7.4.0/server/solr-webapp #复制文件到Tomcat cp -r webapp/ /data/tomcat-solr/tomcat/webapps/ #把solr的项目改名 cd /data/tomcat-solr/tomcat/webapps/ mv webapp/ solr3、配置solr_home
#创建solr_home存储Solr索引文件,这个目录用于存储Solr Core的数据及配置文件 mkdir /data/tomcat-solr/solr_home #解压后的Solr的server目录下有一个solr目录,把这个目录里的所有内容复制到刚刚创建的solr_home目录下: cd /data/tomcat-solr/solr-7.4.0/server/solr cp -r * /data/tomcat-solr/solr_home/4、配置Tomcat
(1)修改web.xml
#修改复制到tomcat中的Solr项目中的WEB-INF目录下的web.xml配置文件,修改solr_home路径指向我们刚刚创建的solr_home cd /data/tomcat-solr/tomcat/webapps/solr/WEB-INF #修改Solr_home路径 vim web.xmlsolr/home /data/tomcat-solr/solr_home java.lang.String
(2)去掉安全验证
(3)复制所需依赖jar包
#复制solr-7.4.0serverlibext下的所有jar包到tomcat下的webappssolrWEB-INFlib目录下 cd /data/tomcat-solr/solr-7.4.0/server/lib/ext/ cp * /data/tomcat-solr/tomcat/webapps/solr/WEB-INF/lib/ #复制solr-7.4.0serverlib下的metrics开头的5个jar到tomcat下的webappssolrWEB-INFlib目录下 cd /data/tomcat-solr/solr-7.4.0/server/lib cp metrics-* /data/tomcat-solr/tomcat/webapps/solr/WEB-INF/lib/ #复制solr-7.4.0dist 下的solr-dataimporthandler-7.4.0.jar、solr-dataimporthandler-extras-7.4.0.jar是数据导入的时候用到,看情况导入,Solr用了这么久Solr数据导入的功能还没有用到过 cd /data/tomcat-solr/solr-7.4.0/dist/ cp solr-dataimporthandler-* /data/tomcat-solr/tomcat/webapps/solr/WEB-INF/lib
(4)修改Tomcat端口号
#修改Tomcat的端口号,改不改都行,不过最好改一下,以后如果有多个Tomcat会有端口冲突的 cd /data/tomcat-solr/tomcat/conf/ vim server.xml #修改8080、8009端口号,Solr常用的端口号是8981,可以把8080改成8981,8009端口随意,这里改成8001 #修改solr_home目录下的solr.xml配置文件: cd /data/tomcat-solr/solr_home/ vim solr.xml #将主机名和端口号修改为自己的主机名和端口号, 如果主机名没有映射IP地址的话用IP地址${host:node1} ${tomcat.port:8981}
(5)为Tomcat分配指定内存
#为Tomcat分配指定大小的内存,修改tomcat-solr目录下的bin/catalina.sh cd /data/tomcat-solr/tomcat/bin/ vim catalina.sh JAVA_OPTS="-Xms2g -Xmx2g"
(6)启动Tomcat
cd /data/tomcat-solr/tomcat/bin/ sh startup.sh四、集群配置
1、复制安装目录至每个节点
scp -r tomcat-solr/ root@node2:/data/ scp -r tomcat-solr/ root@node3:/data/2、让zookeeper统一管理配置文件。需要把/conf目录上传到zookeeper
cd /data/tomcat-solr/solr-7.4.0/server/scripts/cloud-scripts ./zkcli.sh -zkhost node1:2181,node2:2181,node3:2181 -cmd upconfig -confdir /data/tomcat-solr/solr_home/configsets/sample_techproducts_configs/conf -confname myconf3、查看zookeeper中是否上传成功
cd /data/zookeeper/bin/ ./zkCli.sh4、修改tomcat/bin目录下的catalina.sh 文件,关联solr和zookeeper(所有节点)
cd /data/tomcat-solr/tomcat/bin/ vim catalina.sh JAVA_OPTS="-DzkHost=node1:2181,node2:2181,node3:2181"5、修改solr_home目录下的solr.xml配置文件:(node1、node2、node3)
cd /data/tomcat-solr/solr_home/ vim solr.xml 将主机名和端口号修改为自己的主机名和端口号 #如果主机名没有映射IP地址的话用IP地址7、启动Tomcat实例${host:node1} ${tomcat.port:8981}
cd /data/tomcat-solr/tomcat/bin/ sh startup.sh8、访问集群
http://172.16.12.17:8981/solr/index.html#/
点击页面的Collections按钮,然后就能添加
查看集群状态



