Overview

Namespaces

  • OpenCloud
    • Autoscale
      • Resource
    • CloudMonitoring
      • Exception
      • Resource
    • Common
      • Collection
      • Constants
      • Exceptions
      • Http
        • Message
      • Log
      • Resource
      • Service
    • Compute
      • Constants
      • Exception
      • Resource
    • Database
      • Resource
    • DNS
      • Collection
      • Resource
    • Identity
      • Constants
      • Resource
    • Image
      • Enum
      • Resource
        • JsonPatch
        • Schema
    • LoadBalancer
      • Enum
      • Resource
    • ObjectStore
      • Constants
      • Exception
      • Resource
      • Upload
    • Orchestration
    • Queues
      • Exception
      • Resource
    • Volume
      • Resource
  • PHP

Classes

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

Class Group

An autoscaling group is monitored by Rackspace CloudMonitoring. 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\Resource\BaseResource
Extended by OpenCloud\Common\Resource\PersistentResource
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 Guzzle\Http\Message\Response
# update( array $params = array() )

Update a resource

Update a resource

Parameters

$params
array
$params

Returns

Guzzle\Http\Message\Response

Overrides

OpenCloud\Common\Resource\PersistentResource::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
# getScalingPolicies( mixed $override = false )

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
# getScalingPolicy( 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
public
# createScalingPolicies( array $policies )
Methods inherited from OpenCloud\Autoscale\Resource\AbstractResource
createJson(), primaryKeyField(), updateJson()
Methods inherited from OpenCloud\Common\Resource\PersistentResource
checkExtension(), create(), delete(), getAlias(), noCreate(), noDelete(), noUpdate(), refresh(), refreshFromLocationUrl(), waitFor()
Methods inherited from OpenCloud\Common\Resource\BaseResource
__construct(), findLink(), getClient(), getMetadata(), getParent(), getService(), getUrl(), jsonCollectionElement(), jsonCollectionName(), jsonName(), parseResponse(), resourceName(), setMetadata(), setParent(), setService()
Methods inherited from OpenCloud\Common\Base
__call(), checkJsonError(), generateUuid(), getInstance(), getJsonHeader(), getLogger(), getProperty(), makeResourceIteratorOptions(), populate(), propertyExists(), setLogger(), setProperty(), stripNamespace(), toCamel(), toUnderscores()
Properties summary
protected OpenCloud\Common\Metadata $metadata
#
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.

Properties inherited from OpenCloud\Common\Resource\BaseResource
$parent, $service
Properties inherited from OpenCloud\Common\Base
$aliases
PHP OpenCloud API API documentation generated by ApiGen 2.8.0