我目前在Kubernetes3 Zookeeper服务器和6个节点上运行云SOLR6服务
出于开发目的,我最近部署了一个新的云SOLR6服务,但它需要与当前运行环境相同的模式结构,数据并不重要,因为我将手动重新填充数据
如何仅复制当前设置中运行的集合的结构/架构
发布于 2018-11-20 13:24:41
这就是如何结束这一点,我相信有一个更有效的方法来做,但这是有效的。
kubectl -it exec {{ sourcePodName }} -c {{ containerName }} bash
eg: kubectl -it exec solr-staging-0 -c solr bash
/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
kubectl cp {{ sourcePodName }}:/tmp/{{ configSetName }}/* /tmp/{{ configSetName }}
将eg: kubectl cp solr-staging-0:/tmp/connectors/* /tmp/connectors
zip -r /tmp/{{ configSetName }}/con/conf/* /tmp/{{ configSetName }}.zip
eg: zip -r /tmp/connectors/con/conf/* /tmp/connectors.zip
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
注意:这实际上是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"
https://stackoverflow.com/questions/53314389
复制相似问题