background image

VMware, Inc.

7

1

The

 

VMware

 

vCloud

 

API

 

provides

 

support

 

for

 

developers

 

who

 

are

 

building

 

interactive

 

clients

 

of

 

VMware

 

vCloud

 

Director

 

using

 

a

 

RESTful

 

application

 

development

 

style.

 

vCloud

 

API

 

clients

 

and

 

servers

 

communicate

 

over

 

HTTP,

 

exchanging

 

representations

 

of

 

vCloud

 

objects.

 

These

 

representations

 

take

 

the

 

form

 

of

 

XML

 

elements.

 

HTTP

 

GET

 

requests

 

are

 

used

 

to

 

retrieve

 

the

 

current

 

representation

 

of

 

an

 

object,

 

HTTP

 

POST

 

and

 

PUT

 

requests

 

are

 

used

 

to

 

create

 

or

 

modify

 

an

 

object,

 

and

 

HTTP

 

DELETE

 

requests

 

are

 

typically

 

used

 

to

 

delete

 

an

 

object.

The

 

vCloud

 

SDK

 

for

 

PHP

 

is

 

a

 

PHP

 

language

 

binding

 

for

 

the

 

vCloud

 

API.

 

It

 

provides

 

a

 

PHP

 

class

 

library

 

and

 

a

 

set

 

of

 

example

 

applications.

 

The

 

classes

 

and

 

functions

 

in

 

the

 

library

 

encapsulate

 

the

 

interfaces,

 

objects,

 

and

 

operations

 

that

 

the

 

vCloud

 

API

 

supports,

 

while

 

preserving

 

its

 

RESTful

 

approach

 

and

 

compatibility

 

with

 

the

 

HTTP

 

protocol

 

family.

This

 

vCloud

 

SDK

 

for

 

PHP

 

Developer’s

 

Guide

 

provides

 

information

 

about

 

setting

 

up

 

the

 

SDK

 

in

 

a

 

development

 

environment,

 

and

 

information

 

about

 

running

 

the

 

example

 

applications

 

included

 

in

 

the

 

SDK.

This

 

chapter

 

includes

 

the

 

following

 

topics:

“vCloud

 

Object

 

Taxonomy”

 

on

 

page 7

“vCloud

 

SDK

 

for

 

PHP

 

Design”

 

on

 

page 9

vCloud Object Taxonomy

The

 

vCloud

 

SDK

 

for

 

PHP

 

defines

 

a

 

set

 

of

 

objects

 

common

 

to

 

cloud

 

computing

 

environments.

 

Figure 1

1

 

shows

 

the

 

principal

 

object

 

types.

vCloud Organizations

A

 

vCloud

 

contains

 

one

 

or

 

more

 

organizations.

 

A

 

vCloud

 

organization

 

is

 

a

 

unit

 

of

 

administration

 

for

 

a

 

collection

 

of

 

users,

 

groups,

 

and

 

computing

 

resources.

 

Users

 

authenticate

 

at

 

the

 

organization

 

level,

 

supplying

 

credentials

 

established

 

by

 

an

 

organization

 

administrator

 

when

 

the

 

user

 

was

 

created

 

or

 

imported.

vCloud Users and Groups

An

 

organization

 

can

 

contain

 

an

 

arbitrary

 

number

 

of

 

users

 

and

 

groups.

 

Users

 

can

 

be

 

created

 

by

 

the

 

organization

 

administrator

 

or

 

imported

 

from

 

a

 

directory

 

service

 

such

 

as

 

LDAP.

 

Groups

 

must

 

be

 

imported

 

from

 

the

 

directory

 

service.

 

Permissions

 

within

 

an

 

organization

 

are

 

controlled

 

through

 

the

 

assignment

 

of

 

rights

 

and

 

roles

 

to

 

users

 

and

 

groups.

vCloud Networks

An

 

organization

 

can

 

be

 

provisioned

 

with

 

one

 

