<p>I have 3 virtual machines (VirtualBox centos 7.4) on my win10. I try to configure EFK so that I could monitor logs. I have 1master + 2nodes, master also has kubelet. </p>

<p>I follow the instructions made by <a href="https://medium.com/@timfpark/efk-logging-on-kubernetes-on-azure-4c54402459c4" rel="nofollow noreferrer">this link</a>. I did not change downloaded kubernetes/cluster/addons/fluentd-elasticsearch, </p>

<p>I did not do following since I am using cloud-specific service. </p>

<pre><code>volumeClaimTemplates:
  - metadata:
      name: elasticsearch-logging
    spec:
      accessModes: ["ReadWriteOnce"]
      storageClassName: managed-premium
      resources:
        requests:
          storage: 64Gi
</code></pre>

<p>I changed image link mostly Chinese mirror site to gcr.io. </p>

<p>In the link, it says, </p>

<blockquote>
  <p>I had one issue during my installation of Elasticsearch. For whatever
  reason, Elasticsearch did not automatically assign missing shards to a
  server, and it was necessary to shell into one of the elasticsearch
  pods and then turn on automatic shard assignment:</p>
</blockquote>

<p>I follow the instructions, </p>

<pre><code>$ kubectl exec -it elasticsearch-logging-0 -n kube-system -- /bin/bash
$ curl -XPUT 'http://elasticsearch-logging:9200/_cluster/settings' -d '{ "transient": { "cluster.routing.allocation.enable": "all" } }'
</code></pre>

<p>But I follow the instructions and got the error, status code 406.</p>

<pre><code>{“error”:”Content-Type header [application/x-www-form-urlencoded] is not supported”,”status”:406}
</code></pre>

<p>Any hints. what could I do?</p>

user84592
<p>You are missing the header. Try out this:</p>

<pre><code>curl -XPUT 'http://elasticsearch-logging:9200/_cluster/settings' -H 'Content-Type: application/json' -d '{ "transient": { "cluster.routing.allocation.enable": "all" } }'
</code></pre>
