2017-08-30 2 views
0

J'ai une instance que je peux mettre à niveau et rétrograder le type de machine de la commande gcloud. Par exemple, je peux faireInstance de mise à niveau avec un GPU de la commande gcloud

gcloud compute instances set-machine-type instance-name --machine-type f1-micro 

de déclasser une instance existante et

gcloud compute instances set-machine-type ubuntu --machine-type n1-standard-1 

pour mettre à niveau le type de machine. Mais je dois également attacher un GPU quand je mise à niveau. Je peux le faire sur l'interface web mais je dois le faire en ligne de commande.

Répondre

1

Il est possible de joindre un GPU m API mais il semble qu'il n'est pas possible de détacher un après l'avoir attaché.

Voici comment associer un GPU à une instance existante.

POST https://www.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/ubuntu/setMachineResources 

{ 
    "guestAccelerators": [ 
    { 
     "acceleratorType": "https://www.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/acceleratorTypes/nvidia-tesla-k80", 
     "acceleratorCount": 1 
    } 
    ] 
} 

Voici la référence à la demande de fonctionnalité à effectuer pour détacher un GPU.

https://issuetracker.google.com/65267943

1

Actuellement, il n'est pas possible d'attacher un GPU à une instance existante en utilisant la commande "gcloud". Vous pouvez attacher GPU en utilisant la console cloud, option "EDIT" de l'instance quand elle est dans l'état d'arrêt. Une autre façon d'attacher GPU à une instance existante (stoppée) est de passer par API [1] [2].

Voici la syntaxe d'URL qui doit être défini pour guestAccelerators de propriété [] de acceleratorType:.

https://www.googleapis.com/compute/beta/projects/project-id/zones/zone-where-instance-is-deployed/acceleratorTypes/nvidia-tesla-k80

Exemple:

https://www.googleapis.com/compute/beta/projects/test-project/zones/us-west1-b/acceleratorTypes/nvidia-tesla-k80

[1] https://developers.google.com/apis-explorer/#search/compute%20engine/compute/v1/compute.instances.setMachineResources

[2] https://cloud.google.com/compute/docs/reference/beta/instances/setMachineResources