or

 

more

 

networks.

 

These

 

organization

 

networks

 

can

 

be

 

configured

 

to

 

provide

 

services

 

such

 

as

 

DHCP,

 

NAT,

 

and

 

firewalls.

About the vCloud SDK for PHP

1

Summary of Contents for vCloud SDK 1.0

Page 1: ...SDK 1 0 This document supports the version of each product listed and supports all subsequent versions until the document is replaced by a new edition To check for more recent editions of this documen...

Page 2: ...ts about this documentation submit your feedback to docfeedback vmware com Copyright 2010 VMware Inc All rights reserved This product is protected by U S and international copyright and intellectual p...

Page 3: ...ct 10 Creating an SDK Object 10 Using a Different HTTP Library 12 Using the HTML Reference Material 12 2 Setting Up for PHP Development 13 Prerequisites 13 Download and Install the vCloud SDK for PHP...

Page 4: ...vCloud SDK for PHP Developer s Guide 4 VMware Inc...

Page 5: ...ud Director This guide assumes you are familiar with the PHP programming language Representational State Transfer REST and RESTful programming conventions the Open Virtualization Format Specification...

Page 6: ...ware com support services VMware Professional Services VMware Education Services courses offer extensive hands on labs case study examples and course materials designed to be used as on the job refere...

Page 7: ...bout running the example applications included in the SDK This chapter includes the following topics vCloud Object Taxonomy on page 7 vCloud SDK for PHP Design on page 9 vCloud Object Taxonomy The vCl...

Page 8: ...s floppy disks and CD ROMs An organization administrator specifies how resources from a provider vDC are distributed to the vDCs in an organization vCloud Catalogs Catalogs contain references to virtu...

Page 9: ...fined in vCloud API vCloud administrative API and vCloud vSphere platform API extensions Classes in this package are generated from the vCloud API XML schema files Each class maps to a complex type de...

Page 10: ...e Creating an SDK Object You can create an SDK object when you need to invoke a lifecycle operation such as create or modify on a vCloud API object Most class constructors for SDK objects require two...

Page 11: ...minOrg getAdminVdcsRefs Catalog Org getCatalogRefs CatalogItem Catalog getCatalogItemRefs CatalogItem AdminCatalog getCatalogItemRefs Extension None See Creating Top Level Objects on page 12 Extension...

Page 12: ...are_VCloud_SDK_Http_Client_Interface interface and then can call the VMware_VCloud_SDK_Service getService method specifying that client service VMware_VCloud_SDK_Service getService myHTTPClient Using...

Page 13: ...ut the vCloud API XML schemas which define the objects and operations that the SDK supports familiarity with the details of the underlying objects and operations as described in the vCloud API Program...

Page 14: ...e with the download or click No to exit without downloading 5 Choose a download option then click the link for the distribution format you want The vCloud SDK for PHP is distributed as a compressed ar...

Page 15: ...help To run the helloVCloud php example use the following command php helloVCloud php s server u user vcloudOrganization p password c config o orgName d vdcName g catalogName i item a vAppName The fol...

Page 16: ...ample creates All options but s u and p must be separated from their arguments by an equals sign For example php helloVCloud php s vcloud example com u user exampleOrg p Pa55w0rd o exampleOrg d exampl...

Page 17: ...mples use for logging in names for objects such as catalogs and vDCs that the examples create and other values that you are required to specify when creating a vCloud API object You must edit this fil...

Page 18: ...sed by all example code updateVmMemory php Edits the memory required by a virtual machine and reduces the existing value by half uploadVAppTemplate php Uploads an OVF package to create a vApp template...

Page 19: ...kage used in examples 13 P packages in this SDK 9 PEAR HTTP_Request2 package 13 PHP versions supported 13 S sample programs privileges required to run 18 runtime environment for 17 sample programs pri...

Page 20: ...vCloud SDK for PHP Developer s Guide 20 VMware Inc...

Reviews: