Search code examples
kubectl

Kubectl get deployments shows No resources found in default namespace


I am trying my hands on Kubernetes and I tried to deploy an image into k8s service

root@KubernetesMiniKube:/usr/local/bin# kubectl run hello-minikube --image=k8s.gcr.io/echoserver:1.10 --port=8080
pod/hello-minikube created

root@KubernetesMiniKube:/usr/local/bin# kubectl get pod

NAME             READY   STATUS    RESTARTS   AGE
hello-minikube   1/1     Running   0          16s

root@KubernetesMiniKube:/usr/local/bin# kubectl get deployments

No resources found in default namespace.

Why i am seeing No resource found but actually there is a resource running inside default namespace.


Solution

  • When you are using $ kubectl run it will create a pod. In your example thats exactly what happned, it created pod, named hello-minikube.

    pod/hello-minikube created
    

    If you want to create deployment

    Deployments represent a set of multiple, identical Pods with no unique identities. A Deployment runs multiple replicas of your application and automatically replaces any instances that fail or become unresponsive.

    you can do it using command:

    $ kubectl create deployment hello-minikube --image=k8s.gcr.io/echoserver:1.10 --port=8080
    deployment.apps/hello-minikube created
    user@cloudshell:$ kubectl get deployments
    NAME             READY   UP-TO-DATE   AVAILABLE   AGE
    hello-minikube   1/1     1            1           8s
    

    You can also create deployment using YAML. Save YAML from this documentation example and use kubectl apply.

    $ vi nginx.yaml 
    
    <paste proper YAML definition. Also you can use nano editor, or download ready yaml>
    
    user@cloudshell:$ kubectl apply -f nginx.yaml
    deployment.apps/nginx-deployment created
    $ kubectl get deployments
    NAME               READY   UP-TO-DATE   AVAILABLE   AGE
    hello-minikube     1/1     1            1           3m48s
    nginx-deployment   3/3     3            3           64s
    

    Please let me know if you have further questions regarding this answer.