gpt4 book ai didi

kubernetes - 播客重新创建后如何保留最新队列

转载 作者:行者123 更新时间:2023-12-02 12:18:00 24 4
gpt4 key购买 nike

我正在尝试在Kubernetes中运行ActiveMQ。我想保留队列,即使在pod终止并重新创建之后也是如此。到目前为止,即使删除和重新创建Pod,我也要排队。但是,有一个陷阱,似乎是存储了先前的队列列表。

例如:我创建了3个队列a,b和c。我删除了 pods 并重新创建了 pods 。队列列表为空。然后,我继续创建队列x和y。当我删除并重新创建Pod时,它将加载队列a,b和c。如果我向其中添加队列d并重新创建pod,它会显示x和y。

我已经创建了一个configMap如下
我也在YAML文件中使用了配置映射。

kubectl create configmap amq-config-map --from-file=/opt/apache-activemq- 
5.15.6/data



apiVersion: apps/v1
kind: Deployment
metadata:
name: activemq-deployment-local
labels:
app: activemq
spec:
replicas: 1
selector:
matchLabels:
app: activemq
template:
metadata:
labels:
app: activemq
spec:
containers:
- name: activemq
image: activemq:1.0
ports:
- containerPort: 8161
volumeMounts:
- name: activemq-data-local
mountPath: /opt/apache-activemq-5.15.6/data
readOnly: false
volumes:
- name: activemq-data-local
persistentVolumeClaim:
claimName: amq-pv-claim-local
- name: config-vol
configMap:
name: amq-config-map
---
apiVersion: v1
kind: Service
metadata:
name: my-service-local
spec:
selector:
app: activemq
ports:
- port: 8161
targetPort: 8161
type: NodePort
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: amq-pv-claim-local
spec:
storageClassName: manual
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
---
kind: PersistentVolume
apiVersion: v1
metadata:
name: amq-pv-claim-local
labels:
type: local
spec:
storageClassName: manual
capacity:
storage: 3Gi
accessModes:
- ReadWriteOnce
hostPath:
path: /tmp

重新创建Pod后,我希望队列保持不变。我快到了,但是我需要一些帮助。

最佳答案

您可能会在批量声明中缺少一个设置:

kind: PersistentVolume
apiVersion: v1
metadata:
name: amq-pv-claim-local
labels:
type: local
spec:
storageClassName: manual
persistentVolumeReclaimPolicy: Retain
capacity:
storage: 3Gi
accessModes:
- ReadWriteOnce
hostPath:
path: /tmp

此外,还有一个很好的更改,即由于使用hostPath导致此操作不起作用:HostPath表示将其存储在启动了卷的服务器上。它不会随Pod的重新启动一起迁移,并且会导致PV中的异常行为。看一下使用NFS,gluster或任何其他群集文件系统将数据存储在可通用访问的路径中。

如果使用云提供商,则还可以从kubernetes进行自动磁盘挂载,因此您可以使用gcloud,AWS,Azure等为您提供存储,并在kubernetes想要的地方通过kubernetes进行挂载。

关于kubernetes - 播客重新创建后如何保留最新队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54260740/

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