1개의 마이그레이션 요청 확인

POST /api/atlas/v2/groups/{groupId}/liveMigrations/validate

제공된 자격 증명, 사용 가능한 디스크 공간, MongoDB 버전 등이 마이그레이션 요청의 요구 사항을 충족하는지 확인합니다. 검사를 통과하면 마이그레이션을 수행할 수 있습니다. 이 리소스를 성공적으로 호출하려면 API 키에 조직 소유자 역할이 있어야 합니다. 더 이상 사용되지 않는 버전: v2-{2023-01-01}

경로 매개변수

  • groupId 문자열 필수 사항

    프로젝트 식별하는 고유한 24-16진수 문자열입니다. 인증된 사용자가 액세스 할 수 있는 모든 프로젝트를 조회 하려면 /groups 엔드포인트를 사용합니다.

    참고: 그룹과 프로젝트는 동의어입니다. 그룹 ID는 프로젝트 ID와 동일합니다. 기존 그룹의 경우, 그룹/프로젝트 ID는 동일하게 유지됩니다. 리소스 및 해당 엔드포인트는 그룹이라는 용어를 사용합니다.

    형식은 ^([a-f0-9]{24})$ 패턴 과 일치해야 합니다.

쿼리 매개변수

  • envelope 부울

    애플리케이션이 응답을 envelope JSON 객체로 래핑할지 여부를 나타내는 플래그입니다. 일부 API 클라이언트는 HTTP 응답 헤더 또는 상태 코드에 액세스할 수 없습니다. 이 문제를 해결하려면 쿼리에서 envelope=true를 설정합니다. 결과 목록을 반환하는 엔드포인트는 결과 객체를 엔벨로프로 사용합니다. 애플리케이션은 응답 본문에 상태 매개변수를 추가합니다.

    기본값은 false 입니다.

  • pretty 부울

    응답 본문이 프리티프린트 형식이어야 하는지 여부를 나타내는 플래그입니다.

    기본값은 false 입니다.

    Prettyprint
application/vnd.atlas.2024-05-30+json

body 필수 사항

검증되는 마이그레이션 하나.

  • destination 객체 필수 사항

    마이그레이션 대상을 설명하는 문서.

    대상 속성 숨기기 대상 속성 표시 객체
    • clusterName 문자열 필수 사항

      대상 클러스터 식별하는 레이블입니다.

      최소 길이는 1입니다.

    • groupId 문자열 필수 사항

      대상 프로젝트 식별하는 고유한 24-16진수 문자열입니다.

      형식은 ^([a-f0-9]{24})$ 패턴 과 일치해야 합니다.

    • hostnameSchemaType 문자열 필수 사항

      마이그레이션 호스트 와 대상 클러스터 간에 사용할 네트워크 유형입니다.

      최소 길이는 1입니다. 값은 PUBLIC, PRIVATE_LINK 또는 VPC_PEERING입니다.

    • privateLinkId 문자열

      호스팅하다 스키마 유형이 PRIVATE_LINK일 때 사용할 엔드포인트를 나타냅니다.

  • dropDestinationData 부울

    마이그레이션이 시작되기 전에 마이그레이션 프로세스가 대상 클러스터에서 모든 컬렉션을 제거하는지 여부를 나타내는 플래그.

    기본값은 false 입니다.

  • migrationHosts array[string]

    이 마이그레이션에 사용된 마이그레이션 호스트 목록.

    최소 1 개, 1 개 이하의 요소입니다. 각각의 최소 길이는 1입니다.

  • 샤딩 객체

    MongoDB 6.0 이상에서 복제본 세트 소스에서 샤딩된 클러스터 대상으로 마이그레이션할 때 대상 클러스터에서 수행하는 샤딩을 구성하는 문서. 대상 클러스터의 컬렉션을 샤딩하지 않으려면 이 항목을 비워 두세요.

    샤딩 속성 숨기기 샤딩 속성 표시 객체
    • createSupportingIndexes 부울 필수 사항

      대상 클러스터 에도 지정된 샤드 키에 대한 호환 인덱스가 필요하므로 마이그레이션 이 샤드 키에 대한 지원 인덱스를 생성할 수 있도록 하는 플래그입니다.

    • shardingEntries 배열[객체]

      대상 컬렉션을 샤드 위한 샤드 구성 목록입니다. Atlas 샤딩 항목 배열 에 포함된 컬렉션만 샤딩합니다.

      대상 클러스터 에서 샤딩된 할 컬렉션 에 대한 샤딩 구성입니다.

      shardingEntries 속성 숨기기 shardingEntries 속성 표시 객체
      • 컬렉션 문자열 필수 사항

        대상 클러스터 에서 샤딩된 할 컬렉션 을 식별하는 사람이 읽을 수 있는 레이블입니다.

      • database 문자열 필수 사항

        대상 클러스터 에서 샤딩된 할 컬렉션 이 포함된 데이터베이스 식별하는 사람이 읽을 수 있는 레이블입니다.

      • shardCollection 객체 필수 사항

        대상 클러스터 에서 샤드 키 구성하는 문서입니다.

        shardCollection 속성 숨기기 shardCollection 속성 표시 객체
        • 배열[객체]

          샤드 키 에 사용할 필드 목록입니다.

          키 속성 숨기기 키 속성 표시 객체
          • * 객체 additionalProperties
  • source 객체 필수 사항

    마이그레이션의 출처를 설명하는 문서.

    소스 속성 숨기기 소스 속성 표시 객체
    • caCertificatePath 문자열

      서명된 SSL 인증서가 소스 클러스터 에 인증하는 데 사용하는 CA 인증서의 경로입니다.

    • clusterName 문자열 필수 사항

      소스 클러스터 이름을 식별하는 레이블입니다.

      최소 길이는 1입니다.

    • groupId 문자열 필수 사항

      소스 프로젝트를 식별하는 고유한 24자리 16진수 문자열입니다.

      형식은 ^([a-f0-9]{24})$ 패턴 과 일치해야 합니다.

    • managedAuthentication 부울 필수 사항

      MongoDB Automation이 소스 클러스터 에 대한 인증 관리하는지 여부를 나타내는 플래그입니다. true인 경우 사용자 이름 및 비밀번호 값을 제공하지 마세요.

    • 비밀번호 문자열

      소스 클러스터 에 대한 사용자 이름 인증하는 비밀번호입니다.

    • ssl 부울 필수 사항

      SSL을 활성화했는지 여부를 나타내는 플래그입니다.

    • 사용자 이름 문자열

      소스 클러스터 에 연결하는 SCRAM -SHA 사용자를 식별하는 레이블입니다.

