March 21, 2018

Lab 5.1 - Unable to create pod using curl

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

Click Here!