Ce document explique comment configurer les performances réseau de niveau 1 pour certaines instances de machines virtuelles (VM) dans Google Distributed Cloud (GDC) air-gapped. Les VM avec configuration réseau Tier 1 sont particulièrement utiles pour les charges de travail de calcul distribuées et volumineuses qui impliquent des communications intensives entre les nœuds. Cela inclut par exemple le calcul hautes performances (HPC), le machine learning (ML) et le deep learning (DL).
Avant de commencer
Pour utiliser les commandes de l'interface de ligne de commande (CLI) gdcloud, assurez-vous d'avoir téléchargé, installé et configuré la CLI gdcloud.
Toutes les commandes pour Distributed Cloud utilisent la CLI gdcloud ou kubectl et nécessitent un environnement de système d'exploitation (OS).
Obtenir le chemin d'accès au fichier kubeconfig
Pour exécuter des commandes sur le serveur de l'API Management, assurez-vous de disposer des ressources suivantes :
Connectez-vous et générez le fichier kubeconfig pour le serveur d'API Management si vous n'en avez pas.
Utilisez le chemin d'accès au fichier kubeconfig du serveur de l'API Management pour remplacer
MANAGEMENT_API_SERVERdans ces instructions.
Demander des autorisations et un accès
Pour effectuer les tâches listées sur cette page, vous devez disposer du rôle Administrateur VirtualMachine du projet. Suivez les étapes pour vérifier que vous disposez du rôle Administrateur VirtualMachine du projet (project-vm-admin) dans l'espace de noms du projet dans lequel réside la VM.
Pour les opérations sur les VM à l'aide de la console GDC ou de la CLI gdcloud, demandez à votre administrateur IAM de projet de vous attribuer le rôle Administrateur VirtualMachine du projet et le rôle Lecteur du projet (project-viewer).
Limites
La mise en réseau Tier 1 est compatible avec les types de machines N2, N3, N4, A2 et A3 qui disposent d'au moins quatre processeurs virtuels.
Niveaux de bande passante
La limite de bande passante d'entrée et de sortie représente la quantité maximale de données possible par unité de temps, comme les gigabits par seconde (Gbit/s), que GDC autorise une instance de VM à transmettre ou à recevoir depuis ses interfaces réseau. La bande passante inclut les données transférées entre les instances de VM et le stockage d'objets.
GDC est soumis aux limites de bande passante suivantes :
- La limite de bande passante par défaut est de 10 Gbit/s.
- La mise en réseau Tier 1 augmente la limite de bande passante de sortie maximale pour les instances de calcul. La limite de bande passante de sortie maximale varie de 16 à 25 Gbit/s, en fonction de la taille et du type de machine de votre instance.
- La bande passante de sortie réelle est toujours inférieure ou égale à la limite de bande passante de sortie.
Pour obtenir la bande passante de sortie la plus élevée possible, toutes les conditions suivantes doivent être remplies :
- Les instances de calcul d'envoi et de réception doivent se trouver dans la même zone.
- Les paquets envoyés entre les instances doivent utiliser des adresses IP internes de destination.
- Le nombre de flux TCP doit être compris entre 4 et 128.
- Le déchargement de la segmentation par TCP (TSO) doit être activé sur les instances d'envoi, et le déchargement de réception générique (GRO) doit être activé sur les instances de réception.
VM N2 et N3
| Processeurs virtuels | Adresse IP interne | Adresse IP interne de niveau 1 |
|---|---|---|
| 2 | 10 Gbit/s | Non applicable |
| 4 | 10 Gbit/s | Non applicable |
| 8 | 10 Gbit/s | 16 Gbit/s |
| 12 | 10 Gbit/s | 25 Gbit/s |
| 16 | 10 Gbit/s | 25 Gbit/s |
| 32 | 10 Gbit/s | 25 Gbit/s |
| 64 | 10 Gbit/s | 25 Gbit/s |
VM N4
| Processeurs virtuels | Adresse IP interne | Adresse IP interne de niveau 1 |
|---|---|---|
| 4 | 10 Gbit/s | Non applicable |
| 8 | 10 Gbit/s | Non applicable |
| 16 | 10 Gbit/s | 25 Gbit/s |
| 32 | 10 Gbit/s | 25 Gbit/s |
| 48 | 10 Gbit/s | 25 Gbit/s |
| 64 | 10 Gbit/s | 25 Gbit/s |
| 80 | 10 Gbit/s | 25 Gbit/s |
| 160 | 10 Gbit/s | 25 Gbit/s |
VM A2
| Processeurs virtuels | Adresse IP interne | Adresse IP interne de niveau 1 |
|---|---|---|
| 12 | 10 Gbit/s | 18 Gbit/s |
| 24 | 10 Gbit/s | 25 Gbit/s |
VM A3
| Processeurs virtuels | Adresse IP interne | Adresse IP interne de niveau 1 |
|---|---|---|
| 28 | 10 Gbit/s | 25 Gbit/s |
| 56 | 10 Gbit/s | 25 Gbit/s |
| 112 | 10 Gbit/s | 25 Gbit/s |
Configurer une VM avec la mise en réseau de niveau 1
Créez des instances et des conteneurs qui utilisent la mise en réseau de niveau 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
Remplacez les éléments suivants :
| Variable | Définition |
|---|---|
VM_NAME |
Nom de la nouvelle VM. Le nom ne doit contenir que des caractères alphanumériques et des tirets, et ne doit pas dépasser 53 caractères. |
MACHINE_TYPE |
Type de machine prédéfini pour la nouvelle VM. Sélectionnez un type de machine disponible :
gdcloud compute machine-types list
|
BOOT_DISK_IMAGE_NAME |
Nom de l'image à utiliser pour le nouveau disque de démarrage de la VM. |
BOOT_DISK_SIZE |
Taille du disque de démarrage, par exemple 20GB.Cette valeur doit toujours être supérieure ou égale à la valeur minimumDiskSize de l'image de disque de démarrage. |
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
Remplacez les éléments suivants :
| Variable | Définition |
|---|---|
MANAGEMENT_API_SERVER |
Fichier kubeconfig du serveur de l'API Management. |
PROJECT |
Projet Distributed Cloud dans lequel créer la VM. |
VM_BOOT_DISK_NAME |
Nom du nouveau disque de démarrage de la VM. |
BOOT_DISK_IMAGE_NAME |
Nom de l'image à utiliser pour le nouveau disque de démarrage de la VM. |
BOOT_DISK_SIZE |
Taille du disque de démarrage, par exemple 20Gi.Cette valeur doit toujours être supérieure ou égale à la valeur minimumDiskSize de l'image de disque de démarrage. |
VM_NAME |
Nom de la nouvelle VM. Le nom ne doit contenir que des caractères alphanumériques et des tirets, et ne doit pas dépasser 53 caractères. |
MACHINE_TYPE |
Type de machine prédéfini pour la nouvelle VM. Sélectionnez un type de machine disponible :
kubectl --kubeconfig MANAGEMENT_API_SERVER
get virtualmachineimage.virtualmachine.gdc.goog --namespace PROJECT
|
BOOT_DISK_AUTO_DELETE |
true ou false, indiquant si le disque de démarrage est automatiquement supprimé lorsque l'instance de VM est supprimée. |