apiVersion: v1
data:
plain_acl.yml: |
globalWhiteRemoteAddresses:
- 10.*.*.*
- 172.*.*.*
- 192.168.*.*
- 168.*.*.*
accounts:
- accessKey: nfRrMNgtbtjwiEtL
secretKey: dYtg61JHegz2enae
whiteRemoteAddress: "*"
admin: true
kind: ConfigMap
metadata:
name: acl-config
namespace: mq
apiVersion: apps/v1
kind: Deployment
metadata:
name: rocketmq-admin
namespace: mq
spec:
minReadySeconds: 10
replicas: 1
revisionHistoryLimit: 5
strategy:
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
type: RollingUpdate
selector:
matchLabels:
app: rocketmq-admin
template:
metadata:
labels:
app: rocketmq-admin
spec:
containers:
- name: rocketmq-admin
image: styletang/rocketmq-console-ng
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8080
env:
- name: JAVA_OPTS
value: "-Drocketmq.config.namesrvAddr=rocketmq.mq.svc.cluster.local:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: rocketmq-admin
name: rocketmq-admin
namespace: mq
spec:
ports:
- name: rocketmq-admin
port: 8080
targetPort: 8080
selector:
app: rocketmq-admin
apiVersion: v1
data:
broker-a.properties: |
brokerClusterName=rocketmq-cluster
brokerName=broker-a
brokerId=0
deleteWhen=04
fileReservedTime=48
brokerRole=ASYNC_MASTER
flushDiskType=ASYNC_FLUSH
namesrvAddr=rocketmq-a.mq.svc.cluster.local:9876;rocketmq-b.mq.svc.cluster.local:9876
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=10911
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=300000
aclEnable=true
broker-b.properties: |
brokerClusterName=rocketmq-cluster
brokerName=broker-b
brokerId=0
deleteWhen=04
fileReservedTime=48
brokerRole=ASYNC_MASTER
flushDiskType=ASYNC_FLUSH
namesrvAddr=rocketmq-a.mq.svc.cluster.local:9876;rocketmq-b.mq.svc.cluster.local:9876
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=10911
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=300000
aclEnable=true
kind: ConfigMap
metadata:
name: broker-config
namespace: mq
apiVersion: v1
data:
users.properties: |
admin=admin@123,1
kind: ConfigMap
metadata:
name: user-config
namespace: mq
apiVersion: apps/v1
kind: Deployment
metadata:
name: rocketmq-a
labels:
app: rocketmq
version: a
namespace: mq
spec:
minReadySeconds: 10
replicas: 1
revisionHistoryLimit: 5
strategy:
type: Recreate
selector:
matchLabels:
app: rocketmq
version: a
template:
metadata:
labels:
app: rocketmq
version: a
spec:
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app
operator: In
values:
- rocketmq
topologyKey: "kubernetes.io/hostname"
containers:
- name: broker
image: docker.vimll.com:9888/root/k8s/rocketmq:v4.4.0
command: ["sh","-c","/opt/rocketmq-4.4.0/bin/mqbroker -c /opt/rocketmq-4.4.0/conf/broker-a.properties"]
imagePullPolicy: IfNotPresent
ports:
- protocol: TCP
containerPort: 10909
- protocol: TCP
containerPort: 10911
resources:
requests:
cpu: 0.5
memory: 1.5Gi
limits:
cpu: 0.5
memory: 1.5Gi
volumeMounts:
- mountPath: /root/logs
name: rocketmq-data
subPath: mq-brokeroptlogs
- mountPath: /root/store
name: rocketmq-data
subPath: mq-brokeroptstore
- name: broker-config
mountPath: /opt/rocketmq-4.4.0/conf/broker-a.properties
subPath: broker-a.properties
- name: acl-config
mountPath: /opt/rocketmq-4.4.0/conf/plain_acl.yml
subPath: plain_acl.yml
readinessProbe:
tcpSocket:
port: 10909
initialDelaySeconds: 10
periodSeconds: 5
livenessProbe:
tcpSocket:
port: 10909
initialDelaySeconds: 120
periodSeconds: 10
env:
- name: JAVA_OPTS
value: " -Duser.home=/opt"
- name: JAVA_OPT_EXT
value: "-server -Xms256m -Xmx256m -Xmn256m"
- name: MAX_POSSIBLE_HEAP
value: "4294967296"
- name: namesrv
image: docker.vimll.com:9888/root/k8s/rocketmq:v4.4.0
command: ["sh","mqnamesrv"]
imagePullPolicy: IfNotPresent
ports:
- containerPort: 9876
resources:
requests:
cpu: 0.5
memory: 1740Mi
limits:
cpu: 0.5
memory: 2048Mi
readinessProbe:
tcpSocket:
port: 9876
initialDelaySeconds: 10
periodSeconds: 5
livenessProbe:
tcpSocket:
port: 9876
initialDelaySeconds: 120
periodSeconds: 10
volumeMounts:
- mountPath: /root/logs
name: rocketmq-data
subPath: mq-namesrvoptlogs
- mountPath: /root/store
name: rocketmq-data
subPath: mq-namesrvoptstore
env:
- name: MAX_POSSIBLE_HEAP
value: "1073741824"
volumes:
- name: rocketmq-data
persistentVolumeClaim:
claimName: rocketmq-data-a
- name: broker-config
configMap:
name: broker-config
- name: acl-config
configMap:
name: acl-config
---
apiVersion: v1
kind: Service
metadata:
labels:
app: rocketmq
version: a
name: rocketmq-a
namespace: mq
spec:
ports:
- name: rocketmq-namesrv
port: 9876
targetPort: 9876
- name: rocketmq-port-10909
protocol: TCP
port: 10909
targetPort: 10909
- name: rocketmq-port-10911
protocol: TCP
port: 10911
targetPort: 10911
selector:
app: rocketmq
version: a
apiVersion: apps/v1
kind: Deployment
metadata:
name: rocketmq-b
labels:
app: rocketmq
version: b
namespace: mq
spec:
minReadySeconds: 10
replicas: 1
revisionHistoryLimit: 5
strategy:
type: Recreate
selector:
matchLabels:
app: rocketmq
version: b
template:
metadata:
labels:
app: rocketmq
version: b
spec:
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app
operator: In
values:
- rocketmq
topologyKey: "kubernetes.io/hostname"
containers:
- name: broker
image: docker.vimll.com:9888/root/k8s/rocketmq:v4.4.0
command: ["sh","-c","/opt/rocketmq-4.4.0/bin/mqbroker -c /opt/rocketmq-4.4.0/conf/broker-b.properties"]
imagePullPolicy: IfNotPresent
ports:
- protocol: TCP
containerPort: 10909
- protocol: TCP
containerPort: 10911
resources:
requests:
cpu: 0.5
memory: 1.5Gi
limits:
cpu: 0.5
memory: 1.5Gi
volumeMounts:
- mountPath: /root/logs
name: rocketmq-data
subPath: mq-brokeroptlogs
- mountPath: /root/store
name: rocketmq-data
subPath: mq-brokeroptstore
- name: broker-config
mountPath: /opt/rocketmq-4.4.0/conf/broker-b.properties
subPath: broker-b.properties
- name: acl-config
mountPath: /opt/rocketmq-4.4.0/conf/plain_acl.yml
subPath: plain_acl.yml
readinessProbe:
tcpSocket:
port: 10909
initialDelaySeconds: 10
periodSeconds: 5
livenessProbe:
tcpSocket:
port: 10909
initialDelaySeconds: 120
periodSeconds: 10
env:
- name: JAVA_OPTS
value: " -Duser.home=/opt"
- name: JAVA_OPT_EXT
value: "-server -Xms256m -Xmx256m -Xmn256m"
- name: MAX_POSSIBLE_HEAP
value: "4294967296"
- name: namesrv
image: docker.vimll.com:9888/root/k8s/rocketmq:v4.4.0
command: ["sh","mqnamesrv"]
imagePullPolicy: IfNotPresent
ports:
- containerPort: 9876
resources:
requests:
cpu: 0.5
memory: 1740Mi
limits:
cpu: 0.5
memory: 2048Mi
readinessProbe:
tcpSocket:
port: 9876
initialDelaySeconds: 10
periodSeconds: 5
livenessProbe:
tcpSocket:
port: 9876
initialDelaySeconds: 120
periodSeconds: 10
volumeMounts:
- mountPath: /root/logs
name: rocketmq-data
subPath: mq-namesrvoptlogs
- mountPath: /root/store
name: rocketmq-data
subPath: mq-namesrvoptstore
env:
- name: MAX_POSSIBLE_HEAP
value: "1073741824"
volumes:
- name: rocketmq-data
persistentVolumeClaim:
claimName: rocketmq-data-b
- name: broker-config
configMap:
name: broker-config
- name: acl-config
configMap:
name: acl-config
---
apiVersion: v1
kind: Service
metadata:
labels:
app: rocketmq
version: b
name: rocketmq-b
namespace: mq
spec:
ports:
- name: rocketmq-namesrv
port: 9876
targetPort: 9876
- name: rocketmq-port-10909
protocol: TCP
port: 10909
targetPort: 10909
- name: rocketmq-port-10911
protocol: TCP
port: 10911
selector:
app: rocketmq
version: b
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: rocketmq-data-a
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 50Gi
storageClassName: rook-ceph-block
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: rocketmq-data-b
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 50Gi
storageClassName: rook-ceph-block
---
apiVersion: v1
kind: Service
metadata:
labels:
app: rocketmq
name: rocketmq
namespace: mq
spec:
ports:
- name: rocketmq-namesrv
port: 9876
selector:
app: rocketmq