Lorsque vous créez une instance de VM, Distributed Cloud crée automatiquement un disque persistant de démarrage avec les configurations par défaut. Vous devez également créer un disque de démarrage pour la VM. Vous pouvez utiliser une image publique ou une image personnalisée.
Si vous avez besoin de disques de stockage de données supplémentaires pour vos instances, ajoutez un disque persistant à votre VM.
Ce document est destiné aux développeurs des groupes d'administrateurs de plate-forme ou d'opérateurs d'applications qui créent des disques de démarrage personnalisés pour les VM. Pour en savoir plus, consultez la documentation sur les audiences pour GDC sous air gap.
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 d'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 d'API Management pour remplacer
MANAGEMENT_API_SERVERdans ces instructions.
Demander des rôles IAM
Contactez l'administrateur de projet IAM pour demander les rôles suivants sur votre projet :
Administrateur de projet de machine virtuelle (
project-vm-admin) : créez, modifiez, listez et supprimez des VM standards et hautes performances dans l'espace de noms du projet.project-viewer(Lecteur de projet) : permet d'afficher toutes les ressources de l'espace de noms du projet.
Tous les rôles de VM doivent être liés à l'espace de noms du projet dans lequel réside la VM. Suivez la procédure pour valider votre accès.
Créer un disque de démarrage
Suivez les procédures décrites sur cette page pour créer des disques de démarrage que vous pourrez utiliser ultérieurement pour créer des VM.
Créer un disque de démarrage à partir d'une image
Vous pouvez créer un disque persistant de démarrage autonome indépendamment du processus de création d'instance et l'associer ultérieurement à une instance. Cette section explique comment créer un disque de démarrage à partir d'une image d'OS fournie par GDC ou d'une image d'OS personnalisée.
Créer un disque de démarrage à partir d'une image fournie par GDC
Avant de créer un disque de démarrage à l'aide d'une image fournie par GDC, consultez la liste des images disponibles. Créez ensuite un disque de démarrage avec l'image fournie.
gdcloud
Répertoriez toutes les images disponibles et leur taille de disque minimale :
gdcloud compute images listCette commande inclut à la fois les images fournies par Distributed Cloud et les images personnalisées. Choisissez-en un dans l'espace de noms
vm-system.Sélectionnez une image fournie par Distributed Cloud pour créer le disque de VM :
gdcloud compute disks create BOOT_DISK_NAME \ --project=PROJECT \ --size=DISK_SIZE \ --image=IMAGE_NAME \ --image-project=vm-systemRemplacez les variables à l'aide des définitions suivantes :
Variable Définition BOOT_DISK_NAMENom du disque de démarrage. PROJECTProjet GDC dans lequel créer le disque de démarrage. DISK_SIZELa taille du disque de démarrage doit être au moins égale à la minimumDiskSizede l'image.IMAGE_NAMENom de l'image.
kubectl
Répertoriez toutes les images disponibles fournies par GDC :
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n vm-system \ get virtualmachineimages.virtualmachine.gdc.googObtenez le
minimumDiskSized'une image spécifique fournie par GDC. La taille du disque de démarrage personnalisé créé doit être d'au moinsminimumDiskSize:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n vm-system \ get virtualmachineimages.virtualmachine.gdc.goog IMAGE_NAME \ -ojsonpath='{.spec.minimumDiskSize}'Créez un objet
VirtualMachineDisk:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ apply -f - <<EOF apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: BOOT_DISK_NAME spec: source: image: name: IMAGE_NAME namespace: vm-system size: DISK_SIZE EOFRemplacez les variables à l'aide des définitions suivantes :
Variable Définition MANAGEMENT_API_SERVERFichier kubeconfig du serveur d'API Management. IMAGE_NAMENom de l'image. PROJECTProjet GDC dans lequel créer le disque de démarrage. BOOT_DISK_NAMENom du disque de démarrage. DISK_SIZELa taille du disque de démarrage doit être au moins égale à la minimumDiskSizede l'image.
Créer un disque de démarrage à partir d'une image personnalisée
Une image personnalisée appartient exclusivement à votre projet. Pour créer une VM avec une image personnalisée, vous devez d'abord créer une image personnalisée dans le même projet si vous n'en avez pas déjà une.
Configurez les rôles IAM nécessaires pour accéder aux images personnalisées de votre projet, si vous ne l'avez pas encore fait. Suivez ensuite ces instructions.
gdcloud
Répertoriez toutes les images personnalisées et leur taille de disque minimale :
gdcloud compute images list \ --project=PROJECTSélectionnez une image personnalisée pour créer le disque de la VM :
gdcloud compute disks create BOOT_DISK_NAME \ --project=PROJECT \ --size=DISK_SIZE \ --image=IMAGE_NAME \ --image-project=PROJECTRemplacez les variables à l'aide des définitions suivantes :
Variable Définition BOOT_DISK_NAMENom du disque de démarrage. PROJECTProjet GDC dans lequel créer le disque de démarrage. DISK_SIZELa taille du disque de démarrage doit être au moins égale à la minimumDiskSizede l'image.IMAGE_NAMENom de l'image.
API
Répertoriez toutes les images personnalisées :
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachineimages.virtualmachine.gdc.googObtenez l'
minimumDiskSized'une image personnalisée spécifique. La taille du disque de démarrage personnalisé créé doit être au moins égale àminimumDiskSize:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n vm-system \ get virtualmachineimages.virtualmachine.gdc.goog IMAGE_NAME \ -ojsonpath='{.spec.minimumDiskSize}'Créez un objet
VirtualMachineDisk:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ apply -f - <<EOF apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: BOOT_DISK_NAME spec: source: image: name: IMAGE_NAME namespace: PROJECT size: DISK_SIZE EOFRemplacez les variables en utilisant les définitions suivantes :
Variable Définition MANAGEMENT_API_SERVERFichier kubeconfig du serveur d'API Management. IMAGE_NAMENom de l'image choisi à partir de la commande Répertorier toutes les images personnalisées. PROJECTProjet GDC dans lequel créer le disque de démarrage. BOOT_DISK_NAMENom du disque de démarrage. DISK_SIZELa taille du disque de démarrage doit être au moins égale à la minimumDiskSizede l'image.