redis-statefulset.yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: redis
namespace: default
spec:
selector:
matchLabels:
svc: redis # has to match .spec.template.metadata.labels
serviceName: redis
replicas: 3 # by default is 1
template: # pod의 사양
metadata:
labels:
svc: redis # has to match .spec.selector.matchLabels
spec:
containers:
- name: redis
image: redis
ports:
- containerPort: 6397
volumeMounts:
- name: data
mountPath: /data
volumeClaimTemplates: # persistent volume 생성을 위한 template임
- metadata:
name: data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Ki
---
apiVersion: v1
kind: Service
metadata:
name: redis
spec:
type: ClusterIP
selector:
svc: redis
ports:
- port: 6379