• kubernetes部署rocketmq集群


    一、添加rocketmq仓库

    1. # helm repo add rocketmq https://helm-charts.itboon.top/rocketmq
    2. # helm repo up
    3. # helm search repo rocketmq
    4. # helm pull rocketmq/rocketmq-cluster --version 11.4.0
    5. # tar -zxf rocketmq-cluster-11.4.0.tgz

    二、修改value值

    这里面需要根据自己的实际情况修改内存大小。

    修改存储类及镜像仓库。

    1. # cat values.yaml
    2. clusterName: "rocketmq-helm"
    3. nameOverride: rocketmq
    4. image:
    5. repository: "192.168.2.51/new_kyc/rocketmq"
    6. pullPolicy: IfNotPresent
    7. tag: "5.2.0"
    8. broker:
    9. size:
    10. master: 2
    11. replica: 1
    12. master:
    13. brokerRole: ASYNC_MASTER
    14. jvm:
    15. maxHeapSize: 1024M
    16. # javaOptsOverride: ""
    17. resources:
    18. limits:
    19. cpu: 4
    20. memory: 4Gi
    21. requests:
    22. cpu: 200m
    23. memory: 2Gi
    24. replica:
    25. jvm:
    26. maxHeapSize: 1300M
    27. # javaOptsOverride: ""
    28. resources:
    29. limits:
    30. cpu: 4
    31. memory: 4Gi
    32. requests:
    33. cpu: 50m
    34. memory: 2Gi
    35. persistence:
    36. enabled: true
    37. size: 20Gi
    38. storageClass: "nfs-storage"
    39. aclConfigMapEnabled: false
    40. aclConfig: |
    41. globalWhiteRemoteAddresses:
    42. - '*'
    43. - 10.*.*.*
    44. - 192.168.*.*
    45. config:
    46. ## brokerClusterName brokerName brokerRole brokerId 由内置脚本自动生成
    47. deleteWhen: "04"
    48. fileReservedTime: "48"
    49. flushDiskType: "ASYNC_FLUSH"
    50. waitTimeMillsInSendQueue: "1000"
    51. # aclEnable: true
    52. affinityOverride: {}
    53. tolerations: []
    54. nodeSelector: {}
    55. ## broker.readinessProbe
    56. readinessProbe:
    57. tcpSocket:
    58. port: main
    59. initialDelaySeconds: 20
    60. periodSeconds: 10
    61. timeoutSeconds: 5
    62. failureThreshold: 3
    63. nameserver:
    64. replicaCount: 2
    65. jvm:
    66. maxHeapSize: 1300M
    67. # javaOptsOverride: ""
    68. resources:
    69. limits:
    70. cpu: 2
    71. memory: 4Gi
    72. ephemeral-storage: 8Gi
    73. requests:
    74. cpu: 100m
    75. memory: 2Gi
    76. ephemeral-storage: 1Gi
    77. persistence:
    78. enabled: false
    79. size: 8Gi
    80. storageClass: "nfs-storage"
    81. affinityOverride: {}
    82. tolerations: []
    83. nodeSelector: {}
    84. ## nameserver.readinessProbe
    85. readinessProbe:
    86. tcpSocket:
    87. port: main
    88. initialDelaySeconds: 20
    89. periodSeconds: 10
    90. timeoutSeconds: 5
    91. failureThreshold: 3
    92. proxy:
    93. enabled: true
    94. replicaCount: 2
    95. jvm:
    96. maxHeapSize: 1300M
    97. # javaOptsOverride: ""
    98. resources:
    99. limits:
    100. cpu: 2
    101. memory: 4Gi
    102. requests:
    103. cpu: 100m
    104. memory: 2Gi
    105. affinityOverride: {}
    106. tolerations: []
    107. nodeSelector: {}
    108. ## proxy.readinessProbe
    109. readinessProbe:
    110. tcpSocket:
    111. port: main
    112. initialDelaySeconds: 20
    113. periodSeconds: 10
    114. timeoutSeconds: 5
    115. failureThreshold: 3
    116. ## proxy.service
    117. service:
    118. annotations: {}
    119. type: ClusterIP
    120. dashboard:
    121. enabled: true
    122. replicaCount: 1
    123. image:
    124. repository: "apacherocketmq/rocketmq-dashboard"
    125. pullPolicy: IfNotPresent
    126. tag: "1.0.0"
    127. auth:
    128. enabled: true
    129. users:
    130. - name: admin
    131. password: admin
    132. isAdmin: true
    133. - name: user01
    134. password: userPass
    135. jvm:
    136. maxHeapSize: 600M
    137. resources:
    138. limits:
    139. cpu: 1
    140. memory: 2Gi
    141. requests:
    142. cpu: 20m
    143. memory: 1Gi
    144. ## dashboard.readinessProbe
    145. readinessProbe:
    146. failureThreshold: 5
    147. httpGet:
    148. path: /
    149. port: http
    150. livenessProbe: {}
    151. service:
    152. annotations: {}
    153. type: ClusterIP
    154. # nodePort: 31007
    155. ingress:
    156. enabled: false
    157. className: ""
    158. annotations: {}
    159. # nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,124.160.30.50
    160. hosts:
    161. - host: rocketmq-dashboard.example.com
    162. tls: []
    163. # - secretName: example-tls
    164. # hosts:
    165. # - rocketmq-dashboard.example.com

    三、运行

    1. # helm upgrade --install rocketmq --namespace rocketmq \
    2. > --create-namespace \
    3. > . -f values.yaml
    4. Release "rocketmq" does not exist. Installing it now.
    5. NAME: rocketmq
    6. LAST DEPLOYED: Fri Jul 12 09:45:01 2024
    7. NAMESPACE: rocketmq
    8. STATUS: deployed
    9. REVISION: 1
    10. TEST SUITE: None
    11. NOTES:
    12. >>> Nameserver Address:
    13. rocketmq-nameserver.rocketmq:9876
    14. >>> Proxy Remoting Address:
    15. rocketmq-proxy.rocketmq:8080
    16. >>> Proxy gRPC Address:
    17. rocketmq-proxy.rocketmq:8081
    18. >>> RocketMQ Dashboard Auth:
    19. username: admin password: admin
    20. username: user01 password: userPass
    21. Modify "rocketmq-dashboard-cm" configmap to change the password

    四、注意

    这里的镜像我是单独下载的,然后推向自己的私有仓库。

    1. # docker pull dhub.kubesre.xyz/apache/rocketmq:5.2.0
    2. # docker tag dhub.kubesre.xyz/apache/rocketmq:5.2.0 192.168.2.51/new_kyc/rocketmq:5.2.0
    3. # docker push 192.168.2.51/new_kyc/rocketmq:5.2.0

    如果需要访问,就直接修改service的type: ClusterIP为type: NodePort

    账号密码都在values.yaml文件中

  • 相关阅读:
    【MySQL入门实战1】-数据库三大范式
    vue组件间的通讯方式
    There are test failures.【非常详细,已解决】
    鸿蒙OpenHarmony多线程能力场景化示例实践
    【Jenkins】win 10 / win 11:Jenkins 的下载、安装、部署(Jenkins 2.365 基于 Java 17)
    第一篇-专题说明及当前进度
    【Python基础篇018】类的进阶知识点
    Leetcode刷题详解——解码方法
    ANSYS mechanical如何在Workbench环境中使用高性能计算
    Java EE初阶---多线程(基础)
  • 原文地址:https://blog.csdn.net/tingting0119/article/details/140370261