使用Azure Fileshare的RabbitMQ持久性


使用azure fileShare作为rabbit卷的存储时,RabbitMQ无法启动。它抛出错误

Cookie file /var/lib/rabbitmq/.erlang.cookie must be accessible by owner only

我不能做chmod 400 /var/lib/rabbitmq/.erlang.cookie,因为吊舱在开始前就崩溃了。

有人有类似的问题吗?

下面是我的清单文件。

apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-azure-file-static-mi
labels:
app.kubernetes.io/name: csi-test
spec:
capacity:
storage: 1Gi
accessModes:
- ReadWriteMany
csi:
driver: file.csi.azure.com
readOnly: false    
volumeHandle: csi-test-109222 
volumeAttributes:
resourceGroup: RG
storageAccount: test
shareName: bob3
mountOptions:
- dir_mode=0777
- file_mode=0777
- uid=1000
- gid=1000
- mfsymlinks
- nobrl
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-azure-file-static-mi
labels:
app.kubernetes.io/name: csi-test
spec:
accessModes:
- ReadWriteMany
storageClassName: ""
volumeName: pv-azure-file-static-mi
resources:
requests:
storage: 1Gi
---
apiVersion: v1
kind: Service
metadata:
name: rabbit
labels:
app: rabbit
name: rabbit
spec:
type: NodePort
ports:
- port: 15672
targetPort: 15672
selector:
app: rabbit
name: rabbit
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: rabbit
labels:
app: rabbit
name: rabbit
spec:
replicas: 1
selector:
matchLabels:
app: rabbit
name: rabbit
template:
metadata:
labels:
app: rabbit
name: rabbit
spec:
hostname: rabbit
containers:
- name: rabbit
image: rabbitmq:3.8.0-management
imagePullPolicy: Always
ports:
- name: http
containerPort: 15672
protocol: TCP
- name: amqp
containerPort: 5672
protocol: TCP
resources:
limits:
cpu: 1
memory: 1024Mi
requests:
cpu: 200m
memory: 512Mi
volumeMounts:
- name: volume
mountPath: "/var/lib/rabbitmq"
volumes:
- name: volume
persistentVolumeClaim:
claimName: pvc-azure-file-static-mi

记录

Cookie文件/var/lib/rabitmq/.elang.Cookie必须由访问仅所有者2022-03-10 06:55:02.847364+00:00[erro]<0.143.0>
主管:{local,net_sup}2022-03-10 06:55:02.847364+00:00[erro]<0.143.0>errorContext:start_error 2022-03-1006:55:02.847364+00:00[erro]<0.143.0>原因:Cookie文件/var/lib/rabbitmq/.elang.cookie必须只能由所有者访问";,2022-03-10 06:55:02.847364+00:00[erro]<0.143.0>
[{auth,init_no_setcookie,0,[{file,"auth.ell"},{line,293}]},2022-03-1006:55:02.847364+00:00[erro]<0.143.0>
{auth,init,1,[{file,"auth.ell"},{line,144}]},2022-03-1006:55:02.847364+00:00[erro]<0.143.0>
{gen_server,init_it,2,[{file,"gen_server.ell"},{line,423}]},2022-03-10 06:55:02.847364+00:00[erro]<0.143.0>
{gen_server,init_it,6,[{file,"gen_server.ell"},{line,390}]},2022-03-10 06:55:02.847364+00:00[erro]<0.143.0>
{proc_lib,init_p_do_apply,32022-03-10 06:55:02.847364+00:00[erro]<0.143.0>
[{file,"proc_lib.erl;},{line,226}]]}2022-03-10 06:55:02.847364+00:00[erro]<0.143.0>罪犯:〔{pid,未定义〕,2022-03-1006:55:02.847364+00:00[erro]<0.143.0>{id,auth},2022-03-10 06:55:02.847364+00:00[erro]<0.143.0>
{mfargs,{auth,start_link,[]}},2022-03-10 06:55:02.847364+00:00[erro]<0.143.0>{restart_type,永久},2022-03-1006:55:02.847364+00:00[erro]<0.143.0>
{显著,错误},2022-03-10 06:55:02.847364+00:00[erro]<0.143.0>{shutdown,2000},2022-03-10 06:55:02.847364+00:00[erro]<0.143.0>
{child_type,worker}]2022-03-10 06:55:02.847364+00:00[erro]<0.143.0>2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>不速之客:2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>初始呼叫:auth:init/1 2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>pid:<0.145.0>2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>
registered_name:[]2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>异常错误:";Cookie文件/var/lib/rabitmq/.elang.Cookie必须是只有所有者才能访问";2022-03-10 06:55:02.847486+00:00[错误]<0.145.0>在函数auth:init_no_setcookie/0(auth.erl,行293(2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>随时待命来自auth:init/1(auth.erl,第144行(2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>在来自gen_server的调用中:init_it/2(gen_server.ell,第423行(2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>在来自gen_server:init_it/6(gen_server.ell,第390行(2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>
祖先:[net_sup,kernel_sup,<0.47.0>]2022-03-1006:55:02.847486+00:00[erro]<0.145.0>message_queue_len:02022-03-10 06:55:02.847486+00:00[erro]<0.145.0>消息:[]2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>链接:[lt;0.143.0>]2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>
字典:[]2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>
trap_exit:true 2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>
状态:运行2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>
heap_size:610 2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>
stack_size:29 2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>
减少:2022 2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>
邻居:2022-03-10 06:55:02.847486+00:00[erro]<0.145.0>2022-03-10 06:55:02.855931+00:0[erro]<0.130.0>2022-03-1006:55:02.855931+00:0[erro]<0.130.0>引导失败2022-03-1006:55:02.855931+00:0[erro]<0.130.0>==============2022-03-1006:55:02.855931+00:0[erro]<0.130.0>启动过程中出现异常:2022-03-10 06:55:02.855931+00:0[erro]<0.130.0>

v3.8.0切换到rabbitMQ版本v3.9.9并安装/var/lib/rabbitmq/mnesia而不是/var/lib/rabbitmq解决了我在Azure中将rabbitMQ卷安装到文件共享的问题。

最新更新