|
2 months ago | |
---|---|---|
build | 2 years ago | |
cmd/manager | 1 year ago | |
deploy/helm_chart | 2 months ago | |
pkg | 2 months ago | |
vendor | 1 year ago | |
version | 2 months ago | |
.gitignore | 1 year ago | |
Dockerfile | 2 months ago | |
Jenkinsfile | 2 months ago | |
README.md | 2 months ago | |
go.mod | 1 year ago | |
go.sum | 1 year ago |
Kubernetes operator for RabbitMQ. Code is highly fresh, be patient.
helm repo add 21h https://charts.blindage.org
helm repo update
helm install rabbitmq-operator 21h/rabbitmq-operator -n operators
Sample CRD (whole specs see in rabbitmq_types.go):
---
apiVersion: rabbitmq.improvado.io/v1
kind: Rabbitmq
metadata:
name: imp20rabbit
spec:
replicas: 2
# set affinity and anti-affinity
affinity:
podAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: security
operator: In
values:
- S1
topologyKey: failure-domain.beta.kubernetes.io/zonei
# set rabbitmq docker image, use hub.docker.com or your own
image:
name: rabbitmq
tag: 3-alpine
# use custom names for secrets instead of default based on CRD name
# default_user, default_password and cookie is generated once at first start
#secret_credentials: rabbit-users
#secret_service_account: rabbit-service
# set vm_memory_high_watermark.absolute value
memory_high_watermark: 256M
# clusterize rabbit
k8s_host: "kubernetes.default.svc.cluster.imp"
k8s_addrtype: hostname
cluster_node_cleanup_interval: 10
cluster_formation.node_cleanup.only_log_warning: true
cluster_partition_handling: autoheal
hipe_compile: false
# PVC
volume_size: 1Gi
# disk_free_limit: 50MB
# Set custom ENV
env:
- name: VARIABLENAME
value: test
policies:
- name: ha-three
vhost: "rabbit"
pattern: ".*"
definition:
ha-mode: "exactly"
ha-params: 3
ha-sync-mode: "automatic"
priority: 0
apply-to: all
plugins:
- rabbitmq_management_agent
Default plugins:
In future: