gpt4 book ai didi

elasticsearch - 将具有Elasticsearch索引的本地目录挂载到Minikube

转载 作者:行者123 更新时间:2023-12-03 00:45:48 28 4
gpt4 key购买 nike

我正在尝试将我的 Springboot应用程序与Elasticsearch 一起移动以在 minikube 上运行。
但是我想重用在Kubernetes上运行的 flex 搜索中使用本地 flex 搜索创建的现有索引。

我可以看到一些有关Persistent Volume的文档,但是找不到有关的任何信息,从而重用了本地目录上的现有索引。

有人可以建议一些有关如何在Kubernetes上挂载包含Elasticsearch索引的现有本地目录的信息。

我正在尝试使用minikube在本地运行Kubernetes集群。这是我第一次使用Kubernetes。因此,我并不熟悉它的所有方面。我正在尝试部署连接到Elasticsearch服务器的Spring Boot应用程序。

Elasticsearch Server-deployment.yaml

 apiVersion: apps/v1
kind: Deployment
metadata:
name: elasticsearch
spec:
selector:
matchLabels:
run: elasticsearch
replicas: 1
template:
metadata:
labels:
run: elasticsearch
spec:
containers:
- image: docker.elastic.co/elasticsearch/elasticsearch:6.6.1
name: elasticsearch
imagePullPolicy: IfNotPresent
env:
- name: discovery.type
value: single-node
- name: cluster.name
value: elasticsearch
ports:
- containerPort: 9300
name: nodes
- containerPort: 9200
name: client

最佳答案

尝试为Elasticsearch创建一个StatefulSet,将其用作持久体积声明(PVC)

PVC的引用链接:https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/

在有状态集合配置中,您需要像这样提及volumeMounts:

volumeMounts:
- name: elasticsearch
mountPath: /path/to/local_directory/local_indexes

这可以帮助您发现旧索引(在本地创建)以及新索引!

并且也要访问这些索引,我建议创建 Service,这也是Elasticsearch的一种负载均衡器。它将生成一个外部IP,以访问Kubernetes集群中的Elasticsearch配置和索引。您可以通过将curl应用于生成的外部IP来访问。

关于elasticsearch - 将具有Elasticsearch索引的本地目录挂载到Minikube,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61859510/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com