特性迁移 API

编辑

这些 API 旨在供 Kibana 的 升级助手 间接使用。我们强烈建议您使用 升级助手 从 7.17 升级到 8.17.0。有关升级说明,请参阅升级到 Elastic 8.17.0

版本升级有时需要更改功能在系统索引中存储配置信息和数据的方式。特性迁移 API 使您能够查看哪些特性需要更改、启动自动迁移过程以及检查迁移状态。

在迁移过程中,某些功能可能暂时不可用。

请求

编辑

GET /_migration/system_features

POST /_migration/system_features

先决条件

编辑
  • 如果启用了 Elasticsearch 安全功能,您必须拥有 manage 集群权限才能使用此 API。

描述

编辑

_migration/system_features 端点提交 GET 请求,以查看哪些特性需要迁移以及任何正在进行的迁移的状态。

向该端点提交 POST 请求以启动迁移过程。

示例

编辑

当您向 _migration/system_features 端点提交 GET 请求时,响应会指示任何需要迁移的特性的状态。

resp = client.migration.get_feature_upgrade_status()
print(resp)
response = client.migration.get_feature_upgrade_status
puts response
const response = await client.migration.getFeatureUpgradeStatus();
console.log(response);
GET /_migration/system_features

示例响应

{
  "features" : [
    {
      "feature_name" : "async_search",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "enrich",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "ent_search",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "fleet",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "geoip",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "kibana",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "logstash_management",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "machine_learning",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "searchable_snapshots",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "security",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "synonyms",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "tasks",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "transform",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    },
    {
      "feature_name" : "watcher",
      "minimum_index_version" : "8100099",
      "migration_status" : "NO_MIGRATION_NEEDED",
      "indices" : [ ]
    }
  ],
  "migration_status" : "NO_MIGRATION_NEEDED"
}

当您向 _migration/system_features 端点提交 POST 请求以启动迁移过程时,响应会指示将迁移哪些特性。

resp = client.migration.post_feature_upgrade()
print(resp)
response = client.migration.post_feature_upgrade
puts response
const response = await client.migration.postFeatureUpgrade();
console.log(response);
POST /_migration/system_features

示例响应

{
  "accepted" : true,
  "features" : [
    {
      "feature_name" : "security" 
    }
  ]
}

Elasticsearch 安全将在集群升级之前进行迁移。

后续 GET 请求将返回迁移过程的状态。