Minimal Redis from Operator » Historie » Zyklus 4
Peter Pfläging, 11.04.2022 08:52
1 | 1 | Peter Pfläging | # Minimal Redis from Operator |
---|---|---|---|
2 | |||
3 | Very much new workload inside OPenShift / OKD or Kubernetes using Redis as distributed cache or session storage. |
||
4 | |||
5 | 2 | Peter Pfläging | To address this there's an operator (https://ot-container-kit.github.io/redis-operator/) |
6 | 1 | Peter Pfläging | |
7 | 4 | Peter Pfläging | It's best to use a reald redis cluster. CPU and Memory usage is typically low: |
8 | |||
9 | - Top of 0.6 CPU, 0.7 Gig memory and 6 pods |
||
10 | - Average of 0.1 CPU and less than 0.1 Gig memory |
||
11 | |||
12 | All values for a 3 count stateful set. |
||
13 | |||
14 | If you're using 1 Gig storage PVC's you're ending with 6 Gig storage consumption ;-) |
||
15 | |||
16 | ## Install |
||
17 | |||
18 | - Install the Redis operator like it's mentioned in https://ot-container-kit.github.io/redis-operator/guide/installation.html |
||
19 | - or use the Operator Tab in OpenShift / OKD |
||
20 | - or apply this YAML in OpenShift / OKD: |
||
21 | |||
22 | ```yaml |
||
23 | apiVersion: operators.coreos.com/v1alpha1 |
||
24 | kind: Subscription |
||
25 | metadata: |
||
26 | name: redis-operator |
||
27 | namespace: openshift-operators |
||
28 | spec: |
||
29 | channel: stable |
||
30 | installPlanApproval: Automatic |
||
31 | name: redis-operator |
||
32 | source: community-operators |
||
33 | sourceNamespace: openshift-marketplace |
||
34 | ``` |
||
35 | |||
36 | |||
37 | 1 | Peter Pfläging | ```yaml |
38 | apiVersion: redis.redis.opstreelabs.in/v1beta1 |
||
39 | 3 | Peter Pfläging | kind: RedisCluster |
40 | 1 | Peter Pfläging | metadata: |
41 | 3 | Peter Pfläging | name: redis-cluster |
42 | 1 | Peter Pfläging | spec: |
43 | 3 | Peter Pfläging | clusterSize: 3 |
44 | 1 | Peter Pfläging | kubernetesConfig: |
45 | image: 'quay.io/opstree/redis:v6.2.5' |
||
46 | imagePullPolicy: IfNotPresent |
||
47 | resources: |
||
48 | limits: |
||
49 | cpu: 101m |
||
50 | memory: 128Mi |
||
51 | requests: |
||
52 | cpu: 101m |
||
53 | memory: 128Mi |
||
54 | serviceType: ClusterIP |
||
55 | redisExporter: |
||
56 | enabled: false |
||
57 | image: 'quay.io/opstree/redis-exporter:1.0' |
||
58 | 3 | Peter Pfläging | redisFollower: |
59 | serviceType: ClusterIP |
||
60 | redisLeader: |
||
61 | serviceType: ClusterIP |
||
62 | 1 | Peter Pfläging | storage: |
63 | volumeClaimTemplate: |
||
64 | spec: |
||
65 | 3 | Peter Pfläging | accessModes: |
66 | - ReadWriteOnce |
||
67 | 1 | Peter Pfläging | resources: |
68 | requests: |
||
69 | storage: 1Gi |
||
70 | storageClassName: rook-ceph-block |
||
71 | ``` |