응답

  • 200 application/vnd.atlas.2024-05-30+json

    확인

    응답 속성 숨기기 응답 속성 표시 객체
    • _id 문자열

      고유한 24- 유효성 검사 식별하는 16진수 문자열입니다.

      형식은 ^([a-f0-9]{24})$ 패턴 과 일치해야 합니다.

    • 오류 메시지 문자열 | null

      유효성 검사 작업 실패한 이유입니다.

    • groupId 문자열

      유효성을 검사할 프로젝트 식별하는 고유한 24-16진수 문자열입니다.

      형식은 ^([a-f0-9]{24})$ 패턴 과 일치해야 합니다.

    • sourceGroupId 문자열

      소스 프로젝트를 식별하는 고유한 24자리 16진수 문자열입니다.

      형식은 ^([a-f0-9]{24})$ 패턴 과 일치해야 합니다.

    • 상태 문자열 | null

      요청 시 반환된 지정된 유효성 검사 작업 의 상태입니다.

      값은 PENDING, SUCCESS 또는 FAILED입니다.

  • 400 application/json

    잘못된 요청입니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 401 application/json

    승인되지 않았습니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 403 application/json

    Forbidden.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 404 application/json

    찾을 수 없습니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 500 application/json

    내부 서버 오류입니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

POST /API/Atlas/v2/groups/{groupId}/liveMigrations/validate
atlas api cloudMigrationService validateGroupLiveMigrations --help
import (
	"os"
	"context"
	"log"
	sdk "go.mongodb.org/atlas-sdk/v20250312001/admin"
)

func main() {
	ctx := context.Background()
	clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
	clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")

	// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
	client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))

	if err != nil {
		log.Fatalf("Error: %v", err)
	}

	params = &sdk.ValidateGroupLiveMigrationsApiParams{}
	sdkResp, httpResp, err := client.CloudMigrationServiceApi.
		ValidateGroupLiveMigrationsWithParams(ctx, params).
		Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
  --header "Accept: application/vnd.atlas.2025-03-12+json" \
  --header "Content-Type: application/json" \
  -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations/validate" \
  -d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
  --digest --include \
  --header "Accept: application/vnd.atlas.2025-03-12+json" \
  --header "Content-Type: application/json" \
  -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations/validate" \
  -d '{ <Payload> }'
요청 예시
{
  "destination": {
    "clusterName": "string",
    "groupId": "32b6e34b3d91647abb20e7b8",
    "hostnameSchemaType": "PUBLIC",
    "privateLinkId": "string"
  },
  "dropDestinationData": false,
  "migrationHosts": [
    "vm001.example.com"
  ],
  "sharding": {
    "createSupportingIndexes": true,
    "shardingEntries": [
      {
        "collection": "string",
        "database": "string",
        "shardCollection": {
          "key": [
            {
              "additionalProperty1": {},
              "additionalProperty2": {}
            }
          ]
        }
      }
    ]
  },
  "source": {
    "caCertificatePath": "string",
    "clusterName": "string",
    "groupId": "32b6e34b3d91647abb20e7b8",
    "managedAuthentication": true,
    "password": "string",
    "ssl": true,
    "username": "string"
  }
}
응답 예시(200)
{
  "_id": "32b6e34b3d91647abb20e7b8",
  "errorMessage": "string",
  "groupId": "32b6e34b3d91647abb20e7b8",
  "sourceGroupId": "32b6e34b3d91647abb20e7b8",
  "status": "PENDING"
}
응답 예시(400)
{
  "error": 400,
  "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  "reason": "Bad Request",
  "errorCode": "VALIDATION_ERROR"
}
응답 예시(401)
{
  "error": 401,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Unauthorized",
  "errorCode": "NOT_ORG_GROUP_CREATOR"
}
응답 예시(403)
{
  "error": 403,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Forbidden",
  "errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
응답 예시(404)
{
  "error": 404,
  "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
  "reason": "Not Found",
  "errorCode": "RESOURCE_NOT_FOUND"
}
응답 예시(500)
{
  "error": 500,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Internal Server Error",
  "errorCode": "UNEXPECTED_ERROR"
}