aiproxy-redis.yaml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. apiVersion: v1
  2. kind: ServiceAccount
  3. metadata:
  4. labels:
  5. sealos-db-provider-cr: {{.Values.redis.name}}
  6. app.kubernetes.io/instance: {{.Values.redis.name}}
  7. app.kubernetes.io/managed-by: kbcli
  8. name: {{.Values.redis.name}}
  9. namespace: {{.Release.Namespace}}
  10. ---
  11. apiVersion: rbac.authorization.k8s.io/v1
  12. kind: Role
  13. metadata:
  14. labels:
  15. sealos-db-provider-cr: {{.Values.redis.name}}
  16. app.kubernetes.io/instance: {{.Values.redis.name}}
  17. app.kubernetes.io/managed-by: kbcli
  18. name: {{.Values.redis.name}}
  19. namespace: {{.Release.Namespace}}
  20. rules:
  21. - apiGroups:
  22. - '*'
  23. resources:
  24. - '*'
  25. verbs:
  26. - '*'
  27. ---
  28. apiVersion: rbac.authorization.k8s.io/v1
  29. kind: RoleBinding
  30. metadata:
  31. labels:
  32. sealos-db-provider-cr: {{.Values.redis.name}}
  33. app.kubernetes.io/instance: {{.Values.redis.name}}
  34. app.kubernetes.io/managed-by: kbcli
  35. name: {{.Values.redis.name}}
  36. namespace: {{.Release.Namespace}}
  37. roleRef:
  38. apiGroup: rbac.authorization.k8s.io
  39. kind: Role
  40. name: {{.Values.redis.name}}
  41. subjects:
  42. - kind: ServiceAccount
  43. name: {{.Values.redis.name}}
  44. namespace: {{.Release.Namespace}}
  45. ---
  46. apiVersion: apps.kubeblocks.io/v1alpha1
  47. kind: Cluster
  48. metadata:
  49. labels:
  50. clusterdefinition.kubeblocks.io/name: redis
  51. clusterversion.kubeblocks.io/name: {{ .Values.redis.version }}
  52. name: {{.Values.redis.name}}
  53. namespace: {{.Release.Namespace}}
  54. spec:
  55. affinity:
  56. nodeLabels: {}
  57. podAntiAffinity: Preferred
  58. tenancy: SharedNode
  59. topologyKeys:
  60. - kubernetes.io/hostname
  61. backup:
  62. cronExpression: {{.Values.redis.backup.cron}}
  63. enabled: true
  64. method: dump
  65. pitrEnabled: true
  66. retentionPeriod: {{.Values.redis.backup.retentionPeriod}}
  67. clusterDefinitionRef: redis
  68. clusterVersionRef: {{ .Values.redis.version }}
  69. componentSpecs:
  70. - componentDefRef: redis
  71. monitor: true
  72. name: redis
  73. replicas: {{ .Values.redis.replicas }}
  74. resources: {{ toYaml .Values.redis.resources | nindent 8 }}
  75. serviceAccountName: {{.Values.redis.name}}
  76. switchPolicy:
  77. type: Noop
  78. volumeClaimTemplates:
  79. - name: data
  80. spec:
  81. accessModes:
  82. - ReadWriteOnce
  83. resources:
  84. requests:
  85. storage: {{ .Values.redis.storage }}
  86. {{- if gt (int .Values.redis.sentinelReplicas) 0 }}
  87. - componentDefRef: redis-sentinel
  88. monitor: true
  89. name: redis-sentinel
  90. replicas: {{ .Values.redis.sentinelReplicas }}
  91. resources: {{ toYaml .Values.redis.sentinelResources | nindent 8 }}
  92. serviceAccountName: {{.Values.redis.name}}
  93. switchPolicy:
  94. type: Noop
  95. volumeClaimTemplates:
  96. - name: data
  97. spec:
  98. accessModes:
  99. - ReadWriteOnce
  100. resources:
  101. requests:
  102. storage: {{ .Values.redis.storage }}
  103. {{- end }}
  104. terminationPolicy: Delete