openshift_logging_es_nodeselector 在基础节点上安装 EFK

openshift_logging_es_nodeselector install EFK on infra nodes

我正在尝试在我的集群上安装 EFK,但遇到了问题。这是我的节点描述片段(okd 3.11)

metadata:
  name: okdmastertest.labtest.mycomapny.com
  selfLink: /api/v1/nodes/okdmastertest.labtest.mycomapny.com
  uid: 43905e07-7277-11e9-9beb-005056006301
  resourceVersion: '9193192'
  creationTimestamp: '2019-05-09T16:26:57Z'
  labels:
    beta.kubernetes.io/arch: amd64
    beta.kubernetes.io/os: linux
    kubernetes.io/hostname: okdmastertest.labtest.mycomapny.com
    node-role.kubernetes.io/infra: 'true'
    node-role.kubernetes.io/master: 'true'
  annotations:
    node.openshift.io/md5sum: a4305b3db4427b8d4bd21c1a11115c5d
    volumes.kubernetes.io/controller-managed-attach-detach: 'true'

在我的清单文件中,我有这些变量

all:
  children:
    etcd:
      hosts:
        okdmastertest.labtest.mycomapny.com:
    masters:
      hosts:
        okdmastertest.labtest.mycomapny.com:
    nodes:
      hosts:
        okdmastertest.labtest.mycomapny.com:
          openshift_node_group_name: node-config-master-infra
        okdnodetest1.labtest.mycomapny.com:
          openshift_node_group_name: node-config-compute
          openshift_schedulable: True
  OSEv3:
    children:
      etcd:
      masters:
      nodes:
    vars:
      {bla bla bla}
      openshift_logging_install_logging: true
      openshift_logging_es_nodeselector: 
        node-type: infra

但是当我 运行 日志记录手册是

时,我不断收到错误
fatal: [okdmastertest.labtest.mycompany.com]: FAILED! => {
    "assertion": false,
    "changed": false,
    "evaluated_to": false,
    "msg": "No schedulable nodes found matching node selector for Elasticsearch - 'node-type=infra'"
}

节点选择器的正确语法是什么,以便将 elasticsearch 放在基础设施节点上?

因为您在基础节点上使用此标签 node-role.kubernetes.io/infra: 'true' 而节点上没有标签 node-type=infra

所以你的变量需要像这样 openshift_logging_es_nodeselector={"node-role.kubernetes.io/infra": "true"}