Issue with redis cluster?

In the task details it says the container name should be redis-contianer
image

I was able to execute the command that was given towards the end.

Now the task failed and shows the container name should be

image

Failure details
StatefulSet - Name redis-cluster container name: redis, command: ["/conf/update-node.sh", "redis-server", "/conf/redis.conf"]

@mmumshad

I got same failure message too.

@Tej-Singh-Rana can any one help or look into this issue/

Hello, @dennisjohn
Can you please share the yaml file? or It’s available in the “Review” section. Let me know.

Regards,

its was under review , then then task hit time limit and marked as failed for me

apiVersion: v1
kind: PersistentVolume
metadata:
name: redis-pv-01
spec:
storageClassName: manual
capacity:
storage: 1Gi
accessModes:
- ReadWriteOnce
hostPath:
path: “/redis01”

apiVersion: apps/v1
kind: StatefulSet
metadata:
name: redis-cluster
spec:
selector:
matchLabels:
app: redis-cluster
serviceName: “redis-cluster-service”
replicas: 6
template:
metadata:
labels:
app: redis-cluster
spec:
containers:
- name: redis-container
image: redis:5.0.1-alpine
command: [“/conf/update-node.sh”, “redis-server”, “/conf/redis.conf”]
env:
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
ports:
- containerPort: 6379
name: client
- containerPort: 16379
name: gossip
volumeMounts:
- name: conf
mountPath: /conf
readOnly: false
- name: data
mountPath: /data
readOnly: false
volumes:
- name: conf
configMap:
name: redis-cluster-configmap
defaultMode: 0755
volumeClaimTemplates:

  • metadata:
    name: data
    spec:
    accessModes: [ “ReadWriteOnce” ]
    storageClassName: “manual”
    resources:
    requests:
    storage: 1Gi

apiVersion: v1
kind: Service
metadata:
name: redis-cluster-service
spec:
selector:
app: redis-cluster
ports:
- name: client
port: 6379
targetPort: 6379
- name: gossip
port: 16379
targetPort: 16379

this person is also facing same issue

KodeKloud - Engineer (kodekloud-engineer.com)

hi @dennisjohn, sorry for the issue, this is marked pending for you, please give it an another try.

hi @Elangovan, sorry for the issue, this is marked pending for you, please give it an another try.

hi @rahul456 it working now . Thank you for the support

@rahul456 @dennisjohn

:+1: Thanks Rahul and Dennis. It is working.

Hi Dennis,

Does the Persistent volume needs to be created for each and every volume or can be done using some script ?
i did for every volume, just wanted to check if there is any other way to do it.

piVersion: v1

kind: PersistentVolume

metadata:

name: redis-pv-01

spec:

storageClassName: manual

capacity:

storage: 1Gi

accessModes:

- ReadWriteOnce

hostPath:

path: “/redis01”

apiVersion: v1

kind: PersistentVolume

metadata:

name: redis-pv-02

spec:

storageClassName: manual

capacity:

storage: 1Gi

accessModes:

- ReadWriteOnce

hostPath:

path: “/redis02”

apiVersion: v1

kind: PersistentVolume

metadata:

name: redis-pv-03

spec:

storageClassName: manual

capacity:

storage: 1Gi

accessModes:

- ReadWriteOnce

hostPath:

path: “/redis03”

I did it for each volume

thanks for the info!

hi team, please assist here, seems there is an issue while starting the statefulset as its looking for command arguments which was passed. it says no such file or directory. Kindly look into it or check if i made some mistake

There’s a button placed to verify whatever resources are created are in good shape or not.
If you are looking for configs needed to complete the challenge, here they are -

apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: redis-cluster
spec:
  selector:
    matchLabels:
      app: redis-cluster # has to match .spec.template.metadata.labels
  serviceName: "redis-cluster-service"
  replicas: 6 # by default is 1
  template:
    metadata:
      labels:
        app: redis-cluster # has to match .spec.selector.matchLabels
    spec:
      containers:
      - name: redis
        image: redis:5.0.1-alpine
        command: ["/conf/update-node.sh", "redis-server", "/conf/redis.conf"]
        env:
          - name: POD_IP
            valueFrom:
              fieldRef:
                fieldPath: status.podIP
        ports:
        - containerPort: 6379
          name: client
        - containerPort: 16379
          name: gossip
        volumeMounts:
        - name: conf
          mountPath: /conf
          readOnly: false
        - name: data
          mountPath: /data
          readOnly: false
      volumes:
      - name: conf
        configMap:
          name: redis-cluster-configmap
          defaultMode: 0755
  volumeClaimTemplates:
  - metadata:
      name: data
    spec:
      accessModes: [ "ReadWriteOnce" ]
      resources:
        requests:
          storage: 1Gi


apiVersion: v1
kind: Service
metadata:
  name: redis-cluster-service
spec:
  ports:
  - port: 6379
    name: client
    targetPort: 6379
    name: client
  - port: 16379
    name: gossip
    targetPort: 16379
    name: gossip
  clusterIP: None
  selector:
    app: redis-cluster


apiVersion: v1
kind: PersistentVolume
metadata:
  name: redis01
spec:
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: /redis01

apiVersion: v1
kind: PersistentVolume
metadata:
  name: redis02
spec:
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: /redis02

apiVersion: v1
kind: PersistentVolume
metadata:
  name: redis03
spec:
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: /redis03

apiVersion: v1
kind: PersistentVolume
metadata:
  name: redis04
spec:
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: /redis04

apiVersion: v1
kind: PersistentVolume
metadata:
  name: redis05
spec:
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: /redis05

apiVersion: v1
kind: PersistentVolume
metadata:
  name: redis06
spec:
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: /redis06