0

容器没有出现,它失败并出现以下错误。eck 是否支持弹性 6.8.8?

原因:java.lang.IllegalArgumentException:未知设置 [discovery.seed_providers] 请检查是否安装了任何必需的插件,或检查重大更改文档以了解已删除的设置

配置

apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
  name: elasticdev
  namespace: ns-4
spec:
  image: elasticsearch/elasticsearch:6.8.8
  http:
    service:
      spec:
        selector:
          common.k8s.elastic.co/type: elasticsearch
          elasticsearch.k8s.elastic.co/cluster-name: elasticdev
          elasticsearch.k8s.elastic.co/role: client       
        type:
          LoadBalancer      
  nodeSets:
  - config:
      node.data: false
      node.master: true
      node.ingest: false
      node.ml: false
    count: 1
    name: master
    podTemplate:
      metadata:
        labels:
          elasticsearch.k8s.elastic.co/role: master      
      spec:
        containers:
        - env:
          - name: ES_JAVA_OPTS
            value: -Xms1024m -Xmx1024m
          limits:
            cpu: 200m
            memory: 1Gi
          name: elasticsearch
          resources:
            requests:
              cpu: 200m
              memory: 1Gi
        nodeSelector:
          eks.amazonaws.com/nodegroup: general
    volumeClaimTemplates:
    - metadata:
        name: elasticsearch-data
      spec:
        accessModes:
        - ReadWriteOnce
        resources:
          requests:
            storage: 2Gi
        storageClassName: gp2-storageclass
  - config:
      node.data: false
      node.master: false
      node.ingest: false
      node.ml: false
      search.remote.connect: false
    count: 1
    name: client
    podTemplate:
      metadata:
        labels:
          elasticsearch.k8s.elastic.co/role: client  
      spec:
        containers:
        - env:
          - name: ES_JAVA_OPTS
            value: -Xms512m -Xmx512m
          limits:
            cpu: 200m
            memory: 1Gi
          name: elasticsearch
          resources:
            requests:
              cpu: 200m
              memory: 1Gi
        volumes:       
          - name: elasticsearch-data
            emptyDir: {}
        nodeSelector:
          eks.amazonaws.com/nodegroup: general
  - config:
      node.data: true
      node.master: false
      node.ingest: true
    count: 1
    name: data
    podTemplate:
      metadata:
        labels:
          elasticsearch.k8s.elastic.co/role: data  
      spec:
        containers:
        - env:
          - name: ES_JAVA_OPTS
            value: -Xms1024m -Xmx1024m
          limits:
            cpu: 1000m
            memory: 2Gi
          name: elasticsearch
          resources:
            requests:
              cpu: 1000m
              memory: 2Gi
        nodeSelector:
          eks.amazonaws.com/nodegroup: general
    volumeClaimTemplates:
    - metadata:
        name: elasticsearch-data
      spec:
        accessModes:
        - ReadWriteOnce
        resources:
          requests:
            storage: 3Gi
        storageClassName: gp2-storageclass
  updateStrategy:
    changeBudget:
      maxSurge: 1
      maxUnavailable: 1
  version: 6.8.8
4

2 回答 2

1

您使用的是哪个版本的 ECK?它是全新的集群还是现有集群的升级?

我尝试使用最小的 6.8.8 集群在本地重现,运行 ECK 1.0.1 时,一切正常:

apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
  name: elasticsearch-sample
spec:
  version: 6.8.8
  nodeSets:
  - name: default
    count: 3
    config:
      node.store.allow_mmap: false
于 2020-04-20T16:32:06.600 回答
1

我注意到您正在明确设置 Docker 映像。除非您使用自定义 Docker 映像或私有注册表,否则通常不需要这样做。所以我想知道您是否有可能使用自定义 Docker 映像,并且在某些时候 和 的值image没有version对齐?

再解释一下:discovery.seed_providers是一个仅存在于 Elasticsearch 7.0 及以上版本中的设置。所以我想知道您是否有可能在某个时候指定了 6.8.8 的 Docker 映像,但version属性是 7.x?然后,操作员将尝试使用与 7.x 相关的设置,您可能会看到您发布的错误。

于 2020-04-21T15:17:08.163 回答