Ejecuta un vTPM en cargas de trabajo de Confidential GKE Node


En esta página, se muestra cómo usar los módulos de plataforma de confianza virtual (vTPM) con cargas de trabajo estándar de Google Kubernetes Engine (GKE) que se ejecutan en nodos de GKE confidenciales. Los vTPM proporcionan integridad de la plataforma junto con otras funciones de seguridad, como la certificación remota, el sellado secreto y la generación de números aleatorios. En esta página, aprenderás a instalar un complemento de dispositivo y hacer que los vTPM sean visibles para las aplicaciones de GKE.

Esta página está dirigida a ingenieros de seguridad que deseen acceder de forma remota a las funciones de seguridad de los vTPM en aplicaciones de GKE.

Antes de leer esta página, asegúrate de estar familiarizado con las siguientes funciones:

Antes de comenzar

Antes de comenzar, asegúrate de haber realizado las siguientes tareas:

  • Habilita la API de Google Kubernetes Engine.
  • Habilitar la API de Google Kubernetes Engine
  • Si deseas usar Google Cloud CLI para esta tarea, instala y, luego, inicializa gcloud CLI. Si ya instalaste gcloud CLI, ejecuta gcloud components update para obtener la versión más reciente.

Disponibilidad

Puedes usar Confidential GKE Nodes en las siguientes condiciones:

Crea un clúster de Confidential GKE Nodes

Puedes crear un clúster nuevo con Confidential GKE Nodes habilitados mediante gcloud CLI o la consola de Google Cloud. Si habilitas Confidential GKE Node a nivel de clúster, todos los nodos del clúster se convierten en Confidential VMs.

gcloud

Cuando crees un clúster nuevo, especifica la opción --enable-confidential-nodes en el siguiente comando:

gcloud container clusters create CLUSTER_NAME \
    --machine-type=MACHINE_TYPE \
    --enable-confidential-nodes

Reemplaza lo siguiente:

  • CLUSTER_NAME: Es el nombre del clúster nuevo.
  • MACHINE_TYPE: Es el tipo de máquina para el grupo de nodos predeterminado de tu clúster, que debe ser el tipo de máquina N2D o C2D.

Console

  1. Ve a la página de Google Kubernetes Engine en la consola de Google Cloud.

    Ir a Google Kubernetes Engine

  2. Haz clic en Crear.

  3. En la sección Estándar, haz clic en Configurar.

  4. En el menú de navegación, en Clúster, haz clic en Seguridad.

  5. Selecciona la casilla de verificación Habilitar Confidential GKE Node.

  6. Para configurar otras secciones del clúster, sigue las instrucciones en Crea un clúster regional.

  7. Haz clic en Crear.

Después de crear un clúster con Confidential GKE Node, cualquier grupo de nodos creado en este clúster solo puede usar nodos confidenciales. No puedes crear grupos de nodos normales en clústeres con Confidential GKE Nodes habilitado. Tampoco puedes inhabilitar Confidential GKE Nodes en grupos de nodos individuales cuando habilitas Confidential GKE Nodes a nivel de clúster.

Ejecuta un vTPM en las cargas de trabajo de Confidential GKE Nodes

Para ejecutar vTPM en las cargas de trabajo de Confidential GKE Nodes, Google proporciona un DaemonSet para aplicar a los clústeres de Confidential GKE Nodes. Ejecuta el siguiente comando para implementar el DaemonSet:

kubectl create -f https://raw.githubusercontent.com/google/cc-device-plugin/main/manifests/cc-device-plugin.yaml

Configura Pods para ver el vTPM

Usa un límite de recursos para configurar los pods para que vean el vTPM. Especifica el límite de recursos como 1 en una especificación de pod con los pares clave-valor siguientes:

  • Clave: google.com/cc
  • Valor: 1

Ejemplo de una especificación de Pod que usa vTPM:

apiVersion: v1
kind: Pod
metadata:
  name: my-vtpm-pod
spec:
  containers:
  - name: nginx
    image: nginx
    ports:
    - containerPort: 8080
      name: http
    resources:
      limits:
        google.com/cc: 1

¿Qué sigue?