helm部署rabbitmq
参考连接
https://www.rabbitmq.com/kubernetes/operator/install-operator.html#helm-chart
添加helm仓库
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update
拉取chart到本地
helm search repo rabbitmq -l
helm pull bitnami/rabbitmq --version 11.10.3
tar -zxf rabbitmq-11.10.3.tgz
tree ./rabbitmq
文件目录:
[root@mytest ~]# tree ./rabbitmq
./rabbitmq
├── Chart.lock
├── charts
│ └── common
│ ├── Chart.yaml
│ ├── README.md
│ ├── templates
│ │ ├── _affinities.tpl
│ │ ├── _capabilities.tpl
│ │ ├── _errors.tpl
│ │ ├── _images.tpl
│ │ ├── _ingress.tpl
│ │ ├── _labels.tpl
│ │ ├── _names.tpl
│ │ ├── _secrets.tpl
│ │ ├── _storage.tpl
│ │ ├── _tplvalues.tpl
│ │ ├── _utils.tpl
│ │ ├── validations
│ │ │ ├── _cassandra.tpl
│ │ │ ├── _mariadb.tpl
│ │ │ ├── _mongodb.tpl
│ │ │ ├── _mysql.tpl
│ │ │ ├── _postgresql.tpl
│ │ │ ├── _redis.tpl
│ │ │ └── _validations.tpl
│ │ └── _warnings.tpl
│ └── values.yaml
├── Chart.yaml
├── README.md
├── templates
│ ├── config-secret.yaml
│ ├── extra-list.yaml
│ ├── _helpers.tpl
│ ├── ingress.yaml
│ ├── init-configmap.yaml
│ ├── networkpolicy.yaml
│ ├── NOTES.txt
│ ├── pdb.yaml
│ ├── prometheusrule.yaml
│ ├── rolebinding.yaml
│ ├── role.yaml
│ ├── secrets.yaml
│ ├── serviceaccount.yaml
│ ├── servicemonitor.yaml
│ ├── statefulset.yaml
│ ├── svc-headless.yaml
│ ├── svc.yaml
│ ├── tls-secrets.yaml
│ └── validation.yaml
├── values.schema.json
└── values.yaml
5 directories, 46 files
[root@mytest ~]#
修改values.yaml
cd rabbitmq
vi values.yaml
修改内容:
# 自定义用户名、密码
auth:
username: admin
password: "123456"
...省略内容...
# 权限配置
extraConfiguration: |-
default_vhost = /
default_permissions.configure = .*
default_permissions.read = .*
default_permissions.write = .*
install rabbitmq
kubectl create ns test
helm install rabbitmq . -n test
查看pod和svc
kubectl get pod,svc -n test |grep rabbitmq
进入容器查看
[root@mytest rabbitmq]# kubectl exec -it -n test rabbitmq-0 -- /bin/bash
I have no name!@rabbitmq-0:/$ rabbitmqctl list_users
Listing users ...
user tags
admin [administrator]
I have no name!@rabbitmq-0:/$ rabbitmqctl list_permissions
Listing permissions for vhost "/" ...
user configure write read
admin .* .* .*
I have no name!@rabbitmq-0:/$
修改svc为NodePort模式
[root@mytest rabbitmq]# KUBE_EDITOR="sed -i '/type:/s/ClusterIP/NodePort/'" kubectl edit svc rabbitmq -n test
[root@mytest rabbitmq]# kubectl get pod,svc -n test |grep rabbitmq
pod/rabbitmq-0 1/1 Running 0 19m
service/rabbitmq NodePort 10.233.1.238 <none> 5672:31206/TCP,4369:30277/TCP,25672:30245/TCP,15672:31891/TCP 19m
service/rabbitmq-headless ClusterIP None <none> 4369/TCP,5672/TCP,25672/TCP,15672/TCP 19m
外部访问URL:http://192.168.58.128:31891
rabbitmqctl常用命令
# 帮助
rabbitmqctl help
# 创建用户
rabbitmqctl add_user admin 123456
# 设置权限
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
# 设置为administrator角色
rabbitmqctl set_user_tags admin administrator
# 查看用户
rabbitmqctl list_users
# 查看用户权限
rabbitmqctl list_permissions