Configura redes de nivel 1 para una VM

En este documento, se describe cómo configurar el rendimiento de redes de nivel 1 para ciertas instancias de máquina virtual (VM) en Google Distributed Cloud (GDC) aislado. Las VMs con opciones de configuración de red de nivel 1 son especialmente útiles para cargas de trabajo de procesamiento grandes y distribuidas con mucha comunicación entre nodos, como la computación de alto rendimiento (HPC), el aprendizaje automático (AA) y el aprendizaje profundo (DL).

Antes de comenzar

Para usar los comandos de la interfaz de línea de comandos (CLI) de gdcloud, asegúrate de haber descargado, instalado y configurado la CLI de gdcloud. Todos los comandos de Distributed Cloud usan la CLI de gdcloud o kubectl y requieren un entorno de sistema operativo (SO).

Obtén la ruta de acceso del archivo kubeconfig

Para ejecutar comandos en el servidor de la API de Management, asegúrate de tener los siguientes recursos:

  1. Accede y genera el archivo kubeconfig para el servidor de la API de Management si no tienes uno.

  2. Usa la ruta de acceso al archivo kubeconfig del servidor de la API de administración para reemplazar MANAGEMENT_API_SERVER en estas instrucciones.

Solicita permisos y acceso

Para realizar las tareas que se indican en esta página, debes tener el rol de administrador de la máquina virtual del proyecto. Sigue los pasos para verificar que tienes el rol de administrador de máquinas virtuales del proyecto (project-vm-admin) en el espacio de nombres del proyecto en el que reside la VM.

Para las operaciones de VM con la consola de GDC o la CLI de gdcloud, solicita a tu administrador de IAM del proyecto que te asigne el rol de administrador de máquinas virtuales del proyecto y el rol de visualizador del proyecto (project-viewer).

Limitaciones

Las redes de nivel 1 son compatibles con los tipos de máquinas N2, N3, N4, A2 y A3 que tienen al menos 4 CPUs virtuales.

Niveles de ancho de banda

El límite de ancho de banda de entrada y salida representa la cantidad máxima posible de datos por unidad de tiempo, como gigabits por segundo (Gbps), que GDC permite que una instancia de VM transmita o reciba desde sus interfaces de red (NIC). El ancho de banda incluye los datos transferidos entre las instancias de VM y el almacenamiento de objetos.

GDC tiene los siguientes límites de ancho de banda:

  • El límite de ancho de banda predeterminado es de 10 Gbps.
  • Las redes de nivel 1 aumentan el límite de ancho de banda de salida máximo para las instancias de procesamiento. El límite máximo de ancho de banda de salida varía de 16 Gbps a 25 Gbps, según el tamaño y el tipo de máquina de tu instancia.
  • El ancho de banda de salida real siempre es menor o igual que el límite de ancho de banda de salida.

Para lograr el ancho de banda de salida más alto posible, todas las siguientes condiciones deben ser verdaderas:

  • Las instancias de procesamiento de envío y recepción deben estar en la misma zona.
  • Los paquetes enviados entre las instancias deben usar destinos de direcciones IP internas.
  • La cantidad de flujos de TCP debe estar entre 4 y 128.
  • Las instancias de envío deben tener habilitada la descarga de segmentación de TCP (TSO), y las instancias de recepción deben tener habilitada la descarga de recepción genérica (GRO).

VMs N2 y N3

CPU virtuales IP interna IP interna de nivel 1
2 10 Gbps No aplicable
4 10 Gbps No aplicable
8 10 Gbps 16 Gbps
12 10 Gbps 25 Gbps
16 10 Gbps 25 Gbps
32 10 Gbps 25 Gbps
64 10 Gbps 25 Gbps

VMs N4

CPU virtuales IP interna IP interna de nivel 1
4 10 Gbps No aplicable
8 10 Gbps No aplicable
16 10 Gbps 25 Gbps
32 10 Gbps 25 Gbps
48 10 Gbps 25 Gbps
64 10 Gbps 25 Gbps
80 10 Gbps 25 Gbps
160 10 Gbps 25 Gbps

VM A2

CPU virtuales IP interna IP interna de nivel 1
12 10 Gbps 18 Gbps
24 10 Gbps 25 Gbps

VMs A3

CPU virtuales IP interna IP interna de nivel 1
28 10 Gbps 25 Gbps
56 10 Gbps 25 Gbps
112 10 Gbps 25 Gbps

Configura una VM con redes de nivel 1

Crea instancias y contenedores que usan redes de nivel 1:

gdcloud

gdcloud compute instances create VM_NAME \
    --machine-type=MACHINE_TYPE \
    --image=BOOT_DISK_IMAGE_NAME --image-project=vm-system \
    --boot-disk-size=BOOT_DISK_SIZE \
    --network-performance-tier=tier_1

Reemplaza lo siguiente:

VariableDefinición
VM_NAME Nombre de la VM nueva El nombre solo debe contener caracteres alfanuméricos y guiones, y no debe tener más de 53 caracteres.
MACHINE_TYPE Es el tipo de máquina predefinido para la VM nueva. Selecciona un tipo de máquina disponible:
gdcloud compute machine-types list
BOOT_DISK_IMAGE_NAME Nombre de la imagen que se usará para el disco de arranque de la VM nueva.
BOOT_DISK_SIZE Tamaño del disco de arranque, como 20GB.
Este valor siempre debe ser mayor o igual que el minimumDiskSize de la imagen del disco de arranque.

API

kubectl --kubeconfig MANAGEMENT_API_SERVER \
    apply -n PROJECT -f - <<EOF
apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineDisk
metadata:
  name: VM_BOOT_DISK_NAME
spec:
  source:
    image:
      name: BOOT_DISK_IMAGE_NAME
      namespace: vm-system
  size: BOOT_DISK_SIZE
---
apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachine
metadata:
  name: VM_NAME
spec:
  compute:
    virtualMachineType: MACHINE_TYPE
  disks:
    - virtualMachineDiskRef:
        name: VM_BOOT_DISK_NAME
      boot: true
      autoDelete: BOOT_DISK_AUTO_DELETE
  network:
    networkPerformanceTier: Tier_1
EOF

Reemplaza lo siguiente:

VariableDefinición
MANAGEMENT_API_SERVER Es el archivo kubeconfig del servidor de la API de administración.
PROJECT Es el proyecto de Distributed Cloud en el que se creará la VM.
VM_BOOT_DISK_NAME Nombre del nuevo disco de arranque de la VM.
BOOT_DISK_IMAGE_NAME Nombre de la imagen que se usará para el disco de arranque de la VM nueva.
BOOT_DISK_SIZE Tamaño del disco de arranque, como 20Gi.
Este valor siempre debe ser mayor o igual que el minimumDiskSize de la imagen del disco de arranque.
VM_NAME Nombre de la VM nueva El nombre solo debe contener caracteres alfanuméricos y guiones, y no debe tener más de 53 caracteres.
MACHINE_TYPE Es el tipo de máquina predefinido para la VM nueva. Selecciona un tipo de máquina disponible:
kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachineimage.virtualmachine.gdc.goog --namespace PROJECT
BOOT_DISK_AUTO_DELETE true o false, que indica si el disco de arranque se borra automáticamente cuando se borra la instancia de VM.