Overview

Namespaces

  • None
  • OpenCloud
    • Autoscale
      • Resource
    • CloudMonitoring
      • Exception
      • Resource
    • Common
      • Exceptions
      • Log
      • Request
        • Response
    • Compute
    • Database
    • DNS
    • LoadBalancer
      • Resources
    • ObjectStore
      • Resource
    • Orchestration
    • Volume
  • PHP

Classes

  • AbstractResource
  • Group
  • GroupConfiguration
  • LaunchConfiguration
  • ScalingPolicy
  • Webhook
  • Overview
  • Namespace
  • Class
  • Tree
  • Download

Class Group

An autoscaling group is monitored by Rackspace Cloud Monitoring. When Monitoring triggers an alarm for high utilization within the autoscaling group, a webhook is triggered. The webhook stimulates the autoscale service which consults a policy in accordance with the webhook. The policy determines how many additional cloud servers should be added or removed in accordance with the alarm.

There are three components to Autoscale:

  • The Scaling Group Configuration ($this->groupConfiguration)
  • The Scaling Group's Launch Configuration ($this->launchConfiguration)
  • The Scaling Group's Policies ($this->scalingPolicies)
OpenCloud\Common\Base
Extended by OpenCloud\Common\PersistentObject
Extended by OpenCloud\Autoscale\Resource\AbstractResource
Extended by OpenCloud\Autoscale\Resource\Group
Namespace: OpenCloud\Autoscale\Resource
Link: https://github.com/rackerlabs/otter/blob/master/doc/getting_started.rst
Link: http://docs.autoscale.apiary.io/
Located at OpenCloud/Autoscale/Resource/Group.php
Methods summary
public HttpResponse
# create( array $params = array() )

Creates a new object

Creates a new object

Parameters

$params
array
$params array of values to set when creating the object

Returns

HttpResponse

Throws

VolumeCreateError
if HTTP status is not Success

Overrides

OpenCloud\Common\PersistentObject::create()
public HttpResponse
# update( array $params = array() )

Updates an existing object

Updates an existing object

Parameters

$params
array
$params array of values to set when updating the object

Returns

HttpResponse

Throws

VolumeCreateError
if HTTP status is not Success

Overrides

OpenCloud\Common\PersistentObject::update()
public object|boolean
# getState( )

Get the current state of the scaling group, including the current set of active entities, the number of pending entities, and the desired number of entities.

Get the current state of the scaling group, including the current set of active entities, the number of pending entities, and the desired number of entities.

Returns

object|boolean

Throws

OpenCloud\Common\Exceptions\HttpError
OpenCloud\Common\Exceptions\ServerActionError
public OpenCloud\Autoscale\Resource\GroupConfiguration
# getGroupConfig( )

Get the group configuration for this autoscale group.

Get the group configuration for this autoscale group.

Returns

OpenCloud\Autoscale\Resource\GroupConfiguration
public OpenCloud\Autoscale\Resource\LaunchConfiguration
# getLaunchConfig( )

Get the launch configuration for this autoscale group.

Get the launch configuration for this autoscale group.

Returns

OpenCloud\Autoscale\Resource\LaunchConfiguration
public
# pause( )

NB: NOT SUPPORTED YET.

NB: NOT SUPPORTED YET.

CodeCoverageIgnore

public
# resume( )

NB: NOT SUPPORTED YET.

NB: NOT SUPPORTED YET.

CodeCoverageIgnore

public Collection
# getPolicies( )

Get the scaling policies associated with this autoscale group.

Get the scaling policies associated with this autoscale group.

Returns

Collection
public OpenCloud\Autoscale\Resource\ScalingPolicy
# getPolicy( object|integer $id = null )

Get a particular scaling policy for this autoscale group.

Get a particular scaling policy for this autoscale group.

Parameters

$id
object|integer
$id

Returns

OpenCloud\Autoscale\Resource\ScalingPolicy
Methods inherited from OpenCloud\Autoscale\Resource\AbstractResource
createJson(), resource(), updateJson(), url()
Methods inherited from OpenCloud\Common\PersistentObject
__construct(), __set(), action(), checkExtension(), createUrl(), customAction(), delete(), findLink(), getParent(), getService(), id(), jsonCollectionElement(), jsonCollectionName(), jsonName(), name(), noCreate(), noDelete(), noUpdate(), parent(), primaryKeyField(), refresh(), region(), resourceName(), service(), setParent(), setService(), status(), waitFor()
Methods inherited from OpenCloud\Common\Base
checkJsonError(), getHttpRequestObject(), getLogger(), makeQueryString(), populate(), setLogger(), setProperty()
Properties summary
public mixed $id
#
public mixed $links
#
public mixed $groupConfiguration
#
public mixed $launchConfiguration
#
public mixed $scalingPolicies
#
public mixed $name
#
public mixed $metadata
#
public mixed $active
#
public mixed $activeCapacity
#
public mixed $pendingCapacity
#
public mixed $desiredCapacity
#
public mixed $paused
#
protected static string $json_name 'group'
#
protected static string $url_resource 'groups'
#
protected static string $json_collection_name 'groups'
#
public array $createKeys array( 'groupConfiguration', 'launchConfiguration', 'scalingPolicies' )
#

These are used to set the object used for JSON encode.

These are used to set the object used for JSON encode.

public array $associatedResources array( 'groupConfiguration' => 'GroupConfiguration', 'launchConfiguration' => 'LaunchConfiguration', )
#

These resources are associated with this one. When this resource object is populated, if a key is found matching one of these array keys, it is set as an instantiated resource object (rather than an arbitrary string or stdClass object).

These resources are associated with this one. When this resource object is populated, if a key is found matching one of these array keys, it is set as an instantiated resource object (rather than an arbitrary string or stdClass object).

public array $associatedCollections array( 'scalingPolicies' => 'ScalingPolicy' )
#

Same as an associated resource, but it's instantiated as a Collection.

Same as an associated resource, but it's instantiated as a Collection.

PHP OpenCloud API API documentation generated by ApiGen 2.8.0