En este documento se describe cómo configurar el rendimiento de la red de nivel 1 para determinadas instancias de máquina virtual (VM) en Google Distributed Cloud (GDC) air-gapped. Las máquinas virtuales con configuraciones de red de nivel 1 son especialmente útiles para cargas de trabajo de computación distribuidas de gran tamaño con muchas comunicaciones pesadas entre nodos, como la computación de alto rendimiento (HPC), el aprendizaje automático (ML) y el aprendizaje profundo (DL).
Antes de empezar
Para usar los comandos de la gdcloud interfaz de línea de comandos (CLI), asegúrate de haber descargado, instalado y configurado la gdcloud CLI.
Todos los comandos de Distributed Cloud usan la CLI gdcloud o kubectl y requieren un entorno de sistema operativo.
Obtener la ruta del archivo kubeconfig
Para ejecutar comandos en el servidor de la API Management, asegúrate de tener los siguientes recursos:
Inicia sesión y genera el archivo kubeconfig del servidor de la API Management si no tienes uno.
Usa la ruta al archivo kubeconfig del servidor de la API Management para sustituir
MANAGEMENT_API_SERVERen estas instrucciones.
Solicitar permisos y acceso
Para realizar las tareas que se indican en esta página, debes tener el rol de administrador de máquinas virtuales de proyecto. Sigue los pasos para verificar que tienes el rol de administrador de máquinas virtuales de proyecto (project-vm-admin) en el espacio de nombres del proyecto en el que reside la VM.
Para realizar operaciones con VMs mediante la consola de GDC o la CLI de gdcloud, pide al administrador de gestión de identidades y accesos de tu proyecto que te asigne el rol Administrador de VirtualMachine de proyecto y el rol Lector de proyectos (project-viewer).
Limitaciones
Las redes de nivel 1 se admiten en los tipos de máquinas N2, N3, N4, A2 y A3 que tengan al menos 4 vCPUs.
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 de sus interfaces de red (NICs). 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.
- La red de nivel 1 aumenta el límite máximo de ancho de banda de salida de las instancias de computación. El límite máximo de ancho de banda de salida oscila entre 16 y 25 Gb/s, en función del tamaño y el tipo de máquina de la instancia.
- El ancho de banda de salida real siempre es inferior o igual al límite de ancho de banda de salida.
Para conseguir el mayor ancho de banda de salida posible, deben cumplirse todas las condiciones siguientes:
- Las instancias de proceso de envío y recepción deben estar en la misma zona.
- Los paquetes enviados entre las instancias deben usar direcciones IP internas de destino.
- El número de flujos TCP debe estar entre 4 y 128.
- Las instancias de envío deben tener habilitada la descarga de segmentación TCP (TSO) y las instancias de recepción deben tener habilitada la descarga de recepción genérica (GRO).
Máquinas virtuales N2 y N3
| vCPUs | IP interna | IP interna de nivel 1 |
|---|---|---|
| 2 | 10 Gb/s | No aplicable |
| 4 | 10 Gb/s | No aplicable |
| 8 | 10 Gb/s | 16 Gbps |
| 12 | 10 Gb/s | 25 Gbps |
| 16 | 10 Gb/s | 25 Gbps |
| 32 | 10 Gb/s | 25 Gbps |
| 64 | 10 Gb/s | 25 Gbps |
Máquinas virtuales N4
| vCPUs | IP interna | IP interna de nivel 1 |
|---|---|---|
| 4 | 10 Gb/s | No aplicable |
| 8 | 10 Gb/s | No aplicable |
| 16 | 10 Gb/s | 25 Gbps |
| 32 | 10 Gb/s | 25 Gbps |
| 48 | 10 Gb/s | 25 Gbps |
| 64 | 10 Gb/s | 25 Gbps |
| 80 | 10 Gb/s | 25 Gbps |
| 160 | 10 Gb/s | 25 Gbps |
Máquinas virtuales A2
| vCPUs | IP interna | IP interna de nivel 1 |
|---|---|---|
| 12 | 10 Gb/s | 18 Gbps |
| 24 | 10 Gb/s | 25 Gbps |
Máquinas virtuales A3
| vCPUs | IP interna | IP interna de nivel 1 |
|---|---|---|
| 28 | 10 Gb/s | 25 Gbps |
| 56 | 10 Gb/s | 25 Gbps |
| 112 | 10 Gb/s | 25 Gbps |
Configurar una máquina virtual con redes de nivel 1
Crea instancias y contenedores que usen la red 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
Haz los cambios siguientes:
| Variable | Definición |
|---|---|
VM_NAME |
Nombre de la nueva VM. El nombre solo puede contener caracteres alfanuméricos y guiones, y no puede tener más de 53 caracteres. |
MACHINE_TYPE |
El tipo de máquina predefinido de la nueva VM. Selecciona un tipo de máquina disponible:
gdcloud compute machine-types list
|
BOOT_DISK_IMAGE_NAME |
Nombre de la imagen que se va a usar para el disco de arranque de la nueva VM. |
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
Haz los cambios siguientes:
| Variable | Definición |
|---|---|
MANAGEMENT_API_SERVER |
El archivo kubeconfig del servidor de la API Management. |
PROJECT |
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 va a usar para el disco de arranque de la nueva VM. |
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 nueva VM. El nombre solo puede contener caracteres alfanuméricos y guiones, y no puede tener más de 53 caracteres. |
MACHINE_TYPE |
El tipo de máquina predefinido de la nueva VM. 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 elimina automáticamente cuando se elimina la instancia de máquina virtual. |