Method: instanceGroupManagers.createInstances

Creates instances with per-instance configurations in this managed instance group. Instances are created using the current instance template. The

create instances

operation is marked

DONE

if the

createInstances

request is successful. The underlying actions take additional time. You must separately verify the status of the

creating

or actions with the listmanagedinstances method.

HTTP request

POST https://compute.s3nsapis.fr/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/createInstances

The URL uses gRPC Transcoding syntax. To know more about valid error responses that can be thrown by this HTTP request, please refer to the service error catalog

Path parameters

Parameters
project

string

Project ID for this request.

zone

string

The name of the zone where the managed instance group is located. It should conform to RFC1035.

instanceGroupManager

string

The name of the managed instance group. It should conform to RFC1035.

Authorization requires the following IAM permission on the specified resource instanceGroupManager:

  • compute.instanceGroupManagers.update

Query parameters

Parameters
requestId

string

An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.

For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request.

The request ID must be a valid UUID with the exception that zero UUID is not supported (

00000000-0000-0000-0000-000000000000

).

Request body

The request body contains data with the following structure:

JSON representation
{
  "instances": [
    {
      "name": string,
      "preservedState": {
        "disks": {
          string: {
            object (PreservedDisk)
          },
          ...
        },
        "metadata": {
          string: string,
          ...
        },
        "internalIPs": {
          string: {
            object (PreservedNetworkIp)
          },
          ...
        },
        "externalIPs": {
          string: {
            object (PreservedNetworkIp)
          },
          ...
        }
      },
      "status": enum (ApplicationStatus),
      "fingerprint": string
    }
  ]
}
Fields
instances[].name

string

The name of a per-instance configuration and its corresponding instance. Serves as a merge key during

instanceGroupManagers.updatePerInstanceConfigs

operations, that is, if a per-instance configuration with the same name exists then it will be updated, otherwise a new one will be created for the VM instance with the same name. An attempt to create a per-instance configuration for a VM instance that either doesn't exist or is not part of the group will result in an error.

instances[].preservedState.disks

map (key: string, value: object (PreservedDisk))

Preserved disks defined for this instance. This map is keyed with the device names of the disks.

instances[].preservedState.metadata

map (key: string, value: string)

Preserved metadata defined for this instance.

instances[].preservedState.internalIPs

map (key: string, value: object (PreservedNetworkIp))

Preserved internal IPs defined for this instance. This map is keyed with the name of the network interface.

instances[].preservedState.externalIPs

map (key: string, value: object (PreservedNetworkIp))

Preserved external IPs defined for this instance. This map is keyed with the name of the network interface.

instances[].status

enum (ApplicationStatus)

The status of applying this per-instance configuration on the corresponding managed instance.

instances[].fingerprint

string (bytes format)

Fingerprint of this per-instance config. This field can be used in optimistic locking. It is ignored when inserting a per-instance config. An up-to-date fingerprint must be provided in order to update an existing per-instance configuration or the field needs to be unset.

A base64-encoded string.

Response body

If successful, the response body contains a newly created instance of Operation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/compute
  • https://www.googleapis.com/auth/cloud-platform

For more information, see the Authentication Overview.