feature_upgrade.asciidoc 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. [role="xpack"]
  2. [[migration-api-feature-upgrade]]
  3. === Feature Upgrade APIs
  4. ++++
  5. <titleabbrev>Feature upgrade APIs</titleabbrev>
  6. ++++
  7. IMPORTANT: Use this API to check for system features that need to be upgraded before
  8. a major version upgrade. You should run it on the last minor version of the
  9. major version you are upgrading from.
  10. The feature upgrade APIs are to be used to retrieve information about system features
  11. that have to be upgraded before a cluster can be migrated to the next major version number,
  12. and to trigger an automated system upgrade that might potentially involve downtime for
  13. {es} system features.
  14. [[feature-upgrade-api-request]]
  15. ==== {api-request-title}
  16. `GET /migration/system_features`
  17. [[feature-upgrade-api-prereqs]]
  18. ==== {api-prereq-title}
  19. * If the {es} {security-features} are enabled, you must have the `manage`
  20. <<privileges-list-cluster,cluster privilege>> to use this API.
  21. [[feature-upgrade-api-example]]
  22. ==== {api-examples-title}
  23. To see the list of system features needing upgrades, submit a GET request to the
  24. `_migration/system_features` endpoint:
  25. [source,console]
  26. --------------------------------------------------
  27. GET /_migration/system_features
  28. --------------------------------------------------
  29. Example response:
  30. [source,console-result]
  31. --------------------------------------------------
  32. {
  33. "features" : [
  34. {
  35. "feature_name" : "async_search",
  36. "minimum_index_version" : "8.0.0",
  37. "migration_status" : "NO_MIGRATION_NEEDED",
  38. "indices" : [ ]
  39. },
  40. {
  41. "feature_name" : "enrich",
  42. "minimum_index_version" : "8.0.0",
  43. "migration_status" : "NO_MIGRATION_NEEDED",
  44. "indices" : [ ]
  45. },
  46. {
  47. "feature_name" : "fleet",
  48. "minimum_index_version" : "8.0.0",
  49. "migration_status" : "NO_MIGRATION_NEEDED",
  50. "indices" : [ ]
  51. },
  52. {
  53. "feature_name" : "geoip",
  54. "minimum_index_version" : "8.0.0",
  55. "migration_status" : "NO_MIGRATION_NEEDED",
  56. "indices" : [ ]
  57. },
  58. {
  59. "feature_name" : "kibana",
  60. "minimum_index_version" : "8.0.0",
  61. "migration_status" : "NO_MIGRATION_NEEDED",
  62. "indices" : [ ]
  63. },
  64. {
  65. "feature_name" : "logstash_management",
  66. "minimum_index_version" : "8.0.0",
  67. "migration_status" : "NO_MIGRATION_NEEDED",
  68. "indices" : [ ]
  69. },
  70. {
  71. "feature_name" : "machine_learning",
  72. "minimum_index_version" : "8.0.0",
  73. "migration_status" : "NO_MIGRATION_NEEDED",
  74. "indices" : [ ]
  75. },
  76. {
  77. "feature_name" : "searchable_snapshots",
  78. "minimum_index_version" : "8.0.0",
  79. "migration_status" : "NO_MIGRATION_NEEDED",
  80. "indices" : [ ]
  81. },
  82. {
  83. "feature_name" : "security",
  84. "minimum_index_version" : "8.0.0",
  85. "migration_status" : "NO_MIGRATION_NEEDED",
  86. "indices" : [ ]
  87. },
  88. {
  89. "feature_name" : "tasks",
  90. "minimum_index_version" : "8.0.0",
  91. "migration_status" : "NO_MIGRATION_NEEDED",
  92. "indices" : [ ]
  93. },
  94. {
  95. "feature_name" : "transform",
  96. "minimum_index_version" : "8.0.0",
  97. "migration_status" : "NO_MIGRATION_NEEDED",
  98. "indices" : [ ]
  99. },
  100. {
  101. "feature_name" : "watcher",
  102. "minimum_index_version" : "8.0.0",
  103. "migration_status" : "NO_MIGRATION_NEEDED",
  104. "indices" : [ ]
  105. }
  106. ],
  107. "migration_status" : "NO_MIGRATION_NEEDED"
  108. }
  109. --------------------------------------------------
  110. // TESTRESPONSE[s/"minimum_index_version" : "8.0.0"/"minimum_index_version" : $body.$_path/]
  111. This response tells us that Elasticsearch security needs its internal
  112. indices upgraded before we can upgrade the cluster to 8.0.
  113. To perform the required upgrade, submit a POST request to the same endpoint.
  114. [source,console]
  115. --------------------------------------------------
  116. POST /_migration/system_features
  117. --------------------------------------------------
  118. Example response:
  119. [source,console-result]
  120. --------------------------------------------------
  121. {
  122. "accepted" : true,
  123. "features" : [
  124. {
  125. "feature_name" : "security"
  126. }
  127. ]
  128. }
  129. --------------------------------------------------
  130. // TESTRESPONSE[skip: can't actually upgrade system indices in these tests]
  131. This tells us that the security index is being upgraded. To check the
  132. overall status of the upgrade, call the endpoint with GET.