started to web app in for publication - rainfocus | harness … · · 2017-10-13started to web...
TRANSCRIPT
SER1912BU
#VMworld #SER1912BU
VMware Open-Source SDKs From Getting Started to Web App in One Hour
VMworld 2017 Content: Not fo
r publication or distri
bution
• This presentation may contain product features that are currently under development.
• This overview of new technology represents no commitment from VMware to deliver these features in any generally available product.
• Features are subject to change, and must not be included in contracts, purchase orders, or sales agreements of any kind.
• Technical feasibility and market demand will affect final delivery.
• Pricing and packaging for any new technologies or features discussed or presented have not been determined.
Disclaimer
#SER1912BU CONFIDENTIAL 2
VMworld 2017 Content: Not fo
r publication or distri
bution
Agenda
1 Brief history of APIs and SDKs
2 vSphere REST API
3 SDKs Where are we now?
4Demo – vSphere REST APIs and vSphere
Automation SDKs
5Demo – Using the vSphere REST API with
Node, express and Clarity
#SER1875BU CONFIDENTIAL 3
VMworld 2017 Content: Not fo
r publication or distri
bution
Introduction
Alan Renouf
– Sr Product Line Manager, VMware
– Book Author
– vExpert
– Personal Blog: http://virtu-al.net/
– Twitter: @alanrenouf
Steve Trefethen
– Sr. Manager R&D, VMware
– Twitter: @stevetrefethen
– Printer of things 3D
– Coffee Lover
4
VMworld 2017 Content: Not fo
r publication or distri
bution
Brief history of APIs and SDKs
VMworld 2017 Content: Not fo
r publication or distri
bution
ESXiESXi
vSphere API Interfaces (the big picture)
ESXi
vCenter
vCenter ManagementReporting and Features
SOAP API REST API
SOAP API
vSphere Management SDKs
Perl
.Net
Java
Web Services
Storage Management
ESX Agent Manager
SSO Client
vSphere Storage Policy
vSphere Automation SDK
VMC on AWS
VM Management
VCSA API
Content Library
Tags
REST
Perl
.Net
Java
Python
Ruby
Open Source SDK
pyvmomi (Python)
rbvmomi (Ruby)
govmomi (Go)
Web
Services
Automation / Operator Interfaces
PowerCLI
vCLI
vRealize Orchestrator
VM Management
VCSA API
Content Library
Tags
ESXi Management Reportingand
Features
VMworld 2017 Content: Not fo
r publication or distri
bution
vSphere REST API
VMworld 2017 Content: Not fo
r publication or distri
bution
Transforming vCenter APIsDeveloper and Automation friendly API and interfaces that simplify automation and development.
REST API
vCenter
Server
SDKsAutomation
Tooling
REST
based tools
• REST APIs for VM Management
• Simplified and Modern API Design
• Enables easy access to automation from standard tooling
• Designed with Automation and DevOps in mind
• Full featured SDKs, CLI and Workflow access
Overview
Key Use Case: VM Automation and Development
Benefits
• Reduces API development complexity and time
• Access via modern automation and development processes for
consistency and repeatability
• Simplified API model
• Single point of access for all API samples
Benefits
8
Docs
VMworld 2017 Content: Not fo
r publication or distri
bution
3 ways we are focusing on the future
• Easy to use simplified API Model
• Modern API Interfaces (REST)
• CRUD based API Interfaces
• Easy to navigate, full coverage documentation
Simplification
1
• Easy to use API Explorer
• Choice of Development/scripting languages
• Choice of Automation tools
Choice of access
2
• Learn once use anywhere
• Access multiple products
• Transportation of skills
• Community driven samples and sharing
Consistency
3VMworld 2017 Content: N
ot for publicatio
n or distribution
VM Management - REST API’s
10
Manage the following areas from our consistent set of tooling:
• Work with VM operations • Power actions• Hardware
• Boot • Device• Disk• Cdrom• CPU• Disk
• Ethernet• Floppy• Memory• Parallel• Serial• Adapter
• Sata• SCSI
• Cluster• Datacenter• Datastore• Folder• Host• Network• Resource pool
VMworld 2017 Content: Not fo
r publication or distri
bution
VCSA - REST API’s
11
Manage the following areas from our consistent set of tooling:
• Appliance Access (DCUI/Shell/SSH)• Appliance User accounts• Check the Health of the appliance (Load/Mem/Database/Storage/Etc..)• Monitoring of services and statistics• Configure and test Networking aspects including:
• Hostname• DNS Domains/Servers• Network Interfaces• Firewall Rules• Proxy Settings• Routes
• Perform Backup/Recovery of the appliance• Configure System settings:
• List and resize storage• NTP/Timesync Settings • View System Versions and Uptime• SNMP Settings• Shutdown and reboot• Update
VMworld 2017 Content: Not fo
r publication or distri
bution
Content Library - REST API’s
12
Manage the following areas from our consistent set of tooling:
• Configure Global Settings
• Work with Local Libraries
• Enable Publish and Subscribe features
• Sync options and actions
• Work with library items
• Upload and download of library items
• Deploy from content library
• Work with media library itemsVMworld 2017 Content: Not fo
r publication or distri
bution
API Explorer
13
• Available at
https://vchostname/apiexplorer
• Navigate REST based APIs for
• vCenter
• Appliance Management
• Tags
• Content Library
• API Query
• Easily understand the API model
• Determine required fields
• Easily understand the request body
• Detailed filter information
• List of response messages and examples
• Live “Try it out” feature
• Sample Curl statement after try it out
VMworld 2017 Content: Not fo
r publication or distri
bution
SDKs Where are we now?
VMworld 2017 Content: Not fo
r publication or distri
bution
Choice of SDKs and Automation tools
15
• vSphere Automation SDKs for multiple languages
• Choice of CLIs• PowerCLI Cmdlets• Datacenter CLI - DCLI
• Consistently named with the APIs
• vRealize Orchestrator Integration
• Docs are automatically generated• REST & SDKS
• More to come in the future
REST
Java
.NET
Python
Ruby
Perl
DCLI
PowerCLI
Docs
vRO Plugins
API & SDK &
Language
Specific Docs
Documentation
Automation CLIs
& Workflows
VMworld 2017 Content: Not fo
r publication or distri
bution
Open Sourced vSphere Automation SDKs
16
• Available at
https://vmware.github.io/vsphere-automation-sdk/
• VMware maintained
• Get up and running in less than 5 minutes!
• SDKs for managing vSphere and VMC in
• REST
• Java
• Python
• Perl
• .Net
• Ruby
• Full of samples
• Community contributions welcome
VMworld 2017 Content: Not fo
r publication or distri
bution
vSphere REST APIs and vSphere Automation SDKsQuick Walkthrough
VMworld 2017 Content: Not fo
r publication or distri
bution
vSphere REST API with NodeJS and Express
18
NodeJS App
Express web framework
/login /inventory
REST APIHTTP
VMworld 2017 Content: Not fo
r publication or distri
bution
Using the vSphere REST API with Node, express and Clarity in 1hr(or now maybe 20 mins)
VMworld 2017 Content: Not fo
r publication or distri
bution
Takeaways
1. The vSphere REST API is easy to use
2. Downloading, using and contributing to the SDKs is easy!
3. Todays samples are available in Github
4. Contribute, feedback!
vSphere Automation SDKs:
https://vmware.github.io/vsphere-automation-sdk/
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution