首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将SOLR ConfigSet转移到新集群

将SOLR ConfigSet转移到新集群
EN

Stack Overflow用户
提问于 2018-11-15 15:30:10
回答 1查看 189关注 0票数 0

我目前在Kubernetes3 Zookeeper服务器和6个节点上运行云SOLR6服务

出于开发目的,我最近部署了一个新的云SOLR6服务,但它需要与当前运行环境相同的模式结构,数据并不重要,因为我将手动重新填充数据

如何仅复制当前设置中运行的集合的结构/架构

EN

回答 1

Stack Overflow用户

发布于 2018-11-20 13:24:41

这就是如何结束这一点,我相信有一个更有效的方法来做,但这是有效的。

  1. 登录到源solr pod

kubectl -it exec {{ sourcePodName }} -c {{ containerName }} bash

eg: kubectl -it exec solr-staging-0 -c solr bash

  • Create configSet的转储文件

/opt/solr/bin/solr zk -n {{ configSetName }} -d /tmp/{{ configSetName }}/ -z {{ sourceZookeeperAddress }}:{{ zookeeperPort }}

从kubernetes pod中eg: /opt/solr/bin/solr zk -n connectors -d /tmp/connectors/ -z solr-dev.solr-staging-cluster:2181

  • Retrieve转储,方法是将其复制到本地

kubectl cp {{ sourcePodName }}:/tmp/{{ configSetName }}/* /tmp/{{ configSetName }}

eg: kubectl cp solr-staging-0:/tmp/connectors/* /tmp/connectors

  • Create内容压缩为zip文件

zip -r /tmp/{{ configSetName }}/con/conf/* /tmp/{{ configSetName }}.zip

eg: zip -r /tmp/connectors/con/conf/* /tmp/connectors.zip

  • Port转发到目标kubernetes服务器

gcloud container clusters get-credentials {{ clusterName }} --zone {{ zone }} --project {{ projectName }} && kubectl port-forward {{ podName }} 8983:8983

在目标solr集群上eg: gcloud container clusters get-credentials workflows --zone europe-west1-d --project bidvest-alice && kubectl port-forward solr-dev-0 8983:8983

  • Import您的数据集

注意:这实际上是Solr7.7import语句,但SOLR6.6命令不起作用

curl -X POST --header "Content-Type:application/octet-stream" --data-binary @/tmp/{{ configSetName }}.zip "http://localhost:8983/solr/admin/configs?action=UPLOAD&name={{ configSetName }}"

eg: cmd: curl -X POST --header "Content-Type:application/octet-stream" --data-binary @/tmp/connectors.zip "http://localhost:8983/solr/admin/configs?action=UPLOAD&name=connectors"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53314389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档