PNRao:
apiVersion: v1
kind: Pod
metadata:
name: hungry-bear
spec:
volumes:
- name: workdir
emptyDir: {}
containers:
- name: checker
image: busybox
command: [ " /bin/sh " , " -c " , " if [-f /workdir/faithful.txt] ; then sleep 1000; else exit 1; fi " ]
volumeMounts:
- name: workdir
mountPath: / workdir
initContainers:
- command:
- “/bin/sh”
- -c
- “touch /workdir/faithful.txt”
name: init-c
image: busybox
volumeMounts:
- name: workdir
mountPath: /workdir
KK:
Looks like there is a gap in mountPath: /workdir in your yaml (in the container section)
PNRao:
i have corrected that one
KK:
What is the error you are getting?
PNRao:
master $ k apply -f 1.yaml
pod/hungry-bear created
master $ k get po
NAME READY STATUS RESTARTS AGE
hungry-bear 0/1 Init:0/1 0 4s
master $ k get po
NAME READY STATUS RESTARTS AGE
hungry-bear 0/1 RunContainerError 0 8s
master $
PNRao:
Events:
Type Reason Age From Message
Normal Scheduled <unknown> default-scheduler Successfully assigned default/hungry-bear to node01
Normal Pulling 55s kubelet, node01 Pulling image “busybox”
Normal Pulled 53s kubelet, node01 Successfully pulled image “busybox”
Normal Created 53s kubelet, node01 Created container init-c
Normal Started 53s kubelet, node01 Started container init-c
Warning BackOff 18s kubelet, node01 Back-off restarting failed container
Normal Pulling 7s (x4 over 52s) kubelet, node01 Pulling image “busybox”
Normal Pulled 5s (x4 over 50s) kubelet, node01 Successfully pulled image “busybox”
Normal Created 5s (x4 over 50s) kubelet, node01 Created container checker
Warning Failed 5s (x4 over 50s) kubelet, node01 Error: failed to start container “checker”: Error response from daemon: OCI runtime create failed: container_linux.go:345: starting container process caused “exec: " /bin/sh ": stat /bin/sh : no such file or directory”: unknown
KK:
Looks like syntax issues in command:[]
KK:
remove spaces for /bin/sh and that will fix your “no such file or directory” issue.
" /bin/sh " ----> “/bin/sh”
Under containers section
PNRao:
Events:
Type Reason Age From Message
Normal Scheduled <unknown> default-scheduler Successfully assigned default/test to node01
Normal Pulling 17s kubelet, node01 Pulling image “busybox”
Normal Pulled 16s kubelet, node01 Successfully pulled image “busybox”
Normal Created 16s kubelet, node01 Created container init-c
Normal Started 15s kubelet, node01 Started container init-c
Normal Pulling 13s (x2 over 15s) kubelet, node01 Pulling image “busybox”
Normal Pulled 11s (x2 over 13s) kubelet, node01 Successfully pulled image “busybox”
Normal Created 11s (x2 over 13s) kubelet, node01 Created container checker
Normal Started 11s (x2 over 13s) kubelet, node01 Started container checker
Warning BackOff 9s (x2 over 10s) kubelet, node01 Back-off restarting failed container
master $ k get po
NAME READY STATUS RESTARTS AGE
test 0/1 CrashLoopBackOff 2 38s
PNRao:
apiVersion: v1
kind: Pod
metadata:
name: test
spec:
volumes:
- name: workdir
emptyDir: {}
containers:
- name: checker
image: busybox
command: [ “/bin/sh” , “-c” , "if [-f /workdir/faithful.txt]; then sleep 100000; else exit 1; fi " ]
volumeMounts:
- name: workdir
mountPath: /workdir
initContainers:
- command:
- “/bin/sh”
- -c
- “touch /workdir/faithful.txt”
name: init-c
image: busybox
volumeMounts:
- name: workdir
mountPath: /workdir
KK:
kubectl logs -f <podname>
PNRao:
master $ k logs test
/bin/sh: [-f: not found
PNRao:
apiVersion: v1
kind: Pod
metadata:
name: test
spec:
volumes:
- name: workdir
emptyDir: {}
containers:
- name: checker
image: busybox
command: [ “/bin/sh” , “-c” , "if [ -f /workdir/faithful.txt ]; then sleep 100000; else exit 1; fi " ]
volumeMounts:
- name: workdir
mountPath: /workdir
initContainers:
- command:
- “/bin/sh”
- -c
- “touch /workdir/faithful.txt”
name: init-c
image: busybox
volumeMounts:
- name: workdir
mountPath: /workdir
PNRao:
this fixed the issue…