feature-migration.asciidoc 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. [role="xpack"]
  2. [[feature-migration-api]]
  3. === Feature migration APIs
  4. ++++
  5. <titleabbrev>Feature migration</titleabbrev>
  6. ++++
  7. include::{es-ref-dir}/migration/apis/shared-migration-apis-tip.asciidoc[]
  8. Version upgrades sometimes require changes to how features store configuration
  9. information and data in system indices. The feature migration APIs enable you to
  10. see what features require changes, initiate the automatic migration process, and
  11. check migration status.
  12. Some functionality might be temporarily unavailable during the migration
  13. process.
  14. [[feature-migration-api-request]]
  15. ==== {api-request-title}
  16. `GET /_migration/system_features`
  17. `POST /_migration/system_features`
  18. [[feature-migration-api-prereqs]]
  19. ==== {api-prereq-title}
  20. * If the {es} {security-features} are enabled, you must have the `manage`
  21. <<privileges-list-cluster,cluster privilege>> to use this API.
  22. [[feature-migration-api-desc]]
  23. ==== {api-description-title}
  24. Submit a GET request to the `_migration/system_features` endpoint to see what
  25. features need to be migrated and the status of any migrations that are in
  26. progress.
  27. Submit a POST request to the endpoint to start the migration process.
  28. [[feature-migration-api-example]]
  29. ==== {api-examples-title}
  30. When you submit a GET request to the `_migration/system_features` endpoint, the
  31. response indicates the status of any features that need to be migrated.
  32. [source,console]
  33. --------------------------------------------------
  34. GET /_migration/system_features
  35. --------------------------------------------------
  36. Example response:
  37. [source,console-result]
  38. --------------------------------------------------
  39. {
  40. "features" : [
  41. {
  42. "feature_name" : "async_search",
  43. "minimum_index_version" : "8100099",
  44. "migration_status" : "NO_MIGRATION_NEEDED",
  45. "indices" : [ ]
  46. },
  47. {
  48. "feature_name" : "enrich",
  49. "minimum_index_version" : "8100099",
  50. "migration_status" : "NO_MIGRATION_NEEDED",
  51. "indices" : [ ]
  52. },
  53. {
  54. "feature_name" : "ent_search",
  55. "minimum_index_version" : "8100099",
  56. "migration_status" : "NO_MIGRATION_NEEDED",
  57. "indices" : [ ]
  58. },
  59. {
  60. "feature_name" : "fleet",
  61. "minimum_index_version" : "8100099",
  62. "migration_status" : "NO_MIGRATION_NEEDED",
  63. "indices" : [ ]
  64. },
  65. {
  66. "feature_name" : "geoip",
  67. "minimum_index_version" : "8100099",
  68. "migration_status" : "NO_MIGRATION_NEEDED",
  69. "indices" : [ ]
  70. },
  71. {
  72. "feature_name" : "kibana",
  73. "minimum_index_version" : "8100099",
  74. "migration_status" : "NO_MIGRATION_NEEDED",
  75. "indices" : [ ]
  76. },
  77. {
  78. "feature_name" : "logstash_management",
  79. "minimum_index_version" : "8100099",
  80. "migration_status" : "NO_MIGRATION_NEEDED",
  81. "indices" : [ ]
  82. },
  83. {
  84. "feature_name" : "machine_learning",
  85. "minimum_index_version" : "8100099",
  86. "migration_status" : "NO_MIGRATION_NEEDED",
  87. "indices" : [ ]
  88. },
  89. {
  90. "feature_name" : "searchable_snapshots",
  91. "minimum_index_version" : "8100099",
  92. "migration_status" : "NO_MIGRATION_NEEDED",
  93. "indices" : [ ]
  94. },
  95. {
  96. "feature_name" : "security",
  97. "minimum_index_version" : "8100099",
  98. "migration_status" : "NO_MIGRATION_NEEDED",
  99. "indices" : [ ]
  100. },
  101. {
  102. "feature_name" : "synonyms",
  103. "minimum_index_version" : "8100099",
  104. "migration_status" : "NO_MIGRATION_NEEDED",
  105. "indices" : [ ]
  106. },
  107. {
  108. "feature_name" : "tasks",
  109. "minimum_index_version" : "8100099",
  110. "migration_status" : "NO_MIGRATION_NEEDED",
  111. "indices" : [ ]
  112. },
  113. {
  114. "feature_name" : "transform",
  115. "minimum_index_version" : "8100099",
  116. "migration_status" : "NO_MIGRATION_NEEDED",
  117. "indices" : [ ]
  118. },
  119. {
  120. "feature_name" : "watcher",
  121. "minimum_index_version" : "8100099",
  122. "migration_status" : "NO_MIGRATION_NEEDED",
  123. "indices" : [ ]
  124. }
  125. ],
  126. "migration_status" : "NO_MIGRATION_NEEDED"
  127. }
  128. --------------------------------------------------
  129. // TESTRESPONSE[skip:"AwaitsFix https://github.com/elastic/elasticsearch/issues/97780]
  130. When you submit a POST request to the `_migration/system_features` endpoint to
  131. start the migration process, the response indicates what features will be
  132. migrated.
  133. [source,console]
  134. --------------------------------------------------
  135. POST /_migration/system_features
  136. --------------------------------------------------
  137. Example response:
  138. [source,console-result]
  139. --------------------------------------------------
  140. {
  141. "accepted" : true,
  142. "features" : [
  143. {
  144. "feature_name" : "security" <1>
  145. }
  146. ]
  147. }
  148. --------------------------------------------------
  149. // TESTRESPONSE[skip: can't actually upgrade system indices in these tests]
  150. <1> {es} security will be migrated before the cluster is upgraded.
  151. Subsequent GET requests will return the status of the migration process.