Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda> Distributed Cache Service> Referencia de la API> Ejemplos> Ejemplo 2: Creación de una tarea de migración de datos
Actualización más reciente 2022-11-09 GMT+08:00

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

  1. Consulte la dirección IP y el número de puerto de una instancia específica.

    • URI

      Formato URI: GET /v2/{project_id}/instances/{instance_id}

    • 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
      }

  2. 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

    Formato URI: POST /v2/{project_id}/migration-task

  • 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

    Formato URI: GET /v2/{project_id}/migration-task/{task_id}

  • 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.