BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

1

Applying the VFrame Data Center API for Service Orchestration

BRKDEV-1241

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

2

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

1

Agenda
Brief introduction to VFrame Data Center VFrame DC API example use cases
TIBCO ActiveMatrix integration Data Synapse integration Service provider web portal

A quick look at the web portal code A formal walk through the VFrame DC APIs

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

3

VFrame Data Center
Virtual Application Services
Loa d
10 9 8 7 6 5 4 3 2 1 0

Service Template

VFrameDC
Virtual Machine Manager

Service Policies

Physical Servers

Virtual Machines

Physical Network and Services

Virtual Network Services

Physical LUNs and NAS Volumes

Virtual Storage

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

4

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

2

Datacenter Architecture
Physical Logical

Aggr

Web Servers

Access

App Servers

Database Servers

Storage

Ethernet Switch

Firewall Switch

SLB

Storage Switch

Router

SSL

IDS

Server Storage

Blade Server

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

5

VFrame DC Services Virtualization
Design

Discover

Firewall

LAN Infrastructure

Load Balancing

Server I/O

Boot OS/ Application

SAN Infrastructure

Storage

Deploy

Firewall Selection Firewall Chaining Firewall Rules

Switch Port Config VLANs, DHCP, Trunks, SVIs, Teaming

VIPs, LB Policies

Golden Images Image Replication Remote Boot VM Mappings

Zones, VSANs, LUNs, Masking, Mapping NFS Volumes

Operate

Automated Failover Management Integration Thru API

Policy Based Resource Optimization Service Maintenance
6

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

3

VFrame DC + TIBCO Active Matrix
Transaction Level Monitoring Threshold Based Policies

Active Matrix
Service Performance Manager

Active Server Pool

API Messaging High Load/Add Server Low Load/Remove Server

Spare Server Pool

VFrame
Data Center Policy Based Resource Remap Requirements Based Resource Selection Coordinated Server, Network and Storage Provisioning
BRKDEV-1241 14632_05_2008_X1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public

7

VFrame DC + Data Synapse
Incoming Workloads Have Different Infrastructure Requirements
API Based Resource Availability Check Server Bringup with Specific Image Load Connectivity to Appropriate Network and Storage Resources Resource Rebalance Based on Load

FabricServer

VFrame Data Center

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

8

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

4

VFrame DC + Service Provider Web Portal
Data Center Infrastructure
Customer Customer Service Service Request Request

VFrame GUI

Device Managers

Servers Network

Custom Custom Infrastructure Infrastructure Services Services Portal Portal Business Users

API

VFrame

IT Administrators

Storage

•Simple service turnup and shutdown •Simple service turnup and shutdown •Abstract complexity from end customer •Abstract complexity from end customer •Common resource pools •Common resource pools
BRKDEV-1241 14632_05_2008_X1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public

9

VFrame DC + Service Provider Web Portal
Web portal customer use case
Login to the WebPortal Browse through a catalogue of Service Networks Add one or more Service Networks to Shopping Cart Checkout Go to Operations page
Start/Stop Service Networks Add/Start/Stop Servers Add/Delete Storage

View usage based charges and pay bill

Web portal uses VFrame in the back-end to provision Servers, LAN, SAN, and Storage
Servers are automatically remapped on server hardware failure by VFrame

Service Provider’s Web Portal Demo
BRKDEV-1241 14632_05_2008_X1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public

10

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

5

Service Provider Web Portal
Implemented using Ruby on RAILS in 2 days! Used Ruby’s SOAP4R package to interface to VFrame DC’s Webservices APIs
wsdl = "http://localhost/sdk/vframe/wsdl/serviceoperations-service.wsdl" snops = SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver url = 'http://localhost/services/ServiceOperationsService' snops.options["protocol.http.basic_auth"] << [url,user,pass] snops.startServiceNetwork(:serviceRef => {:templateName => x.templateName, :serviceName => y.serviceName}) snops.executeServiceElementOperation(:ref => server.ref, :eventId => event.eventId)

It is this simple. Really! VFrame DC online WSDL Documentation Demo
BRKDEV-1241 14632_05_2008_X1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public

11

VFrame API SDK
Software Development Kit is a zip file which contains all necessary data to help start client development based on APIs WSDL and ( associated XML files ) : This is how user get access to wsdl files. One can also access the service wsdl’s at /services url but its not recommended Sample programs with source code : In java to help users get started Documentation : Developer’s guide in PDF and HTML format and WSDL documentation serves as API reference
BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

12

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

6

VFrame SDK
Point your browser to your VFrame DC appliance Find more information about VFrame SDK at http://<vcc-server>/sdk

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

13

Other Goodies
VFrame DC simulator is available for partners, under NDA, for API development Perl SDK is available by request Web Portal Sample code based on Ruby on RAILS is available by request

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

14

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

7

A Formal Walk Through the VFrame DC APIs

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

15

Introduction
VFrame DC Web Services APIs expose a set of the functionality through a collection of SOAP based web services SOAP based Web services provide a set of standards based, platform independent protocols for communication between applications Thus applications written in any programming language, for any platform, can integrate with the VFrame Director through the SOAP based Web Services API

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

16

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

8

