Questa guida utilizza un esempio per insegnare come aggiungere l'output di drest a una scheda API.
Creazione di una VM client
Questo esempio crea una VM client (vm-client
) nella stessa regione delle VM di backend (server). Il client viene utilizzato per convalidare la configurazione del bilanciatore del carico e dimostrare il comportamento previsto come descritto nella sezione test.
Console
- Vai alla pagina Istanze VM in Google Cloud Console.
Vai alla pagina Istanze VM - Fai clic su Crea istanza.
- Imposta il Nome su
vm-client
. - Imposta la zona su
us-west1-a
. - Fai clic su Gestione, sicurezza, dischi, networking, single-tenancy e apporta le seguenti modifiche:
- Fai clic su Networking e aggiungi il tag
allow-ssh
a Tag di rete. - Fai clic sul pulsante di modifica in Interfacce di rete e apporta le seguenti modifiche, poi fai clic su Fine:
- Rete:
lb-network
- Subnet:
lb-subnet
- IP interno principale: Temporaneo (automatico)
- IP esterno: Temporaneo
- Rete:
- Fai clic su Networking e aggiungi il tag
- Fai clic su Crea.
gcloud
La VM client può trovarsi in qualsiasi zona della stessa area geografica del bilanciatore del carico e può utilizzare qualsiasi subnet della stessa area geografica. In questo esempio, il client si trova nella zona us-west1-a
e utilizza la stessa subnet delle VM di backend.
gcloud compute instances create vm-client \ --zone=us-west1-a \ --image-family=debian-10 \ --image-project=debian-cloud \ --tags=allow-ssh \ --subnet=lb-subnet
api
Esegui una richiesta POST
al metodo instances.insert
.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- `PROJECT_ID`: il tuo ID progetto
- `ZONE`: us-west1-a
- `NETWORK`: lb-network
- `SUBNET`: lb-subnet
Metodo HTTP e URL:
POST https://www.googleapis.com/compute/v1/projects/`PROJECT_ID`/zones/`ZONE`/instances
Corpo JSON richiesta:
{ "kind": "compute#instance", "name": "`VM_NAME`", "zone": "projects/`PROJECT_ID`/zones/`ZONE`", "machineType": "projects/`PROJECT_ID`/zones/`ZONE`/machineTypes/n1-standard-1", "displayDevice": { "enableDisplay": false }, "metadata": { "kind": "compute#metadata", "items": [] }, "tags": { "items": [] }, "disks": [ { "kind": "compute#attachedDisk", "type": "PERSISTENT", "boot": true, "mode": "READ_WRITE", "autoDelete": true, "deviceName": "`VM_NAME`", "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/debian-10-buster-v20220719", "diskType": "projects/`PROJECT_ID`/zones/`ZONE`/diskTypes/pd-standard", "diskSizeGb": "10" }, "diskEncryptionKey": {} } ], "canIpForward": false, "networkInterfaces": [ { "kind": "compute#networkInterface", "subnetwork": "projects/`PROJECT_ID`/regions/us-central1/subnetworks/`SUBNET`", "accessConfigs": [ { "kind": "compute#accessConfig", "name": "External NAT", "type": "ONE_TO_ONE_NAT", "networkTier": "PREMIUM" } ], "aliasIpRanges": [] } ], "description": "", "labels": {}, "scheduling": { "preemptible": false, "onHostMaintenance": "MIGRATE", "automaticRestart": true, "nodeAffinities": [] }, "deletionProtection": false, "reservationAffinity": { "consumeReservationType": "ANY_RESERVATION" }, "serviceAccounts": [ { "email": "893700239234-compute@developer.gserviceaccount.com", "scopes": [ "https://www.googleapis.com/auth/devstorage.read_only", "https://www.googleapis.com/auth/logging.write", "https://www.googleapis.com/auth/monitoring.write", "https://www.googleapis.com/auth/servicecontrol", "https://www.googleapis.com/auth/service.management.readonly", "https://www.googleapis.com/auth/trace.append" ] } ] }
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "id": "8061072881391620712", "name": "operation-1565289606387-58f9f62f5989c-e582f586-6d22f38d", "zone": "https://www.googleapis.com/compute/v1/projects/`PROJECT_ID`/zones/`ZONE`", "operationType": "insert", "targetLink": "https://www.googleapis.com/compute/v1/projects/`PROJECT_ID`/zones/`ZONE`/instances/`VM_NAME`", "targetId": "2977231178150564457", "status": "RUNNING", "user": "betsyl@google.com", "progress": 0, "insertTime": "2019-08-08T11:40:07.728-07:00", "startTime": "2019-08-08T11:40:07.731-07:00", "selfLink": "https://www.googleapis.com/compute/v1/projects/`PROJECT_ID`/zones/`ZONE`/operations/operation-1565289606387-58f9f62f5989c-e582f586-6d22f38d", "kind": "compute#operation" }
Passaggi successivi
- Inizia a usare drest! :)