前言
接到同事說要裝rabbitmq,
說之前在dev有裝過,但在k8s上面沒看到,
用之前前任留下的yaml,裝不起來,只好從頭開始。
正文
- 本來是想參考他的這篇,結果看到第一段說
Stop! There is a Better Way!
才知道rabbitmq有出了operator可供安裝。 - 安裝rabbitmq operator
kubectl apply -f "https://github.com/rabbitmq/cluster-operator/releases/latest/download/cluster-operator.yml"
ref. Installing RabbitMQ Cluster Operator in a Kubernetes Cluster
- 部署yaml
apiVersion: rabbitmq.com/v1beta1
kind: RabbitmqCluster
metadata:
name: dev-rabbitmq
spec:
replicas: 3
rabbitmq:
additionalConfig: |
default_user=admin
default_pass=abc123
service:
type: NodePort
因為是自建的k8s,沒有lb,所以就用NodePort了。
更詳細的參數請參考下面連結。
ref. Using RabbitMQ Cluster Kubernetes Operator
問題排除
中間有發生小插曲,k8s內沒有預設的storeageClass
導致建立pvc時發生錯誤,
雖然在上面的yaml上面能夠指定,
但可能是格式沒寫好,導致沒有產生statefuleSet 的pvc。
最後先指定目前的storageClass為預設的。
kubectl patch storageclass <your_storageclass_name> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
ref.
0 意見:
張貼留言