1.redis-configmap.yaml文件如下:
apiVersion: v1
kind: ConfigMap
metadata:
name: redis-config
data:
redis-config: ""
2. redis-deployment.yaml文件如下:
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: redis
spec:
serviceName: "redis-deployment"
replicas: 2
selector:
matchLabels:
app: redis
template:
metadata:
labels:
app: redis
spec:
containers:
- name: redis
image: redis:7.2
command:
- redis-server
- "/redis-master/redis.conf"
lifecycle:
postStart:
exec:
command:
- bash
- "-c"
- |
if [[ `hostname` -ne "redis-0" ]]; then
redis-cli slaveof redis-0.redis-deployment.default.svc.cluster.local 6379
fi
env:
- name: MASTER
value: "true"
ports:
- containerPort: 6379
volumeMounts:
- mountPath: /redis-master-data
name: data
- mountPath: /redis-master
name: config
volumes:
- name: data
emptyDir: {}
- name: config
configMap:
name: redis-config
items:
- key: redis-config
path: redis.conf