Ejemplo 2: Creación de una tarea de migración de datos
Escenario
Esta sección describe cómo crear una tarea de migración mediante llamadas a las API. Para obtener más información sobre cómo llamar a las API, consulte Llamadas a la API.
Una tarea de migración completa en línea se utiliza como ejemplo. El origen y el destino de la migración son instancias de DCS Redis en la misma VPC en Huawei Cloud.
APIs involucradas
Llame a las API para realizar los siguientes pasos necesarios para crear una tarea de migración de datos:
- Paso 1: Determinar la dirección IP de origen y el número de puerto: Determinar la dirección IP y el número de puerto de la fuente Redis.
- Paso 2: Crear una tarea de migración de datos: Crear una tarea de migración de datos.
- Paso 3: Consultar el resultado de la migración: Verifique si la migración se ha realizado correctamente.
Paso 1: Determinar la dirección IP de origen y el número de puerto
- Consulte la dirección IP y el número de puerto de una instancia específica.
- URI
- Solicitud de ejemplo
GET https://{dcs_endpoint}/v2/666486c2d9b948c1bbea57e714d744fa/instances/21bc7b53-2494-4f10-bb0b-c0b913d9e329
Para obtener el valor de {dcs_endpoint}, consulte Regions y puntos de conexión.
- Ejemplo de respuesta
{ "free": null, "max_memory": 2048, "used_memory": 1, "instance_id": "21bc7b53-2494-4f10-bb0b-c0b913d9e329", "name": "dcs-api-test", "resource_spec_code": "redis.single.au1.large.2", "engine": "Redis", "engine_version": "5.0", "internal_version": null, "charging_mode": 0, "capacity": 2, "capacity_minor": null, "vpc_id": "743bf021-2c2d-4511-aeac-85bd48c06af7", "vpc_name": "vpc-d2d4", "ip": "192.168.0.100", "domain_name": "redis-88a7bbb-dcs-api-test.dcs.huaweicloud.com", "readonly_domain_name": null, "port": 6379, "status": "RUNNING", "freeze_scene": null, "created_at": "2020-06-05T03:30:36.273Z", "update_at": "2020-06-05T03:30:47.231Z", "error_code": null, "user_id": "d53977d1adfb49c5b025ba7d33a13fd7", "user_name": "paas_dcs_a00421997_02", "maintain_begin": "02:00:00", "maintain_end": "06:00:00", "no_password_access": "true", "access_user": null, "enable_publicip": false, "publicip_id": null, "publicip_address": null, "enable_ssl": false, "service_upgrade": false, "service_task_id": "", "enterprise_project_id": "0", "security_group_id": null, "tags": [], "product_type": "generic", "cpu_type": "aarch64", "storage_type": "DRAM", "launched_at": "2020-06-05T03:30:47.238Z", "is_free": null, "libos": false, "cache_mode": "single", "available_zones": ["d539378ec1314c85b76fefa3f7071458"], "subnet_id": "a4112635-3ec0-471c-95c3-5cf49b9533af", "backend_addrs": null, "crr_role": null, "cloud_service_type_code": "hws.service.type.dcs", "cloud_resource_type_code": "hws.resource.type.dcs3", "support_slow_log_flag": null, "ipv6": null, "enable_ipv6": false, "description": "", "product_id": "redis.single.au1.large.2-h", "security_group_name": null, "subnet_name": "dcs-beta", "order_id": null, "subnet_cidr": "192.168.0.0/24", "task": null, "instance_backup_policy": null, "enterprise_project_name": null }
- Registre la dirección IP y el número de puerto requeridos de la instancia.
Paso 2: Crear una tarea de migración de datos
- URI
- Solicitud de ejemplo
POST https://{dcs_endpoint}/v2/666486c2d9b948c1bbea57e714d744fa/migration-task
Para obtener el valor de {dcs_endpoint}, consulte Regions y puntos de conexión.
Cuerpo:
{ "migration_method": "full_amount_migration", "migration_type": "online_migration", "network_type": "vpc", "source_instance": { "addrs": "192.168.0.79:6379" }, "target_instance": { "id": "92b2b922-0f96-4664-acc5-04d922867c4d" }, "task_name": "dcs-test-migration" }
- Ejemplo de respuesta
{ "id": "8aa6999f727f0a40017283479d730d7c", "name": "dcs-test-migration", "status": "MIGRATING", "error": "" }
Para obtener más información sobre los parámetros para crear una tarea de migración de datos, consulte Creación de una tarea de migración de datos.
Paso 3: Consultar el resultado de la migración
- URI
- Solicitud de ejemplo
GET https://{dcs_endpoint}/v2/666486c2d9b948c1bbea57e714d744fa/migration-task/8aa6999f727f0a40017283479d730d7c
Para obtener el valor de {dcs_endpoint}, consulte Regions y puntos de conexión.
- Ejemplo de respuesta
{ "task_name": "dcs-test-migration", "task_id": "8aa6999f727f0a40017283479d730d7c", "description": null, "status": "SUCCESS", "migration_type": "online_migration", "migration_method": "full_amount_migration", "backup_files": null, "network_type": "vpc", "bandwidth_limit_mb": null, "source_instance": { "id": null, "ip": "192.168.0.79:6379", "port": null, "name": null, "password": null, "addrs": null }, "target_instance": { "id": "92b2b922-0f96-4664-acc5-04d922867c4d", "ip": null, "port": null, "name": "dcs-xwvq", "password": null, "addrs": null }, "created_at": "2020-06-05T07:00:08.204Z", "updated_at": "2020-06-05T07:03:25.075Z" }
Si el estado de la tarea es SUCCESS, la migración se realiza correctamente.