Autoscaler

Autoscaler

Autoscalers allow you to automatically scale virtual machine instances in managed instance groups according to an autoscaling policy that you define.

Constructor

new Autoscaler(zone, name)

Parameters:
Name Type Description
zone Zone
name string
Source:
See:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const autoscaler = zone.autoscaler('autoscaler-name');

Members

name :string

Source:

zone :Zone

Parent Zone instance of this Autoscaler instance.

Source:

Methods

create(config)

Create an autoscaler.

Parameters:
Name Type Description
config object

See {Zone#createAutoscaler}.

Source:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const autoscaler = zone.autoscaler('autoscaler-name');

const config = {
  coolDown: 30,
  cpu: 80,
  loadBalance: 40,
  maxReplicas: 5,
  minReplicas: 0,
  target: 'instance-group-manager-1'
};

const callback = function(err, autoscaler, operation, apiResponse) {
  // `autoscaler` is an Autoscaler object.

  // `operation` is an Operation object that can be used to check the
  // of the request.
};

autoscaler.create(config, callback);

//-
// If the callback is omitted, we'll return a Promise.
//-
autoscaler.create(config).then(function(data) {
  const autoscaler = data[0];
  const operation = data[1];
  const apiResponse = data[2];
});

delete(callbackopt)

Delete the autoscaler.

Parameters:
Name Type Attributes Description
callback function <optional>

The callback function.

Properties
Name Type Attributes Description
err error <nullable>

An error returned while making this request.

operation Operation

An operation object that can be used to check the status of the request.

apiResponse object

The full API response.

Source:
See:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const autoscaler = zone.autoscaler('autoscaler-name');

autoscaler.delete(function(err, operation, apiResponse) {
  // `operation` is an Operation object that can be used to check the status
  // of the request.
});

//-
// If the callback is omitted, we'll return a Promise.
//-
autoscaler.delete().then(function(data) {
  const operation = data[0];
  const apiResponse = data[1];
});

exists(callback)

Check if the autoscaler exists.

Parameters:
Name Type Description
callback function

The callback function.

Properties
Name Type Attributes Description
err error <nullable>

An error returned while making this request.

exists boolean

Whether the autoscaler exists or not.

Source:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const autoscaler = zone.autoscaler('autoscaler-name');

autoscaler.exists(function(err, exists) {});

//-
// If the callback is omitted, we'll return a Promise.
//-
autoscaler.exists().then(function(data) {
  const exists = data[0];
});

get(optionsopt)

Get an autoscaler if it exists.

You may optionally use this to "get or create" an object by providing an object with autoCreate set to true. Any extra configuration that is normally required for the create method must be contained within this object as well.

Parameters:
Name Type Attributes Description
options options <optional>

Configuration object.

Properties
Name Type Description
autoCreate boolean

Automatically create the object if it does not exist. Default: false

Source:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const autoscaler = zone.autoscaler('autoscaler-name');

autoscaler.get(function(err, autoscaler, apiResponse) {
  // `autoscaler` is an Autoscaler object.
});

//-
// If the callback is omitted, we'll return a Promise.
//-
autoscaler.get().then(function(data) {
  const autoscaler = data[0];
  const apiResponse = data[1];
});

getMetadata(callbackopt)

Get the metadata of this autoscaler.

Parameters:
Name Type Attributes Description
callback function <optional>

The callback function.

Properties
Name Type Attributes Description
err error <nullable>

An error returned while making this request.

metadata object

The autoscaler's metadata.

apiResponse object

The full API response.

Source:
See:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const autoscaler = zone.autoscaler('autoscaler-name');

autoscaler.getMetadata(function(err, metadata, apiResponse) {});

//-
// If the callback is omitted, we'll return a Promise.
//-
autoscaler.getMetadata().then(function(data) {
  const metadata = data[0];
  const apiResponse = data[1];
});

setMetadata(metadata, callbackopt)

Set the autoscaler's metadata.

Parameters:
Name Type Attributes Description
metadata object

See a Firewall resource.

callback function <optional>

The callback function.

Properties
Name Type Attributes Description
err error <nullable>

An error returned while making this request.

operation Operation

An operation object that can be used to check the status of the request.

apiResponse object

The full API response.

Source:
See:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const autoscaler = zone.autoscaler('autoscaler-name');

const metadata = {
  description: 'New description'
};

autoscaler.setMetadata(metadata, function(err, operation, apiResponse) {
  // `operation` is an Operation object that can be used to check the status
  // of the request.
});

//-
// If the callback is omitted, we'll return a Promise.
//-
autoscaler.setMetadata(metadata).then(function(data) {
  const operation = data[0];
  const apiResponse = data[1];
});