Compartir vía


Notificaciones de recursos de Azure - Eventos ContainerService en Azure Event Grid (versión preliminar)

Azure Kubernetes Service (AKS) usa el tema del sistema Recursos de eventos de Container Service para entregar notificaciones preventivas para las actividades de mantenimiento programado en clústeres de AKS. Esta funcionalidad permite la recepción de notificaciones push para tareas de mantenimiento esenciales en diferentes fases de eventos, como programadas, iniciadas, completadas, canceladas y con errores. En particular, para la fase programada, las notificaciones se envían 7 días y 24 horas antes de la actividad de mantenimiento real.

Las notificaciones abarcan:

  • Mantenimiento iniciado por AKS (por ejemplo, migración de capa subyacente, conmutador de túnel Konnectivity)
  • Mantenimiento iniciado por los clientes (como la actualización automática, la actualización del sistema operativo de Node y las ventanas de lanzamiento semanal)

Estas notificaciones orientadas al futuro ayudan a los clientes al ofrecer la oportunidad de prepararse mejor para posibles interrupciones, con el fin de minimizar los gastos operativos.

En este artículo se proporcionan las propiedades y el esquema de los eventos ContainerService de notificaciones de recursos de Azure. Para una introducción a los esquemas de eventos en general, consulte Esquema de eventos de Azure Event Grid. Además, puede encontrar ejemplos de eventos generados y un vínculo a un artículo relacionado sobre cómo crear un tema del sistema para este tipo de tema.

Tipos de eventos

ContainerService ofrece el siguiente tipo de evento para su consumo:

Tipo de evento Descripción
Microsoft.ResourceNotifications.ContainerServiceEventResources.ScheduledEventEmitted proporciona notificaciones avanzadas para eventos de mantenimiento programado en clústeres de AKS.

Control de acceso basado en rol

Actualmente, estos eventos se emiten exclusivamente en el ámbito de la suscripción de Azure. Implica que la entidad que crea la suscripción a eventos para este tipo de tema recibe notificaciones a través de esta suscripción a Azure. Por motivos de seguridad, es imperativo restringir la capacidad de crear suscripciones de eventos en este tema a entidades de seguridad con acceso de lectura en toda la suscripción de Azure. Para acceder a los datos a través de este tema del sistema, además de los permisos genéricos que requiere Event Grid, es necesario el siguiente permiso específico de notificaciones de recursos de Azure: ``.

Microsoft.ResourceNotifications/systemTopics/subscribeToContainerServiceEventResources/action

Esquemas de eventos

Este es el esquema:

{
	"id": "string",
	"source": "string",
	"subject": "string",
	"type": "Microsoft.ResourceNotifications.ContainerServiceEventResources.ScheduledEventEmitted",
	"time ": "string in date-time",
	"data": {
		"resourceInfo": {
			"id": "string",
			"name": "string",
			"type": "string",
			"location": "string",
			"properties": {
				"description": "string",
				"eventId": "string",
				"eventSource": "string",
				"eventStatus": "string",
				"eventDetails": "string",
				"scheduledTime": "string in date-time",
				"startTime": "string in date-time",
				"lastUpdateTime": "string in date-time",
				"resources": "array of strings",
				"resourceType": "string"
			}
		},
		"operationalInfo": {
			"resourceEventTime": "string in date-time"
		},
		"apiVersion": "string"
	},
	"specversion": "string"
}

Un evento tiene los siguientes datos de nivel superior:

Propiedad Tipo Description
id String Identificador único del evento
source String La suscripción de Azure para la que se va a crear este tema del sistema.
subject String Ruta de acceso definida por el publicador al recurso base sobre el que se emite este evento.
type String Tipo de evento registrado de este tipo de tema del sistema
time String
Formato: 2022-11-07T18:43:09.2894075Z
La hora de generación del evento en función de la hora UTC del proveedor
data Object Contiene datos del evento específicos del proveedor de recursos. Para más información, consulte la siguiente tabla.
specversion String Versión de especificación del esquema CloudEvents.

El objeto data tiene las siguientes propiedades:

Propiedad Tipo Description
resourceInfo Object Datos específicos del recurso. Para más información, consulte la siguiente tabla.
apiVersion String Versión de la API de las propiedades del recurso.
operationalInfo Object Detalles de la información operativa relacionada con el recurso.

El objeto resourceInfo tiene las siguientes propiedades:

Propiedad Tipo Description
id String Ruta de acceso al asunto del evento definido por el anunciante
name Cadena Este campo indica el id. de evento. Siempre toma el valor de la última sección del campo id.
type Cadena Tipo de evento que se está emitiendo.
location Cadena Ubicación o región donde se encuentra el recurso.
properties Object Carga del recurso. Para más información, consulte la siguiente tabla.

El objeto operationalInfo tiene las siguientes propiedades:

Propiedad Tipo Descripción
resourceEventTime DateTime Fecha y hora en que se actualizó el recurso.

El evento ScheduledEventEmitted tiene las siguientes propiedades:

Propiedad Tipo Description
description Cadena Descripción del evento.
eventId Cadena El id. evento del evento.
eventSource Cadena Origen del evento.
eventStatus Enumeración (cadena) Estado del evento que puede ser: Programado, Iniciado, Completado, Cancelado, Erróneo.
eventDetails Cadena Los detalles del evento.
scheduledTime Cadena (formato de fecha y hora) La hora del evento está programada para iniciarse.
lastUpdateTime Cadena (formato de fecha y hora) La última vez que se actualizó el estado del evento.
resources Matriz de cadenas (formato de id. de Azure Resource Manager) La lista de recursos afectados por el evento.
resourceType Cadena El tipo de recurso del evento

Eventos de ejemplo

En el siguiente ejemplo se muestra el esquema de un evento modificado de valor clave:

{
	"id": "5bdb52cf-5489-4845-86c8-7fe94a4fc6c1",
	"source": "/subscriptions/{subscription-id}",
	"subject": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.ContainerService/managedClusters/{managedcluster-name}/scheduledEvents/{event-id}",
	"data": {
		"resourceInfo": {
			"id": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.ContainerService/managedClusters/{managedcluster-name}/scheduledEvents/{event-id}",
			"name": "{event-id}",
			"type": "Microsoft.ContainerService/managedClusters/scheduledEvents",
			"properties": {
				"description": "ScheduledEvents",
				"eventId": "bbe82027-0444-4f73-897a-0bbfe3af66f1",
				"eventSource": "AutoUprader",
				"eventStatus": "Started",
				"eventDetails": "Start to upgrade security vhd",
				"scheduledTime": "2024-04-16T22:17:12.103268606Z",
				"startTime": "0001-01-01T00:00:00.0000000Z",
				"lastUpdateTime": "0001-01-01T00:00:00.0000000Z",
				"resources": [
				  "/subscriptions/{subscription-id}/resourcegroups/{rg-name}/providers/Microsoft.ContainerService/managedClusters/{managedcluster-name}"
				],
				"resourceType": "ManagedCluster"
			}
		},
		"operationalInfo": {
			"resourceEventTime": "2024-04-16T22:17:12.1032748"
		},
		"apiVersion": "2023-11-02-preview"
	},
	"type": "Microsoft.ResourceNotifications.ContainerServiceEventResources.ScheduledEventEmitted",
	"specversion": "1.0",
	"time": "2024-04-16T22:17:12.1032748Z"
}

Ponerse en contacto con nosotros

Si tiene alguna pregunta o comentarios sobre esta característica, no dude en ponerse en contacto con nosotros en arnsupport@microsoft.com.

Para ayudarle mejor con comentarios específicos sobre un determinado evento, proporcione la siguiente información:

Para los eventos que faltan:

  • Nombre del tipo de tema del sistema
  • Marca de tiempo aproximada en UTC cuando se ejecutó la operación
  • Identificador de recurso base para el que se generó la notificación
  • Vaya al recurso en Azure Portal y seleccione la vista JSON en la esquina derecha. El identificador de recurso es el primer campo de la página de vista JSON.
  • Tipo de evento esperado
  • Operación ejecutada (por ejemplo, máquina virtual iniciada o detenida, cuenta de Storage creada, etc.)
  • Descripción del problema detectado (por ejemplo, máquina virtual iniciada y no se generó ningún evento Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged)
  • Si es posible, proporcione el identificador de correlación de la operación ejecutada.

Para eventos retrasados o con contenido inesperado

  • Nombre del tipo de tema del sistema
  • Todo el contenido de la notificación, excepto data.resourceInfo.properties
  • Descripción del problema detectado y valores de campo afectados

Asegúrese de no proporcionar información de identificación del usuario final al compartir estos datos.

Pasos siguientes

Consulte Suscribirse a notificaciones de recursos de Azure - Eventos de Container Service.