Authentication and Authorization
Each SOAP session make use of the same HTTP Basic authentication mechanism as VFrame DC GUI does For inbound calls, the username field is formatted similarly to the GUI as <username>@<context> These credentials are be used to enforce the same role based access control (RBAC and Domain Filtering) used by the GUI HTTPS is supported to provide encrypted communications between the client and server

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

17

Overview
The user can then make use of the APIs to perform operations such as managing
Device Credentials, Retrieving Resource Inventory Managing/Un-managing Resources Server Images Export/Import Service Templates Export/Import and Service Operations Receive Event Notifications.

The functionality exposed by the VFrame APIs is covered in next few slides, organized by functional groups
BRKDEV-1241 14632_05_2008_X1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public

18

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

9

List of API’s… AboutVframe
GetVersion: Gets the VCC Product Information such as product version, build etc. Same as “About VFrame” in GUI

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

19

List of API’s… Credentials
(Device) Credentials Management
List Add Save : Queries based on criteria : Allows creation of device credentials : Allows credentials to be modified

Remove : Allows credentials to be deleted

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

20

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

10

List of API’s… Resources
Resource Management
Query Resources : Get Resource info based on criteria Query Resource Pools : Get Pools details Label Resources : Allows resource name and description to be set Manage Resources : ‘Manages’ resource(s) Un-manage Resources : ‘UnManages’ resource(s) Maintain Resources : Puts a resource to a maintenance state Create Resources : ( IPV4Range , VLAN ) Create Resource Pools : Both Static and Dynamic Update Resource Pools : Allows pool membership to be modified Query Physical to Logical Mappings : Gets P2V Mapping

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

21

List of API’s… ServerImages
GoldenImage Management
ListGoldenImagesFolders : Lists GI folders and Images Export GoldenImage : Export GI from VFDC to external location Import GoldenImage : Import GI from external location into VFDC

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

22

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

11

List of API’s… ServiceTemplates
Service Template Management
List Templates : List all service templates Export Logical Template : Exports a given service template Import Logical Template : Imports a given service template

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

23

List of API’s… ServiceDesign
Service Network Design
List Service Networks : List service networks for a service template List Service Elements : List service elements for a service network.

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

24

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

12

List of API’s… ServiceOperations
Service Operations
Start Service Network Stop Service Network : Starts service network : Stops service network

Verify Service Network : Verifies a service network Add Logical Servers : Creates Servers in a given ServerGroup

Image Logical Servers : Images logical server(s) Remove Logical Servers : Deletes logical servers List Service Element Events : Gets Event list Execute Service Element Event : Executes a event for a service element Query Logical to Physical Mappings : Gets V to P Mapping Info

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

25

List of API’s… Notifications
Notifications Management
Notifications are based on a topic ( named communication channel) publish/subscribe model. Intended receivers need to implement SOAP Service to handle notification Get Topics : Lists all topics that can be subscribed Register Receiver : Creates receiver and allows subscription to various topics Unregister Receiver : Deregisters a receiver or a topic List Receivers : List all notification receivers info with the topics they have subscribed to

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

26

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

13

List of API’s… Jobs
Job Management The Jobs API allows third party applications to perform job related operations. In the current release, the API will only provide operations to query job information
GetJobRuns : Get Job Schedule, Job Run Status and Job Logs

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

27

Session Management
The server uses cookie based session management The client must be able to support cookies. Subsequent requests using the same session will not have to be re-authenticated. This is the desired approach In sessionless mode (not recommended), every inbound connection will be re-authenticated and a new session will be created For security, the session times out after a period of inactivity One can view, all active clients including SOAP Sessions using VFrame GUI->Reports->Logged In Users
BRKDEV-1241 14632_05_2008_X1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public

28

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

14

Error Handling
In Web services, an exception thrown by the Web service end point is passed on to the client as a SOAP fault The Fault objects contains information regarding errors or exceptions encountered during a particular operation. There are currently 3 types of Fault defined
VFAuthorizationFault : Indicates tasks authorization errors VFInvalidValueFault : Indicates missing or invalid input exception VFFault : Indicates general VFrame exceptions

The VFrame API shares the error code to message mapping scheme and infrastructure used by the VFrame server code and GUI
BRKDEV-1241 14632_05_2008_X1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public

29

Interoperability Considerations
Web Services are supposed to be platform and implementation independent. Unfortunately that’s not the reality always (e.g.: J2EE vs .NET) WS-I Basic Profile standard created to address this issue VFrame API meets the WS-I Basic Profile requirements VFrame Web Services based API’s follow the “document/literal wrapped” style WSDL to allow full parameter validation Document/literal is WS-I compliant

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

30

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

15

Complete Your Online Session Evaluation
Give us your feedback and you could win fabulous prizes. Winners announced daily. Receive 20 Passport points for each session evaluation you complete. Complete your session evaluation online now (open a browser through our wireless network to access our portal) or visit one of the Internet stations throughout the Convention Center.
Don’t forget to activate your Cisco Live virtual account for access to all session material on-demand and return for our live virtual event in October 2008. Go to the Collaboration Zone in World of Solutions or visit www.cisco-live.com.

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

31

Q and A

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

32

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

16

BRKDEV-1241 14632_05_2008_X1

© 2008 Cisco Systems, Inc. All rights reserved.

Cisco Public

33

© 2006, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

17