Este tema describe cómo usar Cloud Monitoring para monitorear la integridad de arranque de instancias de VM blindadas que tienen habilitada la supervisión de integridad , identificar la causa de un error de validación de integridad y actualizar la línea base de la política de integridad.
Supervisión de la integridad del arranque de la máquina virtual mediante la supervisión
Utilice Cloud Monitoring para ver eventos de validación de integridad y configurar alertas para ellos, y Cloud Logging para revisar los detalles de esos eventos.
Ver eventos de validación de integridad
Para ver las métricas de un recurso supervisado mediante el Explorador de métricas, haga lo siguiente:
En la consola de Google Cloud, vaya a la página del explorador de métricas leaderboard :
Si utiliza la barra de búsqueda para encontrar esta página, seleccione el resultado cuyo subtítulo es Monitoreo .
- En la barra de herramientas de la consola de Google Cloud, seleccione su proyecto de Google Cloud. Para las configuraciones de App Hub , seleccione el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para la aplicación.
- En el elemento Métrica , expanda el menú Seleccionar una métrica , ingrese
Boot Validation
en la barra de filtro y luego use los submenús para seleccionar un tipo de recurso y una métrica específicos:- En el menú Recursos activos , seleccione Instancia de VM .
- En el menú Categorías de métricas activas , seleccione Instancia .
- En el menú Métricas activas , seleccione Validación de inicio temprano o Validación de inicio tardío .
- Validación de inicio temprano : muestra el estado de aprobación/fallo de la parte de inicio temprano de la última secuencia de inicio. El arranque anticipado es la secuencia de arranque desde el inicio del firmware UEFI hasta que pasa el control al gestor de arranque.
- Validación de inicio tardío : muestra el estado de aprobación/fallo de la parte de inicio tardío de la última secuencia de inicio. El arranque tardío es la secuencia de arranque desde el gestor de arranque hasta su finalización. Esto incluye la carga del kernel del sistema operativo.
- Haga clic en Aplicar .
Para eliminar series temporales de la pantalla, utilice el elemento Filtro .
Para combinar series temporales, utilice los menús del elemento Agregación . Por ejemplo, para mostrar la utilización de CPU de sus máquinas virtuales, según su zona, configure el primer menú en Media y el segundo menú en zona .
Todas las series temporales se muestran cuando el primer menú del elemento Agregación está configurado en Sin agregar . La configuración predeterminada para el elemento Agregación está determinada por el tipo de métrica que seleccionó.
- Para cuotas y otras métricas que informan una muestra por día, haga lo siguiente:
- En el panel Mostrar , establezca el tipo de widget en Gráfico de barras apiladas .
- Establezca el período de tiempo en al menos una semana.
Configuración de alertas sobre eventos de validación de integridad
Configure alertas sobre los valores de las métricas de Validación de inicio temprano y Validación de inicio tardío si desea recibir una notificación cuando haya un error de validación de inicio en su instancia de VM. Para obtener información sobre las alertas, consulte Introducción a las alertas :
Para conocer la configuración de la política de alertas de validación de inicio temprano, consulte Validación de inicio temprano de Compute Engine .
Para conocer la configuración de la política de alertas de validación de arranque tardío, consulte Validación de arranque tardío de Compute Engine .
Ver detalles del evento de validación de integridad
- Vaya a la página de instancias de VM
- Haga clic en el ID de la instancia para abrir la página de detalles de la instancia de VM .
- En Registros , haga clic en Registro en la nube .
- Localice la entrada de registro
earlyBootReportEvent
olateBootReportEvent
que desea revisar. - Expanda la entrada de registro >
jsonPayload
>earlyBootReportEvent
olateBootReportEvent
, según corresponda. Dentro de esa sección, el elementopolicyEvaluationPassed
identifica si la sección dada de la secuencia de inicio pasó la verificación con respecto a la línea base de la política de integridad. - Expanda la sección
actualMeasurements
y los elementos numerados que contiene para ver los valores del registro de configuración de la plataforma (PCR) guardados desde la última secuencia de inicio. Los valores de PCR se guardan en los elementosvalue
dentro de los elementos numerados. Los valores de PCR identifican los componentes de inicio y el orden de carga de los componentes utilizados por la secuencia de inicio más reciente y se comparan con la línea base de la política de integridad para determinar si ha habido algún cambio en la secuencia de inicio de la instancia de VM. Para obtener más información sobre lo que representan los PCR, consulte Eventos de monitoreo de integridad . - Expanda la sección
policyMeasurements
para ver los valores de PCR guardados para la línea base de la política de integridad.
Automatización de respuestas a eventos de validación de integridad
Puede automatizar las respuestas a los eventos de validación de arranque exportando los registros de Cloud Logging y procesándolos en otro servicio como las funciones de Cloud Run. Para obtener más información, consulte Descripción general del enrutamiento y almacenamiento y Automatización de respuestas a fallas de validación de integridad .
Determinar la causa del error de validación de la integridad del arranque
- Vaya a la página de instancias de VM
- Haga clic en el ID de la instancia para abrir la página de detalles de la instancia de VM .
- En Registros , haga clic en Registro en la nube .
- Localice las entradas de registro
earlyBootReportEvent
ylateBootReportEvent
más recientes y vea cuál tiene un valor depolicyEvaluationPassed
de false . - Expanda la entrada de registro >
jsonPayload
>earlyBootReportEvent
olateBootReportEvent
, según corresponda. - Expanda las secciones
actualMeasurements
ypolicyMeasurements
y los elementos numerados dentro de ellas para ver los valores del registro de configuración de la plataforma (PCR) guardados de la última secuencia de inicio y la línea base de la política de integridad, respectivamente. Los valores de PCR identifican los componentes de inicio y el orden de carga de los componentes utilizados por la secuencia de inicio más reciente y la línea base de la política de integridad. Compare los valores de PCR en las secciones
actualMeasurements
ypolicyMeasurements
para determinar dónde se produjo la variación entre la secuencia de inicio más reciente y la línea base de la política de integridad. Cualquiera que sea la comparación que produzca valores diferentes, es el problema que provocó el error de validación. Tenga en cuenta que los números de los elementos en estas secciones rara vez corresponden a los números de los ITP, y los elementos con números similares enactualMeasurements
ypolicyMeasurements
pueden representar ITP diferentes. Por ejemplo, en la secuencia de inicio inicial de Windows y Linux, el elemento3
enactualMeasurements
y el elemento2
enpolicyMeasurements
representan PCR7.Verifique los eventos de monitoreo de integridad para determinar qué representa el PCR modificado e investigue si se trata de un cambio esperado.
Actualización de la línea base de la política de integridad
La línea base de la política de integridad inicial se deriva de la imagen de inicio de confianza implícita cuando se crea la instancia. La actualización de la línea base actualiza la línea base de la política de integridad utilizando la configuración de instancia actual. La instancia de VM debe estar ejecutándose cuando actualice la línea base.
Debe actualizar la línea de base después de cualquier cambio planificado específico de arranque en la configuración de la instancia, como actualizaciones del kernel o instalación del controlador del kernel, ya que esto provocará fallas en la validación de la integridad. Si tiene un error inesperado en la validación de integridad, debe investigar el motivo del error y estar preparado para detener la instancia si es necesario.
Debe tener el permiso setShieldedInstanceIntegrityPolicy
para poder actualizar la línea base de la política de integridad.
Utilice el siguiente procedimiento para actualizar la línea base de la política de integridad.
nube de gcloud
Actualice la línea base de la política de integridad de la instancia de VM mediante el comando compute instances update
con el indicador --shielded-learn-integrity-policy
.
El siguiente ejemplo restablece la línea base de la política de integridad para la instancia de VM my-instance :
gcloud compute instances update INSTANCE_NAME \
--zone=ZONE \
--shielded-learn-integrity-policy
Reemplace lo siguiente:
- INSTANCE_NAME : nombre de la máquina virtual.
- ZONE : Zona donde existe la VM.
API
Actualice la línea base de la política de integridad de la instancia de VM mediante el elemento del cuerpo de la solicitud updateAutoLearnPolicy
con el método setShieldedInstanceIntegrityPolicy
.
El siguiente ejemplo restablece la línea base de la política de integridad para una instancia de VM.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/setShieldedInstanceIntegrityPolicy?key=YOUR_API_KEY
{
"updateAutoLearnPolicy": true
}
Reemplace lo siguiente:
- PROJECT_ID : ID del proyecto de su proyecto donde existe la VM.
- INSTANCE_NAME : nombre de la máquina virtual.
- ZONE : Zona donde existe la VM.
- YOUR_API_KEY : una clave API que le permite acceder a la API.
¿Qué sigue?
- Lea más sobre las funciones de seguridad que ofrece Shielded VM.
- Obtenga más información sobre cómo modificar opciones en una instancia de VM protegida .
- Conozca un enfoque para automatizar las respuestas a eventos de monitoreo de integridad .