Welcome to the Linux Foundation Forum!

Lab 5.1 - Unable to create pod using curl

rthothadri
rthothadri Posts: 7
edited March 2018 in LFS258 Class Forum

oracle@k8-node1a:~$ curl --cert ./client.pem \

> --key ./client-key.pem \

> --cacert ./ca.pem \

> https://10.128.0.4:6443/api/v1/pods

{

  "kind": "PodList",

  "apiVersion": "v1",

  "metadata": {

    "selfLink": "/api/v1/pods",

    "resourceVersion": "45460"

  },

  "items": [

    {

      "metadata": {

        "name": "etcd-k8-node1a",

        "namespace": "kube-system",

        "selfLink": "/api/v1/namespaces/kube-system/pods/etcd-k8-node1a",

        "uid": "79c83398-1ba9-11e8-8e4f-42010a800004",

        "resourceVersion": "43839",

        "creationTimestamp": "2018-02-27T10:32:14Z",

        "labels": {

          "tier": "control-plane",

          "component": "etcd"

        },

...

 

oracle@k8-node1a:~$ cat curlpod.json

{

    "kind": "Pod",

    "apiVersion": "v1",

    "metadata":{

        "name": "curlpod",

        "namespace": "default",

        "labels": {

            "name": "examplepod"

        }

    },

    "spec": {

        "containers": [{

            "name": "nginx",

            "image": "nginx",

            "ports": [{"containerPort": 80}]

        }]

    }

}

oracle@k8-node1a:~$

oracle@k8-node1a:~$ kubectl create -f curlpod.json

pod "curlpod" created

oracle@k8-node1a:~$ kubectl get pods

NAME      READY     STATUS    RESTARTS   AGE

curlpod   1/1       Running   0          26s

oracle@k8-node1a:~$ kubectl get deployment

No resources found.

oracle@k8-node1a:~$ kubectl delete pod curlpod

pod "curlpod" deleted

oracle@k8-node1a:~$ kubectl get pods

No resources found.

oracle@k8-node1a:~$

 

oracle@k8-node1a:~$ curl --cert ./client.pem --key ./client-key.pem --cacert ./ca.pem https://10.128.0.4:6443/api/v1/namespaces/default/pods -XPOST -H’Content-Type: application/json’ -d@curlpod.json

{

  "kind": "Status",

  "apiVersion": "v1",

  "metadata": {

  },

  "status": "Failure",

  "message": "the body of the request was in an unknown format - accepted media types include: application/json;stream=watch, application/vnd.kubernetes.protobuf;stream=watch",

  "reason": "UnsupportedMediaType",

  "code": 415

}curl: (6) Could not resolve host: application

oracle@k8-node1a:~$

Hi,

I'm able to use curl command successfully.

I'm able to create the pod successfully using the json file.

But, I'm not able to use the above curl command to create the Pod.

Could you please confirm if there is a problem with the json file or the curl command?

Regards,

Ram

Comments

  • serewicz
    serewicz Posts: 1,000
    edited March 2018

    Hello,

    I will check it out and see if I get the same error. Please check there are no tabs, but whitespace in the .json file.

    Regards,

     

  • serewicz
    serewicz Posts: 1,000

    Hello again,

    When you copy and pasted from the PDF the single quotes did not paste correctly. After the -H in the curl command it should be 'Content-Type: application/json'. They look similar, but this is a typical issue with PDF copy/paste. Please edit to ensure they are single quotes and try again. Let us know if you continue to have issues. After I changed to single quotes it just worked for me, there could be other typos involved. 

    Regards,

     

  • chrispokorni
    chrispokorni Posts: 2,362
    edited March 2018

    The solution mentioned by serewicz worked for me too, and the whitespace is also important in your file. I remeber having the same issues because of the curly single quotes from PDFs, and improperly formatted json/yaml files. Every time I copy text from a PDF that contains single quotes, I replace them immediately because most times they are the curly kind which cause errors. They come up a few times in the labs, so I recommend a thorough check before pasting it into the terminal. 

    -Chris

  • rthothadri
    rthothadri Posts: 7
    edited March 2018

    Thanks Serewics & Chris! Yes, changing the back quotes to single quotes in the curl command resolve the issue.

    Regards,

    Ram

Categories

Upcoming Training