Compute API 마이크로버전

Jmnote (토론 | 기여)님의 2024년 7월 2일 (화) 21:41 판 (→‎버전 발견)

1 개요

Crystal Clear action info.png 작성 중인 문서입니다.
Microversions
마이크로버전

https://docs.openstack.org/api-guide/compute/microversions.html


API v2.1은 API에 대한 작고 문서화된 변경사항인 마이크로버전을 지원합니다. 사용자는 마이크로버전을 통해 자신의 클라우드에서 지원되는 최신 API 마이크로버전을 확인할 수 있습니다. 최신 마이크로버전을 지원하도록 클라우드를 업그레이드하더라도, 이전 마이크로버전을 사용하는 사용자들의 호환성을 유지하기 위해 모든 이전 마이크로버전도 계속 지원됩니다. 사용자는 마이크로버전을 통해 새로운 기능을 쉽게 발견할 수 있으며, 이를 통해 현재 클라우드의 모든 장점과 개선점을 누릴 수 있습니다.

마이크로버전을 통해 해결할 수 있는 여러 사례가 있습니다:

  • 새 클라우드와 구버전 클라이언트
구버전 클라이언트를 사용하여 새로운 클라우드와 통신하기 전에, 구버전 클라이언트는 최소 마이크로버전을 확인하여 클라우드가 구버전 API와 호환되는지 검증할 수 있습니다. 이를 통해 하위 호환되지 않는 API 변경으로 인해 구버전 클라이언트가 중단되는 것을 방지할 수 있습니다.
현재 마이크로버전의 최소 버전은 2.1이며, 이는 레거시 v2 API와 호환되는 마이크로버전입니다. 즉, 레거시 v2 API 사용자는 클라우드가 새로운 버전으로 업그레이드되더라도 구버전 클라이언트 소프트웨어가 중단될 걱정을 할 필요가 없습니다. 또한 클라우드 운영자는 클라우드를 새로운 버전으로 업그레이드하더라도 이러한 변경을 예상하지 못하는 구버전 클라이언트를 사용하는 사용자가 중단되는 것을 걱정할 필요가 없습니다.
  • 클라우드 간 사용가능한 기능 발견
새로운 기능은 마이크로버전을 통해 발견할 수 있습니다. 사용자 클라이언트는 먼저 마이크로버전을 확인하고, 클라우드가 지원하는 경우에만 새로운 기능을 활성화합니다. 이를 통해 사용자 클라이언트는 서로 다른 마이크로버전을 배포한 클라우드와 동시에 작업할 수 있습니다.

2 버전 발견

버전 API는 최소 및 최대 마이크로버전을 반환합니다. 이러한 값은 클라이언트가 API에서 지원하는 마이크로버전을 확인하는 데 사용됩니다.

모든 엔드포인트에 대한 버전 정보를 요청하려면 / 경로로 요청을 보내면 됩니다. 응답은 다음과 같이 표시됩니다:

{
  "versions": [
      {
          "id": "v2.0",
          "links": [
              {
                  "href": "http://openstack.example.com/v2/",
                  "rel": "self"
              }
          ],
          "status": "SUPPORTED",
          "version": "",
          "min_version": "",
          "updated": "2011-01-21T11:33:21Z"
      },
      {
          "id": "v2.1",
          "links": [
              {
                  "href": "http://openstack.example.com/v2.1/",
                  "rel": "self"
              }
          ],
          "status": "CURRENT",
          "version": "2.14",
          "min_version": "2.1",
          "updated": "2013-07-23T11:33:21Z"
      }
  ]
}

version은 최대 마이크로버전을 나타내고, min_version은 최소 마이크로버전을 나타냅니다. 값이 빈 문자열인 경우, 해당 엔드포인트는 마이크로버전을 지원하지 않으며, 이는 레거시 v2 API 엔드포인트를 의미합니다. 예를 들어, 위의 샘플에서 http://openstack.example.com/v2/ 엔드포인트가 해당됩니다. http://openstack.example.com/v2.1/ 엔드포인트는 마이크로버전을 지원하며, 최대 마이크로버전은 2.14이고 최소 마이크로버전은 2.1입니다. 클라이언트는 해당 엔드포인트에 접근하기 위해 최소 마이크로버전과 최대 마이크로버전 사이(포함)의 마이크로버전을 지정해야 합니다.

기본 버전 URL (예: http://openstack.example.com/v2.1/)에서 GET 요청을 수행하여 특정 엔드포인트 버전 정보를 얻을 수도 있습니다. 버전 API에 대한 자세한 정보는 "버전"을 참조하십시오.

3 클라이언트 상호작용

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}