为 Fleet 管理的数据流启用和禁用高级索引功能

编辑

为 Fleet 管理的数据流启用和禁用高级索引功能

编辑

Fleet 为其数据流提供了对多个高级功能的支持,包括

可以通过使用索引模板 API 和一些关键设置,为 Fleet 管理的数据流启用和禁用这些功能。

如果您已经使用 @custom 组件模板进行提取或保留自定义(例如,如教程:自定义数据保留策略中所示),请谨慎操作以确保在进行这些请求时不会覆盖您的自定义设置。

我们建议使用 Kibana Dev Tools 来运行以下请求。将 <NAME> 替换为给定集成数据流的名称。例如,指定 metrics-nginx.stubstatus 将导致向 _component_template/metrics-nginx.stubstatus@custom 发出 PUT 请求。使用索引管理界面来探索可供您使用的集成数据流。

在执行以下给定的请求后,您还需要执行数据流滚动,以确保任何传入的数据都立即使用您的新设置进行提取。例如

POST metrics-nginx.stubstatus-default/_rollover

请参考以下步骤来启用或禁用高级数据流功能

启用 TSDS

编辑

TSDS 使用合成 _source,因此如果要试用这两个功能,您只需要启用 TSDS。

由于 Elasticsearch API 的限制,必须在 索引模板 级别启用 TSDS。因此,您需要进行一些顺序请求来启用或禁用 TSDS。

  1. 发送 GET 请求以检索索引模板

    GET _index_template/<NAME>
  2. 使用从 GET 请求返回的 JSON 有效负载来填充 PUT 请求,例如

    PUT _index_template/<NAME>
    {
      # You can copy & paste this directly from the GET request above
      "index_patterns": [
        "<index pattern from GET request>"
      ],
    
      # Make sure this is added
      "template": {
        "settings": {
          "index": {
            "mode": "time_series"
          }
        }
      },
    
      # You can copy & paste this directly from the GET request above
      "composed_of": [
        "<NAME>@package",
        "<NAME>@custom",
        ".fleet_globals-1",
        ".fleet_agent_id_verification-1"
      ],
    
      # You can copy & paste this directly from the GET request above
      "priority": 200,
    
      # Make sure this is added
      "data_stream": {
        "allow_custom_routing": false
      }
    }

禁用 TSDS

编辑

要禁用 TSDS,请按照与启用 TSDS相同的步骤,但为 index.mode 指定 null,而不是 time_series。按照以下步骤操作,或者您可以复制 NGINX 示例

  1. 发送 GET 请求以检索索引模板

    GET _index_template/<NAME>
  2. 使用从 GET 请求返回的 JSON 有效负载来填充 PUT 请求,例如

    PUT _index_template/<NAME>
    {
      # You can copy/paste this directly from the GET request above
      "index_patterns": [
        "<index pattern from GET request>"
      ],
    
      # Make sure this is added
      "template": {
        "settings": {
          "index": {
            "mode": null
          }
        }
      },
    
      # You can copy/paste this directly from the GET request above
      "composed_of": [
        "<NAME>@package",
        "<NAME>@custom",
        ".fleet_globals-1",
        ".fleet_agent_id_verification-1"
      ],
    
      # You can copy/paste this directly from the GET request above
      "priority": 200,
    
      # Make sure this is added
      "data_stream": {
        "allow_custom_routing": false
      }
    }

    例如,以下有效负载在 nginx.stubstatus 上禁用 TSDS

    {
      "index_patterns": [
          "metrics-nginx.stubstatus-*"
      ],
    
      "template": {
        "settings": {
          "index": {
            "mode": null
          }
        }
      },
    
      "composed_of": [
        "metrics-nginx.stubstatus@package",
        "metrics-nginx.stubstatus@custom",
        ".fleet_globals-1",
        ".fleet_agent_id_verification-1"
      ],
    
      "priority": 200,
    
      "data_stream": {
        "allow_custom_routing": false
      }
    }

启用合成 _source

编辑
PUT _component_template/<NAME>@custom

{
  "template": {
    "mappings": {
      "_source": {
        "mode": "synthetic"
      }
    }
  }
}

禁用合成 _source

编辑
PUT _component_template/<NAME>@custom

{
  "template": {
    "mappings": {
      "_source": {}
    }
  }
}