Welcome to the new Linux Foundation Forum!

Lab 5.1 - Unable to create pod using curl

rthothadrirthothadri Posts: 7
edited March 2018 in LFS258 Class Forum

[email protected]:~$ 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"

        },

...

 

[email protected]:~$ cat curlpod.json

{

    "kind": "Pod",

    "apiVersion": "v1",

    "metadata":{

        "name": "curlpod",

        "namespace": "default",

        "labels": {

            "name": "examplepod"

        }

    },

    "spec": {

        "containers": [{

            "name": "nginx",

            "image": "nginx",

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

        }]

    }

}

[email protected]:~$

[email protected]:~$ kubectl create -f curlpod.json

pod "curlpod" created

[email protected]:~$ kubectl get pods

NAME      READY     STATUS    RESTARTS   AGE

curlpod   1/1       Running   0          26s

[email protected]:~$ kubectl get deployment

No resources found.

[email protected]:~$ kubectl delete pod curlpod

pod "curlpod" deleted

[email protected]:~$ kubectl get pods

No resources found.

[email protected]:~$

 

[email protected]:~$ 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’ [email protected]

{

  "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

[email protected]:~$

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

  • serewiczserewicz Posts: 514
    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,

     

  • serewiczserewicz Posts: 514

    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,

     

  • chrispokornichrispokorni Posts: 288
    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

  • rthothadrirthothadri 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

Sign In or Register to comment.