Reubicación de temas del sistema de Azure Event Grid a otra región
En este artículo se describe el enfoque recomendado, las directrices y los procedimientos para reubicar temas del sistema de Event Grid a otra región.
Hay varias razones por las que puede desear mover los recursos de Azure existentes de una región a otra. Quizá también desea:
- Aproveche las ventajas de una nueva región de Azure.
- Implemente características o servicios que solo están disponibles en regiones determinadas.
- Cumpla requisitos internos de gobernanza y directivas.
- Alineación con fusiones y adquisiciones de la empresa
- Cumpla los requisitos de planeamiento de capacidad.
Estos son los pasos resumidos que se describen en este artículo:
- Exporte el grupo de recursos que contiene la cuenta de Azure Storage y su tema del sistema asociado a una plantilla de Resource Manager. También puede exportar una plantilla solo para el tema del sistema. Si va a hacer esto último, no olvide mover el origen de eventos de Azure (en este ejemplo, una cuenta de Azure Storage) a la otra región antes de mover el tema del sistema. A continuación, en la plantilla exportada para el tema del sistema, actualice el identificador externo de la cuenta de almacenamiento en la región de destino.
- Modifique la plantilla para agregar la propiedad
endpointUrl
con el fin de que apunte a un webhook que se suscribe al tema del sistema. Cuando se exporta el tema del sistema, su suscripción (en este caso, un webhook) también se exporta a la plantilla, pero no se incluye la propiedadendpointUrl
. Por lo tanto, debe actualizarla para que apunte al punto de conexión que se suscribe al tema. Además, actualice el valor de la propiedadlocation
a la nueva ubicación o región. En otros tipos de controladores de eventos, solo necesita actualizar la ubicación. - Use la plantilla para implementar recursos en la región de destino. Especificará los nombres de la cuenta de almacenamiento y el tema del sistema que se va a crear en la región de destino.
- Comprobar la implementación. Compruebe que el webhook se invoca cuando carga un archivo en el almacenamiento de blobs de la región de destino.
- Para completar el traslado, elimine los recursos (el origen del evento y el tema del sistema) de la región de origen.
Requisitos previos
- Complete la guía Inicio rápido: Enrutamiento de eventos de Blob Storage a un punto de conexión web personalizado con Azure Portal en la región de origen. Este paso es opcional. Sígalo para probar los pasos de este artículo. Mantenga la cuenta de almacenamiento en un grupo de recursos independiente del plan de App Service y App Service.
- Asegúrese de que el servicio Event Grid esté disponible en la región de destino. Consulte los Productos disponibles por región.
Preparación
Para empezar, exporte una plantilla de Resource Manager para el grupo de recursos que contiene el origen de eventos del sistema (la cuenta de Azure Storage) y su tema del sistema asociado.
Inicie sesión en Azure Portal.
Seleccione Grupos de recursos en el menú de la izquierda. A continuación, seleccione el grupo de recursos que contiene el origen del evento para el que se creó el tema del sistema. En el ejemplo siguiente, es la cuenta de Azure Storage. El grupo de recursos contiene la cuenta de almacenamiento y su tema del sistema asociado.
En el menú de la izquierda, seleccione Exportar plantilla en Configuración y, a continuación, seleccione Descargar en la barra de herramientas.
Busque el archivo .zip que descargó desde el portal y descomprímalo en la carpeta que prefiera. Este archivo .zip contiene los archivos JSON de plantilla y parámetros.
Abra template.json en el editor que prefiera.
La dirección URL del webhook no se exporta a la plantilla. Por tanto, siga estos pasos:
En el archivo de plantilla, busque Webhook.
En la sección Propiedades, agregue un carácter de coma (
,
) al final de la última línea. En este ejemplo, es"preferredBatchSizeInKilobytes": 64
.Agregue la propiedad
endpointUrl
con el valor establecido en la dirección URL del webhook, tal como se muestra en el ejemplo siguiente."destination": { "properties": { "maxEventsPerBatch": 1, "preferredBatchSizeInKilobytes": 64, "endpointUrl": "https://mysite.azurewebsites.net/api/updates" }, "endpointType": "WebHook" }
Nota:
Para otros tipos de controladores de eventos, todas las propiedades se exportan a la plantilla. Solo tiene que actualizar la propiedad
location
en la región de destino, tal como se muestra en el paso siguiente.
Actualice
location
para el recurso de cuenta de almacenamiento en la región o ubicación de destino. Para obtener los códigos de ubicación, consulte Ubicaciones de Azure. El código de una región es el nombre de la región sin espacios, por ejemplo,West US
es igual awestus
."type": "Microsoft.Storage/storageAccounts", "apiVersion": "2019-06-01", "name": "[parameters('storageAccounts_spegridstorage080420_name')]", "location": "westus",
Repita el paso con el fin de actualizar
location
para el recurso de tema del sistema en la plantilla."type": "Microsoft.EventGrid/systemTopics", "apiVersion": "2020-04-01-preview", "name": "[parameters('systemTopics_spegridsystopic080420_name')]", "location": "westus",
Guarde la plantilla.
Volver a implementar
Implemente la plantilla para crear una cuenta de almacenamiento y un tema del sistema para la cuenta de almacenamiento en la región de destino.
- En Azure Portal, haga clic en Crear un recurso.
- En Buscar en Marketplace, escriba implementación de plantillas y, después, presione ENTRAR.
- Seleccione Implementación de plantillas.
- Seleccione Crear.
- Seleccione Cree su propia plantilla en el editor.
- Seleccione Cargar archivo y, después, siga las instrucciones para cargar el archivo template.json que descargó en la última sección.
- Seleccione Guardar para guardar la plantilla.
- En la página Implementación personalizada, siga estos pasos.
Seleccione una suscripción de Azure.
Seleccione un grupo de recursos en la región de destino o cree uno.
En Región, seleccione la región de destino. Si ha seleccionado un grupo de recursos existente, esta configuración es de solo lectura.
En Nombre del tema del sistema, escriba un nombre para el tema del sistema que se asociará a la cuenta de almacenamiento.
En Nombre de la cuenta de almacenamiento, escriba un nombre para la cuenta de almacenamiento que se va a crear en la región de destino.
En la parte inferior de la página, seleccione Revisar y crear.
En la página Revisar y crear, examine la configuración y seleccione Crear.
Comprobar
- Una vez que la implementación se haya realizado correctamente, seleccione Ir al grupo de recursos.
- En la página Grupo de recursos, compruebe que se han creado el origen del evento (en este ejemplo, la cuenta de Azure Storage) y el tema del sistema.
- Cargue un archivo en un contenedor de Azure Blob Storage y compruebe que el webhook ha recibido el evento. Para obtener más información, consulte Envío de un evento al punto de conexión.
Descarte o limpieza
Para completar el traslado, elimine el grupo de recursos que contiene la cuenta de almacenamiento y su tema del sistema asociado en la región de origen.
Si desea volver a empezar, elimine el grupo de recursos de la región de destino y repita los pasos de las secciones Preparar y Volver a crear de este artículo.
Para eliminar un grupo de recursos (origen o destino) mediante Azure Portal:
En la ventana de búsqueda de la parte superior de Azure Portal, escriba Grupos de recursos y seleccione Grupos de recursos en los resultados de la búsqueda.
Seleccione el grupo de recursos que desea eliminar y, a continuación, seleccione Eliminar en la barra de herramientas.
En la página de confirmación, escriba el nombre del grupo de recursos y seleccione Eliminar.