제공된 자격 증명, 사용 가능한 디스크 공간, MongoDB 버전 등이 마이그레이션 요청의 요구 사항을 충족하는지 확인합니다. 검사를 통과하면 마이그레이션을 수행할 수 있습니다. 이 리소스를 성공적으로 호출하려면 API 키에 조직 소유자 역할이 있어야 합니다.
프로젝트 식별하는 고유한 24-16진수 문자열입니다. 인증된 사용자가 액세스 할 수 있는 모든 프로젝트를 조회 하려면 /groups 엔드포인트를 사용합니다.
참고: 그룹과 프로젝트는 동의어입니다. 그룹 ID는 프로젝트 ID와 동일합니다. 기존 그룹의 경우, 그룹/프로젝트 ID는 동일하게 유지됩니다. 리소스 및 해당 엔드포인트는 그룹이라는 용어를 사용합니다.
형식은 ^([a-f0-9]{24})$ 패턴 과 일치해야 합니다.
애플리케이션이 응답을 envelope JSON 객체로 래핑할지 여부를 나타내는 플래그입니다. 일부 API 클라이언트는 HTTP 응답 헤더 또는 상태 코드에 액세스할 수 없습니다. 이 문제를 해결하려면 쿼리에서 envelope=true를 설정합니다. 결과 목록을 반환하는 엔드포인트는 결과 객체를 엔벨로프로 사용합니다. 애플리케이션은 응답 본문에 상태 매개변수를 추가합니다.
기본값은 false 입니다.
응답 본문이 프리티프린트 형식이어야 하는지 여부를 나타내는 플래그입니다.
기본값은 false 입니다.
검증되는 마이그레이션 하나.
마이그레이션 대상을 설명하는 문서.
마이그레이션이 시작되기 전에 마이그레이션 프로세스가 대상 클러스터에서 모든 컬렉션을 제거하는지 여부를 나타내는 플래그.
이 마이그레이션에 사용된 마이그레이션 호스트 목록.
최소 1 개, 1 개 이하의 요소입니다.
MongoDB 6.0 이상에서 복제본 세트 소스에서 샤딩된 클러스터 대상으로 마이그레이션할 때 대상 클러스터에서 수행하는 샤딩을 구성하는 문서. 대상 클러스터의 컬렉션을 샤딩하지 않으려면 이 항목을 비워 두세요.
마이그레이션의 출처를 설명하는 문서.
curl \
--request POST 'https://cloud.mongodb.com/api/atlas/v1.0/groups/32b6e34b3d91647abb20e7b8/liveMigrations/validate' \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Content-Type: application/json" \
--data '{"destination":{"clusterName":"string","groupId":"32b6e34b3d91647abb20e7b8","hostnameSchemaType":"PUBLIC","privateLinkId":"string"},"dropEnabled":true,"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"}}'
{
"destination": {
"clusterName": "string",
"groupId": "32b6e34b3d91647abb20e7b8",
"hostnameSchemaType": "PUBLIC",
"privateLinkId": "string"
},
"dropEnabled": true,
"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"
}
}
{
"_id": "32b6e34b3d91647abb20e7b8",
"errorMessage": "string",
"groupId": "32b6e34b3d91647abb20e7b8",
"sourceGroupId": "32b6e34b3d91647abb20e7b8",
"status": "PENDING"
}
{
"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"
}
{
"error": 401,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Unauthorized",
"errorCode": "NOT_ORG_GROUP_CREATOR"
}
{
"error": 403,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Forbidden",
"errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
{
"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"
}
{
"error": 500,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Internal Server Error",
"errorCode": "UNEXPECTED_ERROR"
}