首页 > 解决方案 > K8s集成EFK,状态码406被抛出

问题描述

我的 win10 上有 3 台虚拟机(VirtualBox centos 7.4)。我尝试配置 EFK 以便我可以监控日志。我有 1master + 2nodes,master 也有 kubelet。

我按照此链接的说明进行操作。我没有更改下载的 kubernetes/cluster/addons/fluentd-elasticsearch,

由于我使用的是特定于云的服务,因此我没有进行跟踪。

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

我将图像链接主要是中国镜像站点更改为 gcr.io。

在链接中,它说,

我在安装 Elasticsearch 时遇到了一个问题。无论出于何种原因,Elasticsearch 都不会自动将丢失的分片分配给服务器,因此必须将 shell 放入其中一个 elasticsearch pod,然后打开自动分片分配:

我按照指示,

$ 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" } }'

但是我按照说明进行操作并收到错误,状态码 406。

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

任何提示。我能做什么?

标签: kubernetesefk

解决方案


您缺少标题。试试这个:

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

推荐